diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json deleted file mode 100644 index 7c046690b9..0000000000 --- a/.devcontainer/devcontainer.json +++ /dev/null @@ -1,42 +0,0 @@ -// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at: -// https://github.com/microsoft/vscode-dev-containers/tree/v0.195.0/containers/javascript-node -{ - "name": "Node.js", - "build": { - "dockerfile": "Dockerfile", - // Update 'VARIANT' to pick a Node version: 16, 14, 12. - // Append -bullseye or -buster to pin to an OS version. - // Use -bullseye variants on local arm64/Apple Silicon. - "args": { "VARIANT": "18-bullseye" } - }, - - // Configure tool-specific properties. - "customizations": { - // Configure properties specific to VS Code. - "vscode": { - // Set *default* container specific settings.json values on container create. - "settings": {}, - - // Add the IDs of extensions you want installed when the container is created. - "extensions": ["dbaeumer.vscode-eslint", "firsttris.vscode-jest-runner"] - } - }, - - // Use 'forwardPorts' to make a list of ports inside the container available locally. - // "forwardPorts": [3000], - - // Use 'portsAttributes' to set default properties for specific forwarded ports. More info: https://code.visualstudio.com/docs/remote/devcontainerjson-reference. - // "portsAttributes": { - // }, - - // Use 'otherPortsAttributes' to configure any ports that aren't configured using 'portsAttributes'. - // "otherPortsAttributes": { - // "onAutoForward": "silent" - // }, - - // Use 'postCreateCommand' to run commands after the container is created. - "postCreateCommand": "yarn install --ignore-engines --frozen-lockfile", - - // Comment out connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root. - "remoteUser": "node" -} diff --git a/.github/actions/changesets-fixed-version-bump/index.js b/.github/actions/changesets-fixed-version-bump/index.js index 94b8b8a9b1..0d38e38273 100644 --- a/.github/actions/changesets-fixed-version-bump/index.js +++ b/.github/actions/changesets-fixed-version-bump/index.js @@ -1,30 +1,26 @@ import { createRequire as __WEBPACK_EXTERNAL_createRequire } from "module"; /******/ var __webpack_modules__ = ({ -/***/ 69455: +/***/ 8729: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -var errors = __nccwpck_require__(17789); -var getDependentsGraph = __nccwpck_require__(81699); -var shouldSkipPackage = __nccwpck_require__(81435); -var semverParse = __nccwpck_require__(15797); -var semverGt = __nccwpck_require__(60955); -var path = __nccwpck_require__(76760); -var semverSatisfies = __nccwpck_require__(17871); -var validRange = __nccwpck_require__(23381); -var semverInc = __nccwpck_require__(35542); +var errors = __nccwpck_require__(6861); +var getDependentsGraph = __nccwpck_require__(5358); +var shouldSkipPackage = __nccwpck_require__(5481); +var semverParse = __nccwpck_require__(8866); +var semverGt = __nccwpck_require__(8934); +var semverSatisfies = __nccwpck_require__(1672); +var semverInc = __nccwpck_require__(4121); function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } var semverParse__default = /*#__PURE__*/_interopDefault(semverParse); var semverGt__default = /*#__PURE__*/_interopDefault(semverGt); -var path__default = /*#__PURE__*/_interopDefault(path); var semverSatisfies__default = /*#__PURE__*/_interopDefault(semverSatisfies); -var validRange__default = /*#__PURE__*/_interopDefault(validRange); var semverInc__default = /*#__PURE__*/_interopDefault(semverInc); function _toPrimitive(t, r) { @@ -98,27 +94,17 @@ function getHighestReleaseType(releases) { function getCurrentHighestVersion(packageGroup, packagesByName) { let highestVersion; for (let pkgName of packageGroup) { - let pkg = mapGetOrThrowInternal(packagesByName, pkgName, `We were unable to version for package group: ${pkgName} in package group: ${packageGroup.toString()}`); + let pkg = packagesByName.get(pkgName); + if (!pkg) { + console.error(`FATAL ERROR IN CHANGESETS! We were unable to version for package group: ${pkgName} in package group: ${packageGroup.toString()}`); + throw new Error(`fatal: could not resolve linked packages`); + } if (highestVersion === undefined || semverGt__default["default"](pkg.packageJson.version, highestVersion)) { highestVersion = pkg.packageJson.version; } } return highestVersion; } -function mapGetOrThrow(map, key, errorMessage) { - const value = map.get(key); - if (value === undefined) { - throw new Error(errorMessage); - } - return value; -} -function mapGetOrThrowInternal(map, key, errorMessage) { - const value = map.get(key); - if (value === undefined) { - throw new errors.InternalError(errorMessage); - } - return value; -} /* WARNING: @@ -167,7 +153,10 @@ function incrementVersion(release, preInfo) { } let version = semverInc__default["default"](release.oldVersion, release.type); if (preInfo !== undefined && preInfo.state.mode !== "exit") { - let preVersion = mapGetOrThrowInternal(preInfo.preVersions, release.name, `preVersion for ${release.name} does not exist when preState is defined`); + let preVersion = preInfo.preVersions.get(release.name); + if (preVersion === undefined) { + throw new errors.InternalError(`preVersion for ${release.name} does not exist when preState is defined`); + } // why are we adding this ourselves rather than passing 'pre' + versionType to semver.inc? // because semver.inc with prereleases is confusing and this seems easier version += `-${preInfo.state.tag}.${preVersion}`; @@ -190,7 +179,6 @@ function incrementVersion(release, preInfo) { function determineDependents({ releases, packagesByName, - rootDir, dependencyGraph, preInfo, config @@ -203,18 +191,21 @@ function determineDependents({ const nextRelease = pkgsToSearch.shift(); if (!nextRelease) continue; // pkgDependents will be a list of packages that depend on nextRelease ie. ['avatar-group', 'comment'] - const pkgDependents = mapGetOrThrowInternal(dependencyGraph, nextRelease.name, `Error in determining dependents - could not find package in repository: ${nextRelease.name}`); + const pkgDependents = dependencyGraph.get(nextRelease.name); + if (!pkgDependents) { + throw new Error(`Error in determining dependents - could not find package in repository: ${nextRelease.name}`); + } pkgDependents.map(dependent => { let type; - const dependentPackage = mapGetOrThrowInternal(packagesByName, dependent, "Dependency map is incorrect"); + const dependentPackage = packagesByName.get(dependent); + if (!dependentPackage) throw new Error("Dependency map is incorrect"); if (shouldSkipPackage.shouldSkipPackage(dependentPackage, { ignore: config.ignore, allowPrivatePackages: config.privatePackages.version })) { type = "none"; } else { - const dependencyPackage = mapGetOrThrowInternal(packagesByName, nextRelease.name, "Dependency map is incorrect"); - const dependencyVersionRanges = getDependencyVersionRanges(rootDir, dependentPackage.packageJson, nextRelease, dependencyPackage); + const dependencyVersionRanges = getDependencyVersionRanges(dependentPackage.packageJson, nextRelease); for (const { depType, versionRange @@ -295,7 +286,7 @@ function determineDependents({ The array can contain more than one elements in case a dependency appears in multiple dependency lists. For example, a package that is both a peerDepenency and a devDependency. */ -function getDependencyVersionRanges(rootDir, dependentPkgJSON, dependencyRelease, dependencyPackage) { +function getDependencyVersionRanges(dependentPkgJSON, dependencyRelease) { const DEPENDENCY_TYPES = ["dependencies", "devDependencies", "peerDependencies", "optionalDependencies"]; const dependencyVersionRanges = []; for (const type of DEPENDENCY_TYPES) { @@ -313,17 +304,7 @@ function getDependencyVersionRanges(rootDir, dependentPkgJSON, dependencyRelease case "~": versionRange = `${versionRange}${dependencyRelease.oldVersion}`; break; - default: - { - if (!validRange__default["default"](versionRange)) { - if (path__default["default"].posix.normalize(versionRange) === path__default["default"].relative(rootDir, dependencyPackage.dir).replace(/\\/g, "/")) { - versionRange = dependencyRelease.oldVersion; - } else { - continue; - } - } - // fallthrough: keep the stripped range as is - } + // default: keep the stripped range as is } } dependencyVersionRanges.push({ @@ -360,18 +341,18 @@ function flattenReleases(changesets, packagesByName, config) { // If their dependencies need updates, they will be added to releases by `determineDependents()` with release type `none` .filter(({ name - }) => { - const pkg = mapGetOrThrowInternal(packagesByName, name, `Couldn't find package named "${name}" listed in changeset "${changeset.id}"`); - return !shouldSkipPackage.shouldSkipPackage(pkg, { - ignore: config.ignore, - allowPrivatePackages: config.privatePackages.version - }); - }).forEach(({ + }) => !shouldSkipPackage.shouldSkipPackage(packagesByName.get(name), { + ignore: config.ignore, + allowPrivatePackages: config.privatePackages.version + })).forEach(({ name, type }) => { - let pkg = mapGetOrThrowInternal(packagesByName, name, `Couldn't find package named "${name}" listed in changeset "${changeset.id}"`); let release = releases.get(name); + let pkg = packagesByName.get(name); + if (!pkg) { + throw new Error(`"${changeset.id}" changeset mentions a release for a package "${name}" but such a package could not be found.`); + } if (!release) { release = { name, @@ -404,8 +385,7 @@ function matchFixedConstraint(releases, packagesByName, config) { // Finally, we update the packages so all of them are on the highest version for (let pkgName of fixedPackages) { - const pkg = mapGetOrThrowInternal(packagesByName, pkgName, `Could not find package named "${pkgName}" listed in fixed group ${JSON.stringify(fixedPackages)}`); - if (shouldSkipPackage.shouldSkipPackage(pkg, { + if (shouldSkipPackage.shouldSkipPackage(packagesByName.get(pkgName), { ignore: config.ignore, allowPrivatePackages: config.privatePackages.version })) { @@ -498,7 +478,7 @@ function getNewVersion(release, preInfo) { function assembleReleasePlan(changesets, packages, config, // intentionally not using an optional parameter here so the result of `readPreState` has to be passed in here preState, -// snapshot: undefined -> not using snapshot +// snapshot: undefined -> not using snaphot // snapshot: { tag: undefined } -> --snapshot (empty tag) // snapshot: { tag: "canary" } -> --snapshot canary snapshot) { @@ -523,11 +503,6 @@ snapshot) { // flattened down to one release per package, having a reference back to their // changesets, and with a calculated new versions let releases = flattenReleases(relevantChangesets, packagesByName, refinedConfig); - - // Unlike the config/CLI validation graphs, this graph intentionally includes - // devDependencies. While devDeps don't cause version bumps (determineDependents - // assigns type "none"), they must appear in the release plan so that - // apply-release-plan can update their version ranges in package.json. let dependencyGraph = getDependentsGraph.getDependentsGraph(packages, { bumpVersionsWithWorkspaceProtocolOnly: refinedConfig.bumpVersionsWithWorkspaceProtocolOnly }); @@ -537,7 +512,6 @@ snapshot) { let dependentAdded = determineDependents({ releases, packagesByName, - rootDir: packages.root.dir, dependencyGraph, preInfo, config: refinedConfig @@ -591,8 +565,10 @@ function getRelevantChangesets(changesets, packagesByName, config, preState) { const skippedPackages = []; const notSkippedPackages = []; for (const release of changeset.releases) { - // this acts as an early validation in this package so we don't throw an internal error here - const packageByName = mapGetOrThrow(packagesByName, release.name, `Found changeset ${changeset.id} for package ${release.name} which is not in the workspace`); + const packageByName = packagesByName.get(release.name); + if (!packageByName) { + throw new Error(`Found changeset ${changeset.id} for package ${release.name} which is not in the workspace`); + } if (shouldSkipPackage.shouldSkipPackage(packageByName, { ignore: config.ignore, allowPrivatePackages: config.privatePackages.version @@ -612,11 +588,10 @@ function getRelevantChangesets(changesets, packagesByName, config, preState) { } return changesets; } -function getHighestPreVersion(groupKind, packageGroup, packagesByName) { +function getHighestPreVersion(packageGroup, packagesByName) { let highestPreVersion = 0; - for (let pkgName of packageGroup) { - const pkg = mapGetOrThrowInternal(packagesByName, pkgName, `Could not find package named "${pkgName}" listed in ${groupKind} group ${JSON.stringify(packageGroup)}`); - highestPreVersion = Math.max(getPreVersion(pkg.packageJson.version), highestPreVersion); + for (let pkg of packageGroup) { + highestPreVersion = Math.max(getPreVersion(packagesByName.get(pkg).packageJson.version), highestPreVersion); } return highestPreVersion; } @@ -646,13 +621,13 @@ function getPreInfo(changesets, packagesByName, config, preState) { preVersions.set(pkg.packageJson.name, getPreVersion(pkg.packageJson.version)); } for (let fixedGroup of config.fixed) { - let highestPreVersion = getHighestPreVersion("fixed", fixedGroup, packagesByName); + let highestPreVersion = getHighestPreVersion(fixedGroup, packagesByName); for (let fixedPackage of fixedGroup) { preVersions.set(fixedPackage, highestPreVersion); } } for (let linkedGroup of config.linked) { - let highestPreVersion = getHighestPreVersion("linked", linkedGroup, packagesByName); + let highestPreVersion = getHighestPreVersion(linkedGroup, packagesByName); for (let linkedPackage of linkedGroup) { preVersions.set(linkedPackage, highestPreVersion); } @@ -668,21 +643,21 @@ exports["default"] = assembleReleasePlan; /***/ }), -/***/ 94387: +/***/ 7363: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -var fs = __nccwpck_require__(41348); -var path = __nccwpck_require__(16928); -var micromatch = __nccwpck_require__(77805); -var errors = __nccwpck_require__(17789); -var logger = __nccwpck_require__(68323); -var getPackages = __nccwpck_require__(94941); -var getDependentsGraph = __nccwpck_require__(81699); -var shouldSkipPackage = __nccwpck_require__(81435); +var fs = __nccwpck_require__(925); +var path = __nccwpck_require__(6928); +var micromatch = __nccwpck_require__(9555); +var errors = __nccwpck_require__(6861); +var logger = __nccwpck_require__(9923); +var getPackages = __nccwpck_require__(7507); +var getDependentsGraph = __nccwpck_require__(5358); +var shouldSkipPackage = __nccwpck_require__(5481); function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } @@ -710,7 +685,7 @@ var micromatch__default = /*#__PURE__*/_interopDefault(micromatch); var packageJson = { name: "@changesets/config", - version: "3.1.4", + version: "3.1.3", description: "Utilities for reading and parsing Changeset's config", main: "dist/changesets-config.cjs.js", module: "dist/changesets-config.esm.js", @@ -735,7 +710,7 @@ var packageJson = { ], dependencies: { "@changesets/errors": "^0.2.0", - "@changesets/get-dependents-graph": "^2.1.4", + "@changesets/get-dependents-graph": "^2.1.3", "@changesets/logger": "^0.1.1", "@changesets/should-skip-package": "^0.1.2", "@changesets/types": "^6.1.0", @@ -1058,14 +1033,14 @@ exports.read = read; /***/ }), -/***/ 17789: +/***/ 6861: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -var ExtendableError = __nccwpck_require__(75522); +var ExtendableError = __nccwpck_require__(1456); function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } @@ -1115,51 +1090,59 @@ exports.ValidationError = ValidationError; /***/ }), -/***/ 81699: +/***/ 5358: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -var Range = __nccwpck_require__(32946); -var pc = __nccwpck_require__(96596); -var path = __nccwpck_require__(76760); +var Range = __nccwpck_require__(6629); +var pc = __nccwpck_require__(6831); function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } var Range__default = /*#__PURE__*/_interopDefault(Range); var pc__default = /*#__PURE__*/_interopDefault(pc); -var path__default = /*#__PURE__*/_interopDefault(path); // This is a modified version of the graph-getting in bolt const DEPENDENCY_TYPES = ["dependencies", "devDependencies", "peerDependencies", "optionalDependencies"]; + const getAllDependencies = (config, ignoreDevDependencies) => { const allDependencies = new Map(); + for (const type of DEPENDENCY_TYPES) { const deps = config[type]; if (!deps) continue; + for (const name of Object.keys(deps)) { const depRange = deps[name]; + if (type === "devDependencies" && (ignoreDevDependencies || depRange.startsWith("link:") || depRange.startsWith("file:"))) { continue; } + allDependencies.set(name, depRange); } } + return allDependencies; }; + const isProtocolRange = range => range.indexOf(":") !== -1; + const getValidRange = potentialRange => { if (isProtocolRange(potentialRange)) { return null; } + try { return new Range__default["default"](potentialRange); } catch (_unused) { return null; } }; + function getDependencyGraph(packages, { ignoreDevDependencies = false, bumpVersionsWithWorkspaceProtocolOnly = false @@ -1169,64 +1152,60 @@ function getDependencyGraph(packages, { const packagesByName = { [packages.root.packageJson.name]: packages.root }; - const relativePathsByName = { - [packages.root.packageJson.name]: "." - }; const queue = [packages.root]; + for (const pkg of packages.packages) { queue.push(pkg); packagesByName[pkg.packageJson.name] = pkg; - relativePathsByName[pkg.packageJson.name] = path__default["default"].relative(packages.root.dir, pkg.dir).replace(/\\/g, "/"); } + for (const pkg of queue) { const { name } = pkg.packageJson; const dependencies = []; const allDependencies = getAllDependencies(pkg.packageJson, ignoreDevDependencies); + for (let [depName, depRange] of allDependencies) { const match = packagesByName[depName]; if (!match) continue; const expected = match.packageJson.version; - const rawDepRange = depRange; const usesWorkspaceRange = depRange.startsWith("workspace:"); + if (usesWorkspaceRange) { depRange = depRange.replace(/^workspace:/, ""); + if (depRange === "*" || depRange === "^" || depRange === "~") { dependencies.push(depName); continue; } - if (path__default["default"].posix.normalize(depRange) === relativePathsByName[depName]) { - dependencies.push(depName); - continue; - } - if (!getValidRange(depRange)) { - valid = false; - console.error(`Package ${pc__default["default"].cyan(`"${name}"`)} must depend on the current version of ${pc__default["default"].cyan(`"${depName}"`)}: ${pc__default["default"].green(`"${expected}"`)} vs ${pc__default["default"].red(`"${rawDepRange}"`)}`); - continue; - } } else if (bumpVersionsWithWorkspaceProtocolOnly) { continue; } + const range = getValidRange(depRange); + if (range && !range.test(expected) || isProtocolRange(depRange)) { valid = false; - console.error(`Package ${pc__default["default"].cyan(`"${name}"`)} must depend on the current version of ${pc__default["default"].cyan(`"${depName}"`)}: ${pc__default["default"].green(`"${expected}"`)} vs ${pc__default["default"].red(`"${rawDepRange}"`)}`); + console.error(`Package ${pc__default["default"].cyan(`"${name}"`)} must depend on the current version of ${pc__default["default"].cyan(`"${depName}"`)}: ${pc__default["default"].green(`"${expected}"`)} vs ${pc__default["default"].red(`"${depRange}"`)}`); continue; - } - - // `depRange` could have been a tag and if a tag has been used there might have been a reason for that + } // `depRange` could have been a tag and if a tag has been used there might have been a reason for that // we should not count this as a local monorepro dependant + + if (!range) { continue; } + dependencies.push(depName); } + graph.set(name, { pkg, dependencies }); } + return { graph, valid @@ -1253,6 +1232,7 @@ function getDependentsGraph(packages, opts) { packages.packages.forEach(pkg => { const dependent = pkg.packageJson.name; const valFromDependencyGraph = dependencyGraph.get(dependent); + if (valFromDependencyGraph) { const dependencies = valFromDependencyGraph.dependencies; dependencies.forEach(dependency => { @@ -1275,15 +1255,15 @@ exports.getDependentsGraph = getDependentsGraph; /***/ }), -/***/ 24856: +/***/ 8679: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -exports._default = __nccwpck_require__(57651)["default"]; +exports._default = __nccwpck_require__(8600)["default"]; /***/ }), -/***/ 57651: +/***/ 8600: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { var __webpack_unused_export__; @@ -1291,11 +1271,11 @@ var __webpack_unused_export__; __webpack_unused_export__ = ({ value: true }); -var assembleReleasePlan = __nccwpck_require__(69455); -var readChangesets = __nccwpck_require__(74007); -var config = __nccwpck_require__(94387); -var getPackages = __nccwpck_require__(94941); -var pre = __nccwpck_require__(37763); +var assembleReleasePlan = __nccwpck_require__(8729); +var readChangesets = __nccwpck_require__(1933); +var config = __nccwpck_require__(7363); +var getPackages = __nccwpck_require__(7507); +var pre = __nccwpck_require__(7309); function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } @@ -1363,20 +1343,20 @@ exports["default"] = getReleasePlan; /***/ }), -/***/ 59427: +/***/ 1865: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -var spawn = __nccwpck_require__(51114); -var fs = __nccwpck_require__(79896); -var path = __nccwpck_require__(16928); -var getPackages = __nccwpck_require__(94941); -var errors = __nccwpck_require__(17789); -var isSubdir = __nccwpck_require__(46390); -var micromatch = __nccwpck_require__(77805); +var spawn = __nccwpck_require__(2841); +var fs = __nccwpck_require__(9896); +var path = __nccwpck_require__(6928); +var getPackages = __nccwpck_require__(7507); +var errors = __nccwpck_require__(6861); +var isSubdir = __nccwpck_require__(2304); +var micromatch = __nccwpck_require__(9555); function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } @@ -1655,15 +1635,15 @@ exports.tagExists = tagExists; /***/ }), -/***/ 68323: +/***/ 9923: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -var pc = __nccwpck_require__(96596); -var util = __nccwpck_require__(39023); +var pc = __nccwpck_require__(6831); +var util = __nccwpck_require__(9023); function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } @@ -1703,14 +1683,14 @@ exports.warn = warn; /***/ }), -/***/ 7751: +/***/ 492: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -var yaml = __nccwpck_require__(30677); +var yaml = __nccwpck_require__(5309); function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } @@ -1776,17 +1756,17 @@ exports["default"] = parseChangesetFile; /***/ }), -/***/ 37763: +/***/ 7309: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -var fs = __nccwpck_require__(41348); -var path = __nccwpck_require__(16928); -var getPackages = __nccwpck_require__(94941); -var errors = __nccwpck_require__(17789); +var fs = __nccwpck_require__(925); +var path = __nccwpck_require__(6928); +var getPackages = __nccwpck_require__(7507); +var errors = __nccwpck_require__(6861); function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } @@ -1930,20 +1910,20 @@ exports.readPreState = readPreState; /***/ }), -/***/ 74007: +/***/ 1933: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -var fs = __nccwpck_require__(41348); -var path = __nccwpck_require__(16928); -var parse = __nccwpck_require__(7751); -var git = __nccwpck_require__(59427); -var pc = __nccwpck_require__(96596); -var pFilter = __nccwpck_require__(97465); -var logger = __nccwpck_require__(68323); +var fs = __nccwpck_require__(925); +var path = __nccwpck_require__(6928); +var parse = __nccwpck_require__(492); +var git = __nccwpck_require__(1865); +var pc = __nccwpck_require__(6831); +var pFilter = __nccwpck_require__(6374); +var logger = __nccwpck_require__(9923); function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } @@ -2092,7 +2072,7 @@ exports["default"] = getChangesets; /***/ }), -/***/ 81435: +/***/ 5481: /***/ ((__unused_webpack_module, exports) => { @@ -2121,7 +2101,7 @@ exports.shouldSkipPackage = shouldSkipPackage; /***/ }), -/***/ 44248: +/***/ 7079: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -2130,17 +2110,17 @@ Object.defineProperty(exports, "__esModule", ({ value: true })); function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; } -var _regeneratorRuntime = _interopDefault(__nccwpck_require__(65907)); -var _asyncToGenerator = _interopDefault(__nccwpck_require__(67584)); -var _classCallCheck = _interopDefault(__nccwpck_require__(33446)); -var _possibleConstructorReturn = _interopDefault(__nccwpck_require__(83855)); -var _getPrototypeOf = _interopDefault(__nccwpck_require__(55989)); -var _inherits = _interopDefault(__nccwpck_require__(87406)); -var _wrapNativeSuper = _interopDefault(__nccwpck_require__(16318)); -var findUp = __nccwpck_require__(81179); +var _regeneratorRuntime = _interopDefault(__nccwpck_require__(5213)); +var _asyncToGenerator = _interopDefault(__nccwpck_require__(7270)); +var _classCallCheck = _interopDefault(__nccwpck_require__(1220)); +var _possibleConstructorReturn = _interopDefault(__nccwpck_require__(5297)); +var _getPrototypeOf = _interopDefault(__nccwpck_require__(1695)); +var _inherits = _interopDefault(__nccwpck_require__(4300)); +var _wrapNativeSuper = _interopDefault(__nccwpck_require__(4372)); +var findUp = __nccwpck_require__(9116); var findUp__default = _interopDefault(findUp); -var path = _interopDefault(__nccwpck_require__(16928)); -var fs = _interopDefault(__nccwpck_require__(97298)); +var path = _interopDefault(__nccwpck_require__(6928)); +var fs = _interopDefault(__nccwpck_require__(6668)); var NoPkgJsonFound = /*#__PURE__*/ @@ -2435,21 +2415,21 @@ exports.findRootSync = findRootSync; /***/ }), -/***/ 67805: +/***/ 4038: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { if (process.env.NODE_ENV === "production") { - module.exports = __nccwpck_require__(4530); + module.exports = __nccwpck_require__(47); } else { - module.exports = __nccwpck_require__(44248); + module.exports = __nccwpck_require__(7079); } /***/ }), -/***/ 4530: +/***/ 47: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -2462,7 +2442,7 @@ Object.defineProperty(exports, "__esModule", ({ value: !0 })); -var _regeneratorRuntime = _interopDefault(__nccwpck_require__(65907)), _asyncToGenerator = _interopDefault(__nccwpck_require__(67584)), _classCallCheck = _interopDefault(__nccwpck_require__(33446)), _possibleConstructorReturn = _interopDefault(__nccwpck_require__(83855)), _getPrototypeOf = _interopDefault(__nccwpck_require__(55989)), _inherits = _interopDefault(__nccwpck_require__(87406)), _wrapNativeSuper = _interopDefault(__nccwpck_require__(16318)), findUp = __nccwpck_require__(81179), findUp__default = _interopDefault(findUp), path = _interopDefault(__nccwpck_require__(16928)), fs = _interopDefault(__nccwpck_require__(97298)), NoPkgJsonFound = function(_Error) { +var _regeneratorRuntime = _interopDefault(__nccwpck_require__(5213)), _asyncToGenerator = _interopDefault(__nccwpck_require__(7270)), _classCallCheck = _interopDefault(__nccwpck_require__(1220)), _possibleConstructorReturn = _interopDefault(__nccwpck_require__(5297)), _getPrototypeOf = _interopDefault(__nccwpck_require__(1695)), _inherits = _interopDefault(__nccwpck_require__(4300)), _wrapNativeSuper = _interopDefault(__nccwpck_require__(4372)), findUp = __nccwpck_require__(9116), findUp__default = _interopDefault(findUp), path = _interopDefault(__nccwpck_require__(6928)), fs = _interopDefault(__nccwpck_require__(6668)), NoPkgJsonFound = function(_Error) { function NoPkgJsonFound(directory) { var _this; return _classCallCheck(this, NoPkgJsonFound), (_this = _possibleConstructorReturn(this, _getPrototypeOf(NoPkgJsonFound).call(this, "No package.json could be found upwards from the directory ".concat(directory)))).directory = directory, @@ -2663,10483 +2643,7592 @@ exports.NoPkgJsonFound = NoPkgJsonFound, exports.findRoot = findRoot, exports.fi /***/ }), -/***/ 39969: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +/***/ 8366: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const mkdirpSync = (__nccwpck_require__(20559).mkdirsSync) -const utimesSync = (__nccwpck_require__(84420).utimesMillisSync) -const stat = __nccwpck_require__(76821) +Object.defineProperty(exports, "__esModule", ({ value: true })); -function copySync (src, dest, opts) { - if (typeof opts === 'function') { - opts = { filter: opts } - } +function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; } - opts = opts || {} - opts.clobber = 'clobber' in opts ? !!opts.clobber : true // default to true for now - opts.overwrite = 'overwrite' in opts ? !!opts.overwrite : opts.clobber // overwrite falls back to clobber +var _regeneratorRuntime = _interopDefault(__nccwpck_require__(5213)); +var _asyncToGenerator = _interopDefault(__nccwpck_require__(7270)); +var _classCallCheck = _interopDefault(__nccwpck_require__(1220)); +var _possibleConstructorReturn = _interopDefault(__nccwpck_require__(5297)); +var _getPrototypeOf = _interopDefault(__nccwpck_require__(1695)); +var _inherits = _interopDefault(__nccwpck_require__(4300)); +var _wrapNativeSuper = _interopDefault(__nccwpck_require__(4372)); +var fs = _interopDefault(__nccwpck_require__(6668)); +var path = _interopDefault(__nccwpck_require__(6928)); +var globby = __nccwpck_require__(6245); +var globby__default = _interopDefault(globby); +var readYamlFile = __nccwpck_require__(6143); +var readYamlFile__default = _interopDefault(readYamlFile); +var findRoot = __nccwpck_require__(4038); - // Warn about using preserveTimestamps on 32-bit node - if (opts.preserveTimestamps && process.arch === 'ia32') { - console.warn(`fs-extra: Using the preserveTimestamps option in 32-bit node is not recommended;\n - see https://github.com/jprichardson/node-fs-extra/issues/269`) +var PackageJsonMissingNameError = +/*#__PURE__*/ +function (_Error) { + _inherits(PackageJsonMissingNameError, _Error); + + function PackageJsonMissingNameError(directories) { + var _this; + + _classCallCheck(this, PackageJsonMissingNameError); + + _this = _possibleConstructorReturn(this, _getPrototypeOf(PackageJsonMissingNameError).call(this, "The following package.jsons are missing the \"name\" field:\n".concat(directories.join("\n")))); + _this.directories = directories; + return _this; } - const { srcStat, destStat } = stat.checkPathsSync(src, dest, 'copy') - stat.checkParentPathsSync(src, srcStat, dest, 'copy') - return handleFilterAndCopy(destStat, src, dest, opts) + return PackageJsonMissingNameError; +}(_wrapNativeSuper(Error)); +function getPackages(_x) { + return _getPackages.apply(this, arguments); } -function handleFilterAndCopy (destStat, src, dest, opts) { - if (opts.filter && !opts.filter(src, dest)) return - const destParent = path.dirname(dest) - if (!fs.existsSync(destParent)) mkdirpSync(destParent) - return startCopy(destStat, src, dest, opts) -} +function _getPackages() { + _getPackages = _asyncToGenerator( + /*#__PURE__*/ + _regeneratorRuntime.mark(function _callee(dir) { + var cwd, pkg, tool, manifest, lernaJson, root, relativeDirectories, directories, pkgJsonsMissingNameField, results; + return _regeneratorRuntime.wrap(function _callee$(_context) { + while (1) { + switch (_context.prev = _context.next) { + case 0: + _context.next = 2; + return findRoot.findRoot(dir); -function startCopy (destStat, src, dest, opts) { - if (opts.filter && !opts.filter(src, dest)) return - return getStats(destStat, src, dest, opts) -} + case 2: + cwd = _context.sent; + _context.next = 5; + return fs.readJson(path.join(cwd, "package.json")); -function getStats (destStat, src, dest, opts) { - const statSync = opts.dereference ? fs.statSync : fs.lstatSync - const srcStat = statSync(src) + case 5: + pkg = _context.sent; - if (srcStat.isDirectory()) return onDir(srcStat, destStat, src, dest, opts) - else if (srcStat.isFile() || - srcStat.isCharacterDevice() || - srcStat.isBlockDevice()) return onFile(srcStat, destStat, src, dest, opts) - else if (srcStat.isSymbolicLink()) return onLink(destStat, src, dest, opts) -} + if (!pkg.workspaces) { + _context.next = 10; + break; + } -function onFile (srcStat, destStat, src, dest, opts) { - if (!destStat) return copyFile(srcStat, src, dest, opts) - return mayCopyFile(srcStat, src, dest, opts) -} + if (Array.isArray(pkg.workspaces)) { + tool = { + type: "yarn", + packageGlobs: pkg.workspaces + }; + } else if (pkg.workspaces.packages) { + tool = { + type: "yarn", + packageGlobs: pkg.workspaces.packages + }; + } -function mayCopyFile (srcStat, src, dest, opts) { - if (opts.overwrite) { - fs.unlinkSync(dest) - return copyFile(srcStat, src, dest, opts) - } else if (opts.errorOnExist) { - throw new Error(`'${dest}' already exists`) - } -} + _context.next = 37; + break; -function copyFile (srcStat, src, dest, opts) { - if (typeof fs.copyFileSync === 'function') { - fs.copyFileSync(src, dest) - fs.chmodSync(dest, srcStat.mode) - if (opts.preserveTimestamps) { - return utimesSync(dest, srcStat.atime, srcStat.mtime) - } - return - } - return copyFileFallback(srcStat, src, dest, opts) -} + case 10: + if (!(pkg.bolt && pkg.bolt.workspaces)) { + _context.next = 14; + break; + } -function copyFileFallback (srcStat, src, dest, opts) { - const BUF_LENGTH = 64 * 1024 - const _buff = __nccwpck_require__(26445)(BUF_LENGTH) + tool = { + type: "bolt", + packageGlobs: pkg.bolt.workspaces + }; + _context.next = 37; + break; - const fdr = fs.openSync(src, 'r') - const fdw = fs.openSync(dest, 'w', srcStat.mode) - let pos = 0 + case 14: + _context.prev = 14; + _context.next = 17; + return readYamlFile__default(path.join(cwd, "pnpm-workspace.yaml")); - while (pos < srcStat.size) { - const bytesRead = fs.readSync(fdr, _buff, 0, BUF_LENGTH, pos) - fs.writeSync(fdw, _buff, 0, bytesRead) - pos += bytesRead - } + case 17: + manifest = _context.sent; - if (opts.preserveTimestamps) fs.futimesSync(fdw, srcStat.atime, srcStat.mtime) + if (manifest && manifest.packages) { + tool = { + type: "pnpm", + packageGlobs: manifest.packages + }; + } - fs.closeSync(fdr) - fs.closeSync(fdw) -} + _context.next = 25; + break; -function onDir (srcStat, destStat, src, dest, opts) { - if (!destStat) return mkDirAndCopy(srcStat, src, dest, opts) - if (destStat && !destStat.isDirectory()) { - throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`) - } - return copyDir(src, dest, opts) -} + case 21: + _context.prev = 21; + _context.t0 = _context["catch"](14); -function mkDirAndCopy (srcStat, src, dest, opts) { - fs.mkdirSync(dest) - copyDir(src, dest, opts) - return fs.chmodSync(dest, srcStat.mode) -} + if (!(_context.t0.code !== "ENOENT")) { + _context.next = 25; + break; + } -function copyDir (src, dest, opts) { - fs.readdirSync(src).forEach(item => copyDirItem(item, src, dest, opts)) -} + throw _context.t0; -function copyDirItem (item, src, dest, opts) { - const srcItem = path.join(src, item) - const destItem = path.join(dest, item) - const { destStat } = stat.checkPathsSync(srcItem, destItem, 'copy') - return startCopy(destStat, srcItem, destItem, opts) + case 25: + if (tool) { + _context.next = 37; + break; + } + + _context.prev = 26; + _context.next = 29; + return fs.readJson(path.join(cwd, "lerna.json")); + + case 29: + lernaJson = _context.sent; + + if (lernaJson) { + tool = { + type: "lerna", + packageGlobs: lernaJson.packages || ["packages/*"] + }; + } + + _context.next = 37; + break; + + case 33: + _context.prev = 33; + _context.t1 = _context["catch"](26); + + if (!(_context.t1.code !== "ENOENT")) { + _context.next = 37; + break; + } + + throw _context.t1; + + case 37: + if (tool) { + _context.next = 42; + break; + } + + root = { + dir: cwd, + packageJson: pkg + }; + + if (pkg.name) { + _context.next = 41; + break; + } + + throw new PackageJsonMissingNameError(["package.json"]); + + case 41: + return _context.abrupt("return", { + tool: "root", + root: root, + packages: [root] + }); + + case 42: + _context.next = 44; + return globby__default(tool.packageGlobs, { + cwd: cwd, + onlyDirectories: true, + expandDirectories: false, + ignore: ["**/node_modules"] + }); + + case 44: + relativeDirectories = _context.sent; + directories = relativeDirectories.map(function (p) { + return path.resolve(cwd, p); + }); + pkgJsonsMissingNameField = []; + _context.next = 49; + return Promise.all(directories.sort().map(function (dir) { + return fs.readJson(path.join(dir, "package.json")).then(function (packageJson) { + if (!packageJson.name) { + pkgJsonsMissingNameField.push(path.relative(cwd, path.join(dir, "package.json"))); + } + + return { + packageJson: packageJson, + dir: dir + }; + })["catch"](function (err) { + if (err.code === "ENOENT") { + return null; + } + + throw err; + }); + })); + + case 49: + _context.t2 = function (x) { + return x; + }; + + results = _context.sent.filter(_context.t2); + + if (!(pkgJsonsMissingNameField.length !== 0)) { + _context.next = 54; + break; + } + + pkgJsonsMissingNameField.sort(); + throw new PackageJsonMissingNameError(pkgJsonsMissingNameField); + + case 54: + return _context.abrupt("return", { + tool: tool.type, + root: { + dir: cwd, + packageJson: pkg + }, + packages: results + }); + + case 55: + case "end": + return _context.stop(); + } + } + }, _callee, null, [[14, 21], [26, 33]]); + })); + return _getPackages.apply(this, arguments); } -function onLink (destStat, src, dest, opts) { - let resolvedSrc = fs.readlinkSync(src) - if (opts.dereference) { - resolvedSrc = path.resolve(process.cwd(), resolvedSrc) - } +function getPackagesSync(dir) { + var cwd = findRoot.findRootSync(dir); + var pkg = fs.readJsonSync(path.join(cwd, "package.json")); + var tool; - if (!destStat) { - return fs.symlinkSync(resolvedSrc, dest) + if (pkg.workspaces) { + if (Array.isArray(pkg.workspaces)) { + tool = { + type: "yarn", + packageGlobs: pkg.workspaces + }; + } else if (pkg.workspaces.packages) { + tool = { + type: "yarn", + packageGlobs: pkg.workspaces.packages + }; + } + } else if (pkg.bolt && pkg.bolt.workspaces) { + tool = { + type: "bolt", + packageGlobs: pkg.bolt.workspaces + }; } else { - let resolvedDest try { - resolvedDest = fs.readlinkSync(dest) + var manifest = readYamlFile.sync(path.join(cwd, "pnpm-workspace.yaml")); + + if (manifest && manifest.packages) { + tool = { + type: "pnpm", + packageGlobs: manifest.packages + }; + } } catch (err) { - // dest exists and is a regular file or directory, - // Windows may throw UNKNOWN error. If dest already exists, - // fs throws error anyway, so no need to guard against it here. - if (err.code === 'EINVAL' || err.code === 'UNKNOWN') return fs.symlinkSync(resolvedSrc, dest) - throw err + if (err.code !== "ENOENT") { + throw err; + } } - if (opts.dereference) { - resolvedDest = path.resolve(process.cwd(), resolvedDest) + + if (!tool) { + try { + var lernaJson = fs.readJsonSync(path.join(cwd, "lerna.json")); + + if (lernaJson) { + tool = { + type: "lerna", + packageGlobs: lernaJson.packages || ["packages/*"] + }; + } + } catch (err) { + if (err.code !== "ENOENT") { + throw err; + } + } } - if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) { - throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`) + } + + if (!tool) { + var root = { + dir: cwd, + packageJson: pkg + }; + + if (!pkg.name) { + throw new PackageJsonMissingNameError(["package.json"]); } - // prevent copy if src is a subdir of dest since unlinking - // dest in this case would result in removing src contents - // and therefore a broken symlink would be created. - if (fs.statSync(dest).isDirectory() && stat.isSrcSubdir(resolvedDest, resolvedSrc)) { - throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`) + return { + tool: "root", + root: root, + packages: [root] + }; + } + + var relativeDirectories = globby.sync(tool.packageGlobs, { + cwd: cwd, + onlyDirectories: true, + expandDirectories: false, + ignore: ["**/node_modules"] + }); + var directories = relativeDirectories.map(function (p) { + return path.resolve(cwd, p); + }); + var pkgJsonsMissingNameField = []; + var results = directories.sort().map(function (dir) { + try { + var packageJson = fs.readJsonSync(path.join(dir, "package.json")); + + if (!packageJson.name) { + pkgJsonsMissingNameField.push(path.relative(cwd, path.join(dir, "package.json"))); + } + + return { + packageJson: packageJson, + dir: dir + }; + } catch (err) { + if (err.code === "ENOENT") return null; + throw err; } - return copyLink(resolvedSrc, dest) + }).filter(function (x) { + return x; + }); + + if (pkgJsonsMissingNameField.length !== 0) { + pkgJsonsMissingNameField.sort(); + throw new PackageJsonMissingNameError(pkgJsonsMissingNameField); } -} -function copyLink (resolvedSrc, dest) { - fs.unlinkSync(dest) - return fs.symlinkSync(resolvedSrc, dest) + return { + tool: tool.type, + root: { + dir: cwd, + packageJson: pkg + }, + packages: results + }; } -module.exports = copySync +exports.PackageJsonMissingNameError = PackageJsonMissingNameError; +exports.getPackages = getPackages; +exports.getPackagesSync = getPackagesSync; /***/ }), -/***/ 52726: +/***/ 7507: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -module.exports = { - copySync: __nccwpck_require__(39969) +if (process.env.NODE_ENV === "production") { + module.exports = __nccwpck_require__(6275); +} else { + module.exports = __nccwpck_require__(8366); } /***/ }), -/***/ 76137: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +/***/ 6275: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const mkdirp = (__nccwpck_require__(20559).mkdirs) -const pathExists = (__nccwpck_require__(85615).pathExists) -const utimes = (__nccwpck_require__(84420).utimesMillis) -const stat = __nccwpck_require__(76821) +function _interopDefault(ex) { + return ex && "object" == typeof ex && "default" in ex ? ex.default : ex; +} -function copy (src, dest, opts, cb) { - if (typeof opts === 'function' && !cb) { - cb = opts - opts = {} - } else if (typeof opts === 'function') { - opts = { filter: opts } - } - - cb = cb || function () {} - opts = opts || {} - - opts.clobber = 'clobber' in opts ? !!opts.clobber : true // default to true for now - opts.overwrite = 'overwrite' in opts ? !!opts.overwrite : opts.clobber // overwrite falls back to clobber +Object.defineProperty(exports, "__esModule", ({ + value: !0 +})); - // Warn about using preserveTimestamps on 32-bit node - if (opts.preserveTimestamps && process.arch === 'ia32') { - console.warn(`fs-extra: Using the preserveTimestamps option in 32-bit node is not recommended;\n - see https://github.com/jprichardson/node-fs-extra/issues/269`) +var _regeneratorRuntime = _interopDefault(__nccwpck_require__(5213)), _asyncToGenerator = _interopDefault(__nccwpck_require__(7270)), _classCallCheck = _interopDefault(__nccwpck_require__(1220)), _possibleConstructorReturn = _interopDefault(__nccwpck_require__(5297)), _getPrototypeOf = _interopDefault(__nccwpck_require__(1695)), _inherits = _interopDefault(__nccwpck_require__(4300)), _wrapNativeSuper = _interopDefault(__nccwpck_require__(4372)), fs = _interopDefault(__nccwpck_require__(6668)), path = _interopDefault(__nccwpck_require__(6928)), globby = __nccwpck_require__(6245), globby__default = _interopDefault(globby), readYamlFile = __nccwpck_require__(6143), readYamlFile__default = _interopDefault(readYamlFile), findRoot = __nccwpck_require__(4038), PackageJsonMissingNameError = function(_Error) { + function PackageJsonMissingNameError(directories) { + var _this; + return _classCallCheck(this, PackageJsonMissingNameError), (_this = _possibleConstructorReturn(this, _getPrototypeOf(PackageJsonMissingNameError).call(this, 'The following package.jsons are missing the "name" field:\n'.concat(directories.join("\n"))))).directories = directories, + _this; } + return _inherits(PackageJsonMissingNameError, _Error), PackageJsonMissingNameError; +}(_wrapNativeSuper(Error)); - stat.checkPaths(src, dest, 'copy', (err, stats) => { - if (err) return cb(err) - const { srcStat, destStat } = stats - stat.checkParentPaths(src, srcStat, dest, 'copy', err => { - if (err) return cb(err) - if (opts.filter) return handleFilter(checkParentDir, destStat, src, dest, opts, cb) - return checkParentDir(destStat, src, dest, opts, cb) - }) - }) -} - -function checkParentDir (destStat, src, dest, opts, cb) { - const destParent = path.dirname(dest) - pathExists(destParent, (err, dirExists) => { - if (err) return cb(err) - if (dirExists) return startCopy(destStat, src, dest, opts, cb) - mkdirp(destParent, err => { - if (err) return cb(err) - return startCopy(destStat, src, dest, opts, cb) - }) - }) -} - -function handleFilter (onInclude, destStat, src, dest, opts, cb) { - Promise.resolve(opts.filter(src, dest)).then(include => { - if (include) return onInclude(destStat, src, dest, opts, cb) - return cb() - }, error => cb(error)) +function getPackages(_x) { + return _getPackages.apply(this, arguments); } -function startCopy (destStat, src, dest, opts, cb) { - if (opts.filter) return handleFilter(getStats, destStat, src, dest, opts, cb) - return getStats(destStat, src, dest, opts, cb) -} +function _getPackages() { + return (_getPackages = _asyncToGenerator(_regeneratorRuntime.mark(function _callee(dir) { + var cwd, pkg, tool, manifest, lernaJson, root, relativeDirectories, directories, pkgJsonsMissingNameField, results; + return _regeneratorRuntime.wrap(function(_context) { + for (;;) switch (_context.prev = _context.next) { + case 0: + return _context.next = 2, findRoot.findRoot(dir); -function getStats (destStat, src, dest, opts, cb) { - const stat = opts.dereference ? fs.stat : fs.lstat - stat(src, (err, srcStat) => { - if (err) return cb(err) + case 2: + return cwd = _context.sent, _context.next = 5, fs.readJson(path.join(cwd, "package.json")); - if (srcStat.isDirectory()) return onDir(srcStat, destStat, src, dest, opts, cb) - else if (srcStat.isFile() || - srcStat.isCharacterDevice() || - srcStat.isBlockDevice()) return onFile(srcStat, destStat, src, dest, opts, cb) - else if (srcStat.isSymbolicLink()) return onLink(destStat, src, dest, opts, cb) - }) -} + case 5: + if (!(pkg = _context.sent).workspaces) { + _context.next = 10; + break; + } + Array.isArray(pkg.workspaces) ? tool = { + type: "yarn", + packageGlobs: pkg.workspaces + } : pkg.workspaces.packages && (tool = { + type: "yarn", + packageGlobs: pkg.workspaces.packages + }), _context.next = 37; + break; -function onFile (srcStat, destStat, src, dest, opts, cb) { - if (!destStat) return copyFile(srcStat, src, dest, opts, cb) - return mayCopyFile(srcStat, src, dest, opts, cb) -} + case 10: + if (!pkg.bolt || !pkg.bolt.workspaces) { + _context.next = 14; + break; + } + tool = { + type: "bolt", + packageGlobs: pkg.bolt.workspaces + }, _context.next = 37; + break; -function mayCopyFile (srcStat, src, dest, opts, cb) { - if (opts.overwrite) { - fs.unlink(dest, err => { - if (err) return cb(err) - return copyFile(srcStat, src, dest, opts, cb) - }) - } else if (opts.errorOnExist) { - return cb(new Error(`'${dest}' already exists`)) - } else return cb() -} + case 14: + return _context.prev = 14, _context.next = 17, readYamlFile__default(path.join(cwd, "pnpm-workspace.yaml")); -function copyFile (srcStat, src, dest, opts, cb) { - if (typeof fs.copyFile === 'function') { - return fs.copyFile(src, dest, err => { - if (err) return cb(err) - return setDestModeAndTimestamps(srcStat, dest, opts, cb) - }) - } - return copyFileFallback(srcStat, src, dest, opts, cb) -} + case 17: + (manifest = _context.sent) && manifest.packages && (tool = { + type: "pnpm", + packageGlobs: manifest.packages + }), _context.next = 25; + break; -function copyFileFallback (srcStat, src, dest, opts, cb) { - const rs = fs.createReadStream(src) - rs.on('error', err => cb(err)).once('open', () => { - const ws = fs.createWriteStream(dest, { mode: srcStat.mode }) - ws.on('error', err => cb(err)) - .on('open', () => rs.pipe(ws)) - .once('close', () => setDestModeAndTimestamps(srcStat, dest, opts, cb)) - }) -} + case 21: + if (_context.prev = 21, _context.t0 = _context.catch(14), "ENOENT" === _context.t0.code) { + _context.next = 25; + break; + } + throw _context.t0; -function setDestModeAndTimestamps (srcStat, dest, opts, cb) { - fs.chmod(dest, srcStat.mode, err => { - if (err) return cb(err) - if (opts.preserveTimestamps) { - return utimes(dest, srcStat.atime, srcStat.mtime, cb) - } - return cb() - }) -} + case 25: + if (tool) { + _context.next = 37; + break; + } + return _context.prev = 26, _context.next = 29, fs.readJson(path.join(cwd, "lerna.json")); -function onDir (srcStat, destStat, src, dest, opts, cb) { - if (!destStat) return mkDirAndCopy(srcStat, src, dest, opts, cb) - if (destStat && !destStat.isDirectory()) { - return cb(new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`)) - } - return copyDir(src, dest, opts, cb) -} + case 29: + (lernaJson = _context.sent) && (tool = { + type: "lerna", + packageGlobs: lernaJson.packages || [ "packages/*" ] + }), _context.next = 37; + break; -function mkDirAndCopy (srcStat, src, dest, opts, cb) { - fs.mkdir(dest, err => { - if (err) return cb(err) - copyDir(src, dest, opts, err => { - if (err) return cb(err) - return fs.chmod(dest, srcStat.mode, cb) - }) - }) -} + case 33: + if (_context.prev = 33, _context.t1 = _context.catch(26), "ENOENT" === _context.t1.code) { + _context.next = 37; + break; + } + throw _context.t1; -function copyDir (src, dest, opts, cb) { - fs.readdir(src, (err, items) => { - if (err) return cb(err) - return copyDirItems(items, src, dest, opts, cb) - }) -} + case 37: + if (tool) { + _context.next = 42; + break; + } + if (root = { + dir: cwd, + packageJson: pkg + }, pkg.name) { + _context.next = 41; + break; + } + throw new PackageJsonMissingNameError([ "package.json" ]); -function copyDirItems (items, src, dest, opts, cb) { - const item = items.pop() - if (!item) return cb() - return copyDirItem(items, item, src, dest, opts, cb) -} + case 41: + return _context.abrupt("return", { + tool: "root", + root: root, + packages: [ root ] + }); -function copyDirItem (items, item, src, dest, opts, cb) { - const srcItem = path.join(src, item) - const destItem = path.join(dest, item) - stat.checkPaths(srcItem, destItem, 'copy', (err, stats) => { - if (err) return cb(err) - const { destStat } = stats - startCopy(destStat, srcItem, destItem, opts, err => { - if (err) return cb(err) - return copyDirItems(items, src, dest, opts, cb) - }) - }) -} + case 42: + return _context.next = 44, globby__default(tool.packageGlobs, { + cwd: cwd, + onlyDirectories: !0, + expandDirectories: !1, + ignore: [ "**/node_modules" ] + }); -function onLink (destStat, src, dest, opts, cb) { - fs.readlink(src, (err, resolvedSrc) => { - if (err) return cb(err) - if (opts.dereference) { - resolvedSrc = path.resolve(process.cwd(), resolvedSrc) - } + case 44: + return relativeDirectories = _context.sent, directories = relativeDirectories.map(function(p) { + return path.resolve(cwd, p); + }), pkgJsonsMissingNameField = [], _context.next = 49, Promise.all(directories.sort().map(function(dir) { + return fs.readJson(path.join(dir, "package.json")).then(function(packageJson) { + return packageJson.name || pkgJsonsMissingNameField.push(path.relative(cwd, path.join(dir, "package.json"))), + { + packageJson: packageJson, + dir: dir + }; + }).catch(function(err) { + if ("ENOENT" === err.code) return null; + throw err; + }); + })); - if (!destStat) { - return fs.symlink(resolvedSrc, dest, cb) - } else { - fs.readlink(dest, (err, resolvedDest) => { - if (err) { - // dest exists and is a regular file or directory, - // Windows may throw UNKNOWN error. If dest already exists, - // fs throws error anyway, so no need to guard against it here. - if (err.code === 'EINVAL' || err.code === 'UNKNOWN') return fs.symlink(resolvedSrc, dest, cb) - return cb(err) - } - if (opts.dereference) { - resolvedDest = path.resolve(process.cwd(), resolvedDest) - } - if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) { - return cb(new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`)) + case 49: + if (_context.t2 = function(x) { + return x; + }, results = _context.sent.filter(_context.t2), 0 === pkgJsonsMissingNameField.length) { + _context.next = 54; + break; } + throw pkgJsonsMissingNameField.sort(), new PackageJsonMissingNameError(pkgJsonsMissingNameField); - // do not copy if src is a subdir of dest since unlinking - // dest in this case would result in removing src contents - // and therefore a broken symlink would be created. - if (destStat.isDirectory() && stat.isSrcSubdir(resolvedDest, resolvedSrc)) { - return cb(new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`)) - } - return copyLink(resolvedSrc, dest, cb) - }) - } - }) + case 54: + return _context.abrupt("return", { + tool: tool.type, + root: { + dir: cwd, + packageJson: pkg + }, + packages: results + }); + + case 55: + case "end": + return _context.stop(); + } + }, _callee, null, [ [ 14, 21 ], [ 26, 33 ] ]); + }))).apply(this, arguments); } -function copyLink (resolvedSrc, dest, cb) { - fs.unlink(dest, err => { - if (err) return cb(err) - return fs.symlink(resolvedSrc, dest, cb) - }) +function getPackagesSync(dir) { + var tool, cwd = findRoot.findRootSync(dir), pkg = fs.readJsonSync(path.join(cwd, "package.json")); + if (pkg.workspaces) Array.isArray(pkg.workspaces) ? tool = { + type: "yarn", + packageGlobs: pkg.workspaces + } : pkg.workspaces.packages && (tool = { + type: "yarn", + packageGlobs: pkg.workspaces.packages + }); else if (pkg.bolt && pkg.bolt.workspaces) tool = { + type: "bolt", + packageGlobs: pkg.bolt.workspaces + }; else { + try { + var manifest = readYamlFile.sync(path.join(cwd, "pnpm-workspace.yaml")); + manifest && manifest.packages && (tool = { + type: "pnpm", + packageGlobs: manifest.packages + }); + } catch (err) { + if ("ENOENT" !== err.code) throw err; + } + if (!tool) try { + var lernaJson = fs.readJsonSync(path.join(cwd, "lerna.json")); + lernaJson && (tool = { + type: "lerna", + packageGlobs: lernaJson.packages || [ "packages/*" ] + }); + } catch (err) { + if ("ENOENT" !== err.code) throw err; + } + } + if (!tool) { + var root = { + dir: cwd, + packageJson: pkg + }; + if (!pkg.name) throw new PackageJsonMissingNameError([ "package.json" ]); + return { + tool: "root", + root: root, + packages: [ root ] + }; + } + var directories = globby.sync(tool.packageGlobs, { + cwd: cwd, + onlyDirectories: !0, + expandDirectories: !1, + ignore: [ "**/node_modules" ] + }).map(function(p) { + return path.resolve(cwd, p); + }), pkgJsonsMissingNameField = [], results = directories.sort().map(function(dir) { + try { + var packageJson = fs.readJsonSync(path.join(dir, "package.json")); + return packageJson.name || pkgJsonsMissingNameField.push(path.relative(cwd, path.join(dir, "package.json"))), + { + packageJson: packageJson, + dir: dir + }; + } catch (err) { + if ("ENOENT" === err.code) return null; + throw err; + } + }).filter(function(x) { + return x; + }); + if (0 !== pkgJsonsMissingNameField.length) throw pkgJsonsMissingNameField.sort(), + new PackageJsonMissingNameError(pkgJsonsMissingNameField); + return { + tool: tool.type, + root: { + dir: cwd, + packageJson: pkg + }, + packages: results + }; } -module.exports = copy +exports.PackageJsonMissingNameError = PackageJsonMissingNameError, exports.getPackages = getPackages, +exports.getPackagesSync = getPackagesSync; /***/ }), -/***/ 61454: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - +/***/ 16: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -module.exports = { - copy: u(__nccwpck_require__(76137)) +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.createFileSystemAdapter = exports.FILE_SYSTEM_ADAPTER = void 0; +const fs = __nccwpck_require__(9896); +exports.FILE_SYSTEM_ADAPTER = { + lstat: fs.lstat, + stat: fs.stat, + lstatSync: fs.lstatSync, + statSync: fs.statSync, + readdir: fs.readdir, + readdirSync: fs.readdirSync +}; +function createFileSystemAdapter(fsMethods) { + if (fsMethods === undefined) { + return exports.FILE_SYSTEM_ADAPTER; + } + return Object.assign(Object.assign({}, exports.FILE_SYSTEM_ADAPTER), fsMethods); } +exports.createFileSystemAdapter = createFileSystemAdapter; /***/ }), -/***/ 50312: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +/***/ 1121: +/***/ ((__unused_webpack_module, exports) => { +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.IS_SUPPORT_READDIR_WITH_FILE_TYPES = void 0; +const NODE_PROCESS_VERSION_PARTS = process.versions.node.split('.'); +if (NODE_PROCESS_VERSION_PARTS[0] === undefined || NODE_PROCESS_VERSION_PARTS[1] === undefined) { + throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`); +} +const MAJOR_VERSION = Number.parseInt(NODE_PROCESS_VERSION_PARTS[0], 10); +const MINOR_VERSION = Number.parseInt(NODE_PROCESS_VERSION_PARTS[1], 10); +const SUPPORTED_MAJOR_VERSION = 10; +const SUPPORTED_MINOR_VERSION = 10; +const IS_MATCHED_BY_MAJOR = MAJOR_VERSION > SUPPORTED_MAJOR_VERSION; +const IS_MATCHED_BY_MAJOR_AND_MINOR = MAJOR_VERSION === SUPPORTED_MAJOR_VERSION && MINOR_VERSION >= SUPPORTED_MINOR_VERSION; +/** + * IS `true` for Node.js 10.10 and greater. + */ +exports.IS_SUPPORT_READDIR_WITH_FILE_TYPES = IS_MATCHED_BY_MAJOR || IS_MATCHED_BY_MAJOR_AND_MINOR; -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const mkdir = __nccwpck_require__(20559) -const remove = __nccwpck_require__(75419) -const emptyDir = u(function emptyDir (dir, callback) { - callback = callback || function () {} - fs.readdir(dir, (err, items) => { - if (err) return mkdir.mkdirs(dir, callback) +/***/ }), - items = items.map(item => path.join(dir, item)) +/***/ 1484: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - deleteItem() - function deleteItem () { - const item = items.pop() - if (!item) return callback() - remove.remove(item, err => { - if (err) return callback(err) - deleteItem() - }) +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.Settings = exports.scandirSync = exports.scandir = void 0; +const async = __nccwpck_require__(9977); +const sync = __nccwpck_require__(5554); +const settings_1 = __nccwpck_require__(595); +exports.Settings = settings_1.default; +function scandir(path, optionsOrSettingsOrCallback, callback) { + if (typeof optionsOrSettingsOrCallback === 'function') { + async.read(path, getSettings(), optionsOrSettingsOrCallback); + return; } - }) -}) - -function emptyDirSync (dir) { - let items - try { - items = fs.readdirSync(dir) - } catch (err) { - return mkdir.mkdirsSync(dir) - } - - items.forEach(item => { - item = path.join(dir, item) - remove.removeSync(item) - }) + async.read(path, getSettings(optionsOrSettingsOrCallback), callback); } - -module.exports = { - emptyDirSync, - emptydirSync: emptyDirSync, - emptyDir, - emptydir: emptyDir +exports.scandir = scandir; +function scandirSync(path, optionsOrSettings) { + const settings = getSettings(optionsOrSettings); + return sync.read(path, settings); +} +exports.scandirSync = scandirSync; +function getSettings(settingsOrOptions = {}) { + if (settingsOrOptions instanceof settings_1.default) { + return settingsOrOptions; + } + return new settings_1.default(settingsOrOptions); } /***/ }), -/***/ 90403: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const path = __nccwpck_require__(16928) -const fs = __nccwpck_require__(61404) -const mkdir = __nccwpck_require__(20559) -const pathExists = (__nccwpck_require__(85615).pathExists) - -function createFile (file, callback) { - function makeFile () { - fs.writeFile(file, '', err => { - if (err) return callback(err) - callback() - }) - } +/***/ 9977: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - fs.stat(file, (err, stats) => { // eslint-disable-line handle-callback-err - if (!err && stats.isFile()) return callback() - const dir = path.dirname(file) - pathExists(dir, (err, dirExists) => { - if (err) return callback(err) - if (dirExists) return makeFile() - mkdir.mkdirs(dir, err => { - if (err) return callback(err) - makeFile() - }) - }) - }) -} -function createFileSync (file) { - let stats - try { - stats = fs.statSync(file) - } catch (e) {} - if (stats && stats.isFile()) return - - const dir = path.dirname(file) - if (!fs.existsSync(dir)) { - mkdir.mkdirsSync(dir) - } - - fs.writeFileSync(file, '') +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.readdir = exports.readdirWithFileTypes = exports.read = void 0; +const fsStat = __nccwpck_require__(1309); +const rpl = __nccwpck_require__(7906); +const constants_1 = __nccwpck_require__(1121); +const utils = __nccwpck_require__(2046); +const common = __nccwpck_require__(9392); +function read(directory, settings, callback) { + if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) { + readdirWithFileTypes(directory, settings, callback); + return; + } + readdir(directory, settings, callback); } - -module.exports = { - createFile: u(createFile), - createFileSync +exports.read = read; +function readdirWithFileTypes(directory, settings, callback) { + settings.fs.readdir(directory, { withFileTypes: true }, (readdirError, dirents) => { + if (readdirError !== null) { + callFailureCallback(callback, readdirError); + return; + } + const entries = dirents.map((dirent) => ({ + dirent, + name: dirent.name, + path: common.joinPathSegments(directory, dirent.name, settings.pathSegmentSeparator) + })); + if (!settings.followSymbolicLinks) { + callSuccessCallback(callback, entries); + return; + } + const tasks = entries.map((entry) => makeRplTaskEntry(entry, settings)); + rpl(tasks, (rplError, rplEntries) => { + if (rplError !== null) { + callFailureCallback(callback, rplError); + return; + } + callSuccessCallback(callback, rplEntries); + }); + }); +} +exports.readdirWithFileTypes = readdirWithFileTypes; +function makeRplTaskEntry(entry, settings) { + return (done) => { + if (!entry.dirent.isSymbolicLink()) { + done(null, entry); + return; + } + settings.fs.stat(entry.path, (statError, stats) => { + if (statError !== null) { + if (settings.throwErrorOnBrokenSymbolicLink) { + done(statError); + return; + } + done(null, entry); + return; + } + entry.dirent = utils.fs.createDirentFromStats(entry.name, stats); + done(null, entry); + }); + }; +} +function readdir(directory, settings, callback) { + settings.fs.readdir(directory, (readdirError, names) => { + if (readdirError !== null) { + callFailureCallback(callback, readdirError); + return; + } + const tasks = names.map((name) => { + const path = common.joinPathSegments(directory, name, settings.pathSegmentSeparator); + return (done) => { + fsStat.stat(path, settings.fsStatSettings, (error, stats) => { + if (error !== null) { + done(error); + return; + } + const entry = { + name, + path, + dirent: utils.fs.createDirentFromStats(name, stats) + }; + if (settings.stats) { + entry.stats = stats; + } + done(null, entry); + }); + }; + }); + rpl(tasks, (rplError, entries) => { + if (rplError !== null) { + callFailureCallback(callback, rplError); + return; + } + callSuccessCallback(callback, entries); + }); + }); +} +exports.readdir = readdir; +function callFailureCallback(callback, error) { + callback(error); +} +function callSuccessCallback(callback, result) { + callback(null, result); } /***/ }), -/***/ 70785: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - +/***/ 9392: +/***/ ((__unused_webpack_module, exports) => { -const file = __nccwpck_require__(90403) -const link = __nccwpck_require__(47421) -const symlink = __nccwpck_require__(8318) -module.exports = { - // file - createFile: file.createFile, - createFileSync: file.createFileSync, - ensureFile: file.createFile, - ensureFileSync: file.createFileSync, - // link - createLink: link.createLink, - createLinkSync: link.createLinkSync, - ensureLink: link.createLink, - ensureLinkSync: link.createLinkSync, - // symlink - createSymlink: symlink.createSymlink, - createSymlinkSync: symlink.createSymlinkSync, - ensureSymlink: symlink.createSymlink, - ensureSymlinkSync: symlink.createSymlinkSync +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.joinPathSegments = void 0; +function joinPathSegments(a, b, separator) { + /** + * The correct handling of cases when the first segment is a root (`/`, `C:/`) or UNC path (`//?/C:/`). + */ + if (a.endsWith(separator)) { + return a + b; + } + return a + separator + b; } +exports.joinPathSegments = joinPathSegments; /***/ }), -/***/ 47421: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +/***/ 5554: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.readdir = exports.readdirWithFileTypes = exports.read = void 0; +const fsStat = __nccwpck_require__(1309); +const constants_1 = __nccwpck_require__(1121); +const utils = __nccwpck_require__(2046); +const common = __nccwpck_require__(9392); +function read(directory, settings) { + if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) { + return readdirWithFileTypes(directory, settings); + } + return readdir(directory, settings); +} +exports.read = read; +function readdirWithFileTypes(directory, settings) { + const dirents = settings.fs.readdirSync(directory, { withFileTypes: true }); + return dirents.map((dirent) => { + const entry = { + dirent, + name: dirent.name, + path: common.joinPathSegments(directory, dirent.name, settings.pathSegmentSeparator) + }; + if (entry.dirent.isSymbolicLink() && settings.followSymbolicLinks) { + try { + const stats = settings.fs.statSync(entry.path); + entry.dirent = utils.fs.createDirentFromStats(entry.name, stats); + } + catch (error) { + if (settings.throwErrorOnBrokenSymbolicLink) { + throw error; + } + } + } + return entry; + }); +} +exports.readdirWithFileTypes = readdirWithFileTypes; +function readdir(directory, settings) { + const names = settings.fs.readdirSync(directory); + return names.map((name) => { + const entryPath = common.joinPathSegments(directory, name, settings.pathSegmentSeparator); + const stats = fsStat.statSync(entryPath, settings.fsStatSettings); + const entry = { + name, + path: entryPath, + dirent: utils.fs.createDirentFromStats(name, stats) + }; + if (settings.stats) { + entry.stats = stats; + } + return entry; + }); +} +exports.readdir = readdir; + -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const path = __nccwpck_require__(16928) -const fs = __nccwpck_require__(61404) -const mkdir = __nccwpck_require__(20559) -const pathExists = (__nccwpck_require__(85615).pathExists) +/***/ }), -function createLink (srcpath, dstpath, callback) { - function makeLink (srcpath, dstpath) { - fs.link(srcpath, dstpath, err => { - if (err) return callback(err) - callback(null) - }) - } +/***/ 595: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - pathExists(dstpath, (err, destinationExists) => { - if (err) return callback(err) - if (destinationExists) return callback(null) - fs.lstat(srcpath, (err) => { - if (err) { - err.message = err.message.replace('lstat', 'ensureLink') - return callback(err) - } - const dir = path.dirname(dstpath) - pathExists(dir, (err, dirExists) => { - if (err) return callback(err) - if (dirExists) return makeLink(srcpath, dstpath) - mkdir.mkdirs(dir, err => { - if (err) return callback(err) - makeLink(srcpath, dstpath) - }) - }) - }) - }) +Object.defineProperty(exports, "__esModule", ({ value: true })); +const path = __nccwpck_require__(6928); +const fsStat = __nccwpck_require__(1309); +const fs = __nccwpck_require__(16); +class Settings { + constructor(_options = {}) { + this._options = _options; + this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, false); + this.fs = fs.createFileSystemAdapter(this._options.fs); + this.pathSegmentSeparator = this._getValue(this._options.pathSegmentSeparator, path.sep); + this.stats = this._getValue(this._options.stats, false); + this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, true); + this.fsStatSettings = new fsStat.Settings({ + followSymbolicLink: this.followSymbolicLinks, + fs: this.fs, + throwErrorOnBrokenSymbolicLink: this.throwErrorOnBrokenSymbolicLink + }); + } + _getValue(option, value) { + return option !== null && option !== void 0 ? option : value; + } } +exports["default"] = Settings; -function createLinkSync (srcpath, dstpath) { - const destinationExists = fs.existsSync(dstpath) - if (destinationExists) return undefined - try { - fs.lstatSync(srcpath) - } catch (err) { - err.message = err.message.replace('lstat', 'ensureLink') - throw err - } +/***/ }), - const dir = path.dirname(dstpath) - const dirExists = fs.existsSync(dir) - if (dirExists) return fs.linkSync(srcpath, dstpath) - mkdir.mkdirsSync(dir) +/***/ 2535: +/***/ ((__unused_webpack_module, exports) => { - return fs.linkSync(srcpath, dstpath) -} -module.exports = { - createLink: u(createLink), - createLinkSync +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.createDirentFromStats = void 0; +class DirentFromStats { + constructor(name, stats) { + this.name = name; + this.isBlockDevice = stats.isBlockDevice.bind(stats); + this.isCharacterDevice = stats.isCharacterDevice.bind(stats); + this.isDirectory = stats.isDirectory.bind(stats); + this.isFIFO = stats.isFIFO.bind(stats); + this.isFile = stats.isFile.bind(stats); + this.isSocket = stats.isSocket.bind(stats); + this.isSymbolicLink = stats.isSymbolicLink.bind(stats); + } } +function createDirentFromStats(name, stats) { + return new DirentFromStats(name, stats); +} +exports.createDirentFromStats = createDirentFromStats; /***/ }), -/***/ 51923: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +/***/ 2046: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.fs = void 0; +const fs = __nccwpck_require__(2535); +exports.fs = fs; -const path = __nccwpck_require__(16928) -const fs = __nccwpck_require__(61404) -const pathExists = (__nccwpck_require__(85615).pathExists) -/** - * Function that returns two types of paths, one relative to symlink, and one - * relative to the current working directory. Checks if path is absolute or - * relative. If the path is relative, this function checks if the path is - * relative to symlink or relative to current working directory. This is an - * initiative to find a smarter `srcpath` to supply when building symlinks. - * This allows you to determine which path to use out of one of three possible - * types of source paths. The first is an absolute path. This is detected by - * `path.isAbsolute()`. When an absolute path is provided, it is checked to - * see if it exists. If it does it's used, if not an error is returned - * (callback)/ thrown (sync). The other two options for `srcpath` are a - * relative url. By default Node's `fs.symlink` works by creating a symlink - * using `dstpath` and expects the `srcpath` to be relative to the newly - * created symlink. If you provide a `srcpath` that does not exist on the file - * system it results in a broken symlink. To minimize this, the function - * checks to see if the 'relative to symlink' source file exists, and if it - * does it will use it. If it does not, it checks if there's a file that - * exists that is relative to the current working directory, if does its used. - * This preserves the expectations of the original fs.symlink spec and adds - * the ability to pass in `relative to current working direcotry` paths. - */ +/***/ }), -function symlinkPaths (srcpath, dstpath, callback) { - if (path.isAbsolute(srcpath)) { - return fs.lstat(srcpath, (err) => { - if (err) { - err.message = err.message.replace('lstat', 'ensureSymlink') - return callback(err) - } - return callback(null, { - 'toCwd': srcpath, - 'toDst': srcpath - }) - }) - } else { - const dstdir = path.dirname(dstpath) - const relativeToDst = path.join(dstdir, srcpath) - return pathExists(relativeToDst, (err, exists) => { - if (err) return callback(err) - if (exists) { - return callback(null, { - 'toCwd': relativeToDst, - 'toDst': srcpath - }) - } else { - return fs.lstat(srcpath, (err) => { - if (err) { - err.message = err.message.replace('lstat', 'ensureSymlink') - return callback(err) - } - return callback(null, { - 'toCwd': srcpath, - 'toDst': path.relative(dstdir, srcpath) - }) - }) - } - }) - } -} +/***/ 5375: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -function symlinkPathsSync (srcpath, dstpath) { - let exists - if (path.isAbsolute(srcpath)) { - exists = fs.existsSync(srcpath) - if (!exists) throw new Error('absolute srcpath does not exist') - return { - 'toCwd': srcpath, - 'toDst': srcpath - } - } else { - const dstdir = path.dirname(dstpath) - const relativeToDst = path.join(dstdir, srcpath) - exists = fs.existsSync(relativeToDst) - if (exists) { - return { - 'toCwd': relativeToDst, - 'toDst': srcpath - } - } else { - exists = fs.existsSync(srcpath) - if (!exists) throw new Error('relative srcpath does not exist') - return { - 'toCwd': srcpath, - 'toDst': path.relative(dstdir, srcpath) - } - } - } -} -module.exports = { - symlinkPaths, - symlinkPathsSync +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.createFileSystemAdapter = exports.FILE_SYSTEM_ADAPTER = void 0; +const fs = __nccwpck_require__(9896); +exports.FILE_SYSTEM_ADAPTER = { + lstat: fs.lstat, + stat: fs.stat, + lstatSync: fs.lstatSync, + statSync: fs.statSync +}; +function createFileSystemAdapter(fsMethods) { + if (fsMethods === undefined) { + return exports.FILE_SYSTEM_ADAPTER; + } + return Object.assign(Object.assign({}, exports.FILE_SYSTEM_ADAPTER), fsMethods); } +exports.createFileSystemAdapter = createFileSystemAdapter; /***/ }), -/***/ 87303: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +/***/ 1309: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.statSync = exports.stat = exports.Settings = void 0; +const async = __nccwpck_require__(9100); +const sync = __nccwpck_require__(4421); +const settings_1 = __nccwpck_require__(8448); +exports.Settings = settings_1.default; +function stat(path, optionsOrSettingsOrCallback, callback) { + if (typeof optionsOrSettingsOrCallback === 'function') { + async.read(path, getSettings(), optionsOrSettingsOrCallback); + return; + } + async.read(path, getSettings(optionsOrSettingsOrCallback), callback); +} +exports.stat = stat; +function statSync(path, optionsOrSettings) { + const settings = getSettings(optionsOrSettings); + return sync.read(path, settings); +} +exports.statSync = statSync; +function getSettings(settingsOrOptions = {}) { + if (settingsOrOptions instanceof settings_1.default) { + return settingsOrOptions; + } + return new settings_1.default(settingsOrOptions); +} -const fs = __nccwpck_require__(61404) -function symlinkType (srcpath, type, callback) { - callback = (typeof type === 'function') ? type : callback - type = (typeof type === 'function') ? false : type - if (type) return callback(null, type) - fs.lstat(srcpath, (err, stats) => { - if (err) return callback(null, 'file') - type = (stats && stats.isDirectory()) ? 'dir' : 'file' - callback(null, type) - }) -} +/***/ }), -function symlinkTypeSync (srcpath, type) { - let stats +/***/ 9100: +/***/ ((__unused_webpack_module, exports) => { - if (type) return type - try { - stats = fs.lstatSync(srcpath) - } catch (e) { - return 'file' - } - return (stats && stats.isDirectory()) ? 'dir' : 'file' -} -module.exports = { - symlinkType, - symlinkTypeSync +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.read = void 0; +function read(path, settings, callback) { + settings.fs.lstat(path, (lstatError, lstat) => { + if (lstatError !== null) { + callFailureCallback(callback, lstatError); + return; + } + if (!lstat.isSymbolicLink() || !settings.followSymbolicLink) { + callSuccessCallback(callback, lstat); + return; + } + settings.fs.stat(path, (statError, stat) => { + if (statError !== null) { + if (settings.throwErrorOnBrokenSymbolicLink) { + callFailureCallback(callback, statError); + return; + } + callSuccessCallback(callback, lstat); + return; + } + if (settings.markSymbolicLink) { + stat.isSymbolicLink = () => true; + } + callSuccessCallback(callback, stat); + }); + }); +} +exports.read = read; +function callFailureCallback(callback, error) { + callback(error); +} +function callSuccessCallback(callback, result) { + callback(null, result); } /***/ }), -/***/ 8318: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - +/***/ 4421: +/***/ ((__unused_webpack_module, exports) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const path = __nccwpck_require__(16928) -const fs = __nccwpck_require__(61404) -const _mkdirs = __nccwpck_require__(20559) -const mkdirs = _mkdirs.mkdirs -const mkdirsSync = _mkdirs.mkdirsSync +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.read = void 0; +function read(path, settings) { + const lstat = settings.fs.lstatSync(path); + if (!lstat.isSymbolicLink() || !settings.followSymbolicLink) { + return lstat; + } + try { + const stat = settings.fs.statSync(path); + if (settings.markSymbolicLink) { + stat.isSymbolicLink = () => true; + } + return stat; + } + catch (error) { + if (!settings.throwErrorOnBrokenSymbolicLink) { + return lstat; + } + throw error; + } +} +exports.read = read; -const _symlinkPaths = __nccwpck_require__(51923) -const symlinkPaths = _symlinkPaths.symlinkPaths -const symlinkPathsSync = _symlinkPaths.symlinkPathsSync -const _symlinkType = __nccwpck_require__(87303) -const symlinkType = _symlinkType.symlinkType -const symlinkTypeSync = _symlinkType.symlinkTypeSync +/***/ }), -const pathExists = (__nccwpck_require__(85615).pathExists) +/***/ 8448: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -function createSymlink (srcpath, dstpath, type, callback) { - callback = (typeof type === 'function') ? type : callback - type = (typeof type === 'function') ? false : type - pathExists(dstpath, (err, destinationExists) => { - if (err) return callback(err) - if (destinationExists) return callback(null) - symlinkPaths(srcpath, dstpath, (err, relative) => { - if (err) return callback(err) - srcpath = relative.toDst - symlinkType(relative.toCwd, type, (err, type) => { - if (err) return callback(err) - const dir = path.dirname(dstpath) - pathExists(dir, (err, dirExists) => { - if (err) return callback(err) - if (dirExists) return fs.symlink(srcpath, dstpath, type, callback) - mkdirs(dir, err => { - if (err) return callback(err) - fs.symlink(srcpath, dstpath, type, callback) - }) - }) - }) - }) - }) +Object.defineProperty(exports, "__esModule", ({ value: true })); +const fs = __nccwpck_require__(5375); +class Settings { + constructor(_options = {}) { + this._options = _options; + this.followSymbolicLink = this._getValue(this._options.followSymbolicLink, true); + this.fs = fs.createFileSystemAdapter(this._options.fs); + this.markSymbolicLink = this._getValue(this._options.markSymbolicLink, false); + this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, true); + } + _getValue(option, value) { + return option !== null && option !== void 0 ? option : value; + } } +exports["default"] = Settings; -function createSymlinkSync (srcpath, dstpath, type) { - const destinationExists = fs.existsSync(dstpath) - if (destinationExists) return undefined - const relative = symlinkPathsSync(srcpath, dstpath) - srcpath = relative.toDst - type = symlinkTypeSync(relative.toCwd, type) - const dir = path.dirname(dstpath) - const exists = fs.existsSync(dir) - if (exists) return fs.symlinkSync(srcpath, dstpath, type) - mkdirsSync(dir) - return fs.symlinkSync(srcpath, dstpath, type) -} +/***/ }), -module.exports = { - createSymlink: u(createSymlink), - createSymlinkSync +/***/ 8734: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { + + +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.Settings = exports.walkStream = exports.walkSync = exports.walk = void 0; +const async_1 = __nccwpck_require__(6200); +const stream_1 = __nccwpck_require__(2); +const sync_1 = __nccwpck_require__(6345); +const settings_1 = __nccwpck_require__(4668); +exports.Settings = settings_1.default; +function walk(directory, optionsOrSettingsOrCallback, callback) { + if (typeof optionsOrSettingsOrCallback === 'function') { + new async_1.default(directory, getSettings()).read(optionsOrSettingsOrCallback); + return; + } + new async_1.default(directory, getSettings(optionsOrSettingsOrCallback)).read(callback); +} +exports.walk = walk; +function walkSync(directory, optionsOrSettings) { + const settings = getSettings(optionsOrSettings); + const provider = new sync_1.default(directory, settings); + return provider.read(); +} +exports.walkSync = walkSync; +function walkStream(directory, optionsOrSettings) { + const settings = getSettings(optionsOrSettings); + const provider = new stream_1.default(directory, settings); + return provider.read(); +} +exports.walkStream = walkStream; +function getSettings(settingsOrOptions = {}) { + if (settingsOrOptions instanceof settings_1.default) { + return settingsOrOptions; + } + return new settings_1.default(settingsOrOptions); } /***/ }), -/***/ 93628: +/***/ 6200: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -// This is adapted from https://github.com/normalize/mz -// Copyright (c) 2014-2016 Jonathan Ong me@jongleberry.com and Contributors -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const fs = __nccwpck_require__(61404) +Object.defineProperty(exports, "__esModule", ({ value: true })); +const async_1 = __nccwpck_require__(8445); +class AsyncProvider { + constructor(_root, _settings) { + this._root = _root; + this._settings = _settings; + this._reader = new async_1.default(this._root, this._settings); + this._storage = []; + } + read(callback) { + this._reader.onError((error) => { + callFailureCallback(callback, error); + }); + this._reader.onEntry((entry) => { + this._storage.push(entry); + }); + this._reader.onEnd(() => { + callSuccessCallback(callback, this._storage); + }); + this._reader.read(); + } +} +exports["default"] = AsyncProvider; +function callFailureCallback(callback, error) { + callback(error); +} +function callSuccessCallback(callback, entries) { + callback(null, entries); +} -const api = [ - 'access', - 'appendFile', - 'chmod', - 'chown', - 'close', - 'copyFile', - 'fchmod', - 'fchown', - 'fdatasync', - 'fstat', - 'fsync', - 'ftruncate', - 'futimes', - 'lchown', - 'lchmod', - 'link', - 'lstat', - 'mkdir', - 'mkdtemp', - 'open', - 'readFile', - 'readdir', - 'readlink', - 'realpath', - 'rename', - 'rmdir', - 'stat', - 'symlink', - 'truncate', - 'unlink', - 'utimes', - 'writeFile' -].filter(key => { - // Some commands are not available on some systems. Ex: - // fs.copyFile was added in Node.js v8.5.0 - // fs.mkdtemp was added in Node.js v5.10.0 - // fs.lchown is not available on at least some Linux - return typeof fs[key] === 'function' -}) -// Export all keys: -Object.keys(fs).forEach(key => { - if (key === 'promises') { - // fs.promises is a getter property that triggers ExperimentalWarning - // Don't re-export it here, the getter is defined in "lib/index.js" - return - } - exports[key] = fs[key] -}) +/***/ }), -// Universalify async methods: -api.forEach(method => { - exports[method] = u(fs[method]) -}) +/***/ 2: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -// We differ from mz/fs in that we still ship the old, broken, fs.exists() -// since we are a drop-in replacement for the native module -exports.exists = function (filename, callback) { - if (typeof callback === 'function') { - return fs.exists(filename, callback) - } - return new Promise(resolve => { - return fs.exists(filename, resolve) - }) + +Object.defineProperty(exports, "__esModule", ({ value: true })); +const stream_1 = __nccwpck_require__(2203); +const async_1 = __nccwpck_require__(8445); +class StreamProvider { + constructor(_root, _settings) { + this._root = _root; + this._settings = _settings; + this._reader = new async_1.default(this._root, this._settings); + this._stream = new stream_1.Readable({ + objectMode: true, + read: () => { }, + destroy: () => { + if (!this._reader.isDestroyed) { + this._reader.destroy(); + } + } + }); + } + read() { + this._reader.onError((error) => { + this._stream.emit('error', error); + }); + this._reader.onEntry((entry) => { + this._stream.push(entry); + }); + this._reader.onEnd(() => { + this._stream.push(null); + }); + this._reader.read(); + return this._stream; + } } +exports["default"] = StreamProvider; -// fs.read() & fs.write need special treatment due to multiple callback args -exports.read = function (fd, buffer, offset, length, position, callback) { - if (typeof callback === 'function') { - return fs.read(fd, buffer, offset, length, position, callback) - } - return new Promise((resolve, reject) => { - fs.read(fd, buffer, offset, length, position, (err, bytesRead, buffer) => { - if (err) return reject(err) - resolve({ bytesRead, buffer }) - }) - }) -} +/***/ }), -// Function signature can be -// fs.write(fd, buffer[, offset[, length[, position]]], callback) -// OR -// fs.write(fd, string[, position[, encoding]], callback) -// We need to handle both cases, so we use ...args -exports.write = function (fd, buffer, ...args) { - if (typeof args[args.length - 1] === 'function') { - return fs.write(fd, buffer, ...args) - } +/***/ 6345: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - return new Promise((resolve, reject) => { - fs.write(fd, buffer, ...args, (err, bytesWritten, buffer) => { - if (err) return reject(err) - resolve({ bytesWritten, buffer }) - }) - }) -} -// fs.realpath.native only available in Node v9.2+ -if (typeof fs.realpath.native === 'function') { - exports.realpath.native = u(fs.realpath.native) +Object.defineProperty(exports, "__esModule", ({ value: true })); +const sync_1 = __nccwpck_require__(127); +class SyncProvider { + constructor(_root, _settings) { + this._root = _root; + this._settings = _settings; + this._reader = new sync_1.default(this._root, this._settings); + } + read() { + return this._reader.read(); + } } +exports["default"] = SyncProvider; /***/ }), -/***/ 97298: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - +/***/ 8445: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -module.exports = Object.assign( - {}, - // Export promiseified graceful-fs: - __nccwpck_require__(93628), - // Export extra methods: - __nccwpck_require__(52726), - __nccwpck_require__(61454), - __nccwpck_require__(50312), - __nccwpck_require__(70785), - __nccwpck_require__(5705), - __nccwpck_require__(20559), - __nccwpck_require__(96542), - __nccwpck_require__(59190), - __nccwpck_require__(76698), - __nccwpck_require__(85615), - __nccwpck_require__(75419) -) -// Export fs.promises as a getter property so that we don't trigger -// ExperimentalWarning before fs.promises is actually accessed. -const fs = __nccwpck_require__(79896) -if (Object.getOwnPropertyDescriptor(fs, 'promises')) { - Object.defineProperty(module.exports, "promises", ({ - get () { return fs.promises } - })) +Object.defineProperty(exports, "__esModule", ({ value: true })); +const events_1 = __nccwpck_require__(4434); +const fsScandir = __nccwpck_require__(1484); +const fastq = __nccwpck_require__(885); +const common = __nccwpck_require__(5305); +const reader_1 = __nccwpck_require__(2983); +class AsyncReader extends reader_1.default { + constructor(_root, _settings) { + super(_root, _settings); + this._settings = _settings; + this._scandir = fsScandir.scandir; + this._emitter = new events_1.EventEmitter(); + this._queue = fastq(this._worker.bind(this), this._settings.concurrency); + this._isFatalError = false; + this._isDestroyed = false; + this._queue.drain = () => { + if (!this._isFatalError) { + this._emitter.emit('end'); + } + }; + } + read() { + this._isFatalError = false; + this._isDestroyed = false; + setImmediate(() => { + this._pushToQueue(this._root, this._settings.basePath); + }); + return this._emitter; + } + get isDestroyed() { + return this._isDestroyed; + } + destroy() { + if (this._isDestroyed) { + throw new Error('The reader is already destroyed'); + } + this._isDestroyed = true; + this._queue.killAndDrain(); + } + onEntry(callback) { + this._emitter.on('entry', callback); + } + onError(callback) { + this._emitter.once('error', callback); + } + onEnd(callback) { + this._emitter.once('end', callback); + } + _pushToQueue(directory, base) { + const queueItem = { directory, base }; + this._queue.push(queueItem, (error) => { + if (error !== null) { + this._handleError(error); + } + }); + } + _worker(item, done) { + this._scandir(item.directory, this._settings.fsScandirSettings, (error, entries) => { + if (error !== null) { + done(error, undefined); + return; + } + for (const entry of entries) { + this._handleEntry(entry, item.base); + } + done(null, undefined); + }); + } + _handleError(error) { + if (this._isDestroyed || !common.isFatalError(this._settings, error)) { + return; + } + this._isFatalError = true; + this._isDestroyed = true; + this._emitter.emit('error', error); + } + _handleEntry(entry, base) { + if (this._isDestroyed || this._isFatalError) { + return; + } + const fullpath = entry.path; + if (base !== undefined) { + entry.path = common.joinPathSegments(base, entry.name, this._settings.pathSegmentSeparator); + } + if (common.isAppliedFilter(this._settings.entryFilter, entry)) { + this._emitEntry(entry); + } + if (entry.dirent.isDirectory() && common.isAppliedFilter(this._settings.deepFilter, entry)) { + this._pushToQueue(fullpath, base === undefined ? undefined : entry.path); + } + } + _emitEntry(entry) { + this._emitter.emit('entry', entry); + } } +exports["default"] = AsyncReader; /***/ }), -/***/ 5705: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +/***/ 5305: +/***/ ((__unused_webpack_module, exports) => { +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.joinPathSegments = exports.replacePathSegmentSeparator = exports.isAppliedFilter = exports.isFatalError = void 0; +function isFatalError(settings, error) { + if (settings.errorFilter === null) { + return true; + } + return !settings.errorFilter(error); +} +exports.isFatalError = isFatalError; +function isAppliedFilter(filter, value) { + return filter === null || filter(value); +} +exports.isAppliedFilter = isAppliedFilter; +function replacePathSegmentSeparator(filepath, separator) { + return filepath.split(/[/\\]/).join(separator); +} +exports.replacePathSegmentSeparator = replacePathSegmentSeparator; +function joinPathSegments(a, b, separator) { + if (a === '') { + return b; + } + /** + * The correct handling of cases when the first segment is a root (`/`, `C:/`) or UNC path (`//?/C:/`). + */ + if (a.endsWith(separator)) { + return a + b; + } + return a + separator + b; +} +exports.joinPathSegments = joinPathSegments; -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const jsonFile = __nccwpck_require__(53373) -jsonFile.outputJson = u(__nccwpck_require__(50859)) -jsonFile.outputJsonSync = __nccwpck_require__(29083) -// aliases -jsonFile.outputJSON = jsonFile.outputJson -jsonFile.outputJSONSync = jsonFile.outputJsonSync -jsonFile.writeJSON = jsonFile.writeJson -jsonFile.writeJSONSync = jsonFile.writeJsonSync -jsonFile.readJSON = jsonFile.readJson -jsonFile.readJSONSync = jsonFile.readJsonSync +/***/ }), -module.exports = jsonFile +/***/ 2983: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -/***/ }), +Object.defineProperty(exports, "__esModule", ({ value: true })); +const common = __nccwpck_require__(5305); +class Reader { + constructor(_root, _settings) { + this._root = _root; + this._settings = _settings; + this._root = common.replacePathSegmentSeparator(_root, _settings.pathSegmentSeparator); + } +} +exports["default"] = Reader; -/***/ 53373: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +/***/ }), +/***/ 127: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const jsonFile = __nccwpck_require__(93588) -module.exports = { - // jsonfile exports - readJson: u(jsonFile.readFile), - readJsonSync: jsonFile.readFileSync, - writeJson: u(jsonFile.writeFile), - writeJsonSync: jsonFile.writeFileSync +Object.defineProperty(exports, "__esModule", ({ value: true })); +const fsScandir = __nccwpck_require__(1484); +const common = __nccwpck_require__(5305); +const reader_1 = __nccwpck_require__(2983); +class SyncReader extends reader_1.default { + constructor() { + super(...arguments); + this._scandir = fsScandir.scandirSync; + this._storage = []; + this._queue = new Set(); + } + read() { + this._pushToQueue(this._root, this._settings.basePath); + this._handleQueue(); + return this._storage; + } + _pushToQueue(directory, base) { + this._queue.add({ directory, base }); + } + _handleQueue() { + for (const item of this._queue.values()) { + this._handleDirectory(item.directory, item.base); + } + } + _handleDirectory(directory, base) { + try { + const entries = this._scandir(directory, this._settings.fsScandirSettings); + for (const entry of entries) { + this._handleEntry(entry, base); + } + } + catch (error) { + this._handleError(error); + } + } + _handleError(error) { + if (!common.isFatalError(this._settings, error)) { + return; + } + throw error; + } + _handleEntry(entry, base) { + const fullpath = entry.path; + if (base !== undefined) { + entry.path = common.joinPathSegments(base, entry.name, this._settings.pathSegmentSeparator); + } + if (common.isAppliedFilter(this._settings.entryFilter, entry)) { + this._pushToStorage(entry); + } + if (entry.dirent.isDirectory() && common.isAppliedFilter(this._settings.deepFilter, entry)) { + this._pushToQueue(fullpath, base === undefined ? undefined : entry.path); + } + } + _pushToStorage(entry) { + this._storage.push(entry); + } } +exports["default"] = SyncReader; /***/ }), -/***/ 29083: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +/***/ 4668: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { + +Object.defineProperty(exports, "__esModule", ({ value: true })); +const path = __nccwpck_require__(6928); +const fsScandir = __nccwpck_require__(1484); +class Settings { + constructor(_options = {}) { + this._options = _options; + this.basePath = this._getValue(this._options.basePath, undefined); + this.concurrency = this._getValue(this._options.concurrency, Number.POSITIVE_INFINITY); + this.deepFilter = this._getValue(this._options.deepFilter, null); + this.entryFilter = this._getValue(this._options.entryFilter, null); + this.errorFilter = this._getValue(this._options.errorFilter, null); + this.pathSegmentSeparator = this._getValue(this._options.pathSegmentSeparator, path.sep); + this.fsScandirSettings = new fsScandir.Settings({ + followSymbolicLinks: this._options.followSymbolicLinks, + fs: this._options.fs, + pathSegmentSeparator: this._options.pathSegmentSeparator, + stats: this._options.stats, + throwErrorOnBrokenSymbolicLink: this._options.throwErrorOnBrokenSymbolicLink + }); + } + _getValue(option, value) { + return option !== null && option !== void 0 ? option : value; + } +} +exports["default"] = Settings; -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const mkdir = __nccwpck_require__(20559) -const jsonFile = __nccwpck_require__(53373) +/***/ }), -function outputJsonSync (file, data, options) { - const dir = path.dirname(file) +/***/ 7049: +/***/ ((module) => { - if (!fs.existsSync(dir)) { - mkdir.mkdirsSync(dir) - } - jsonFile.writeJsonSync(file, data, options) -} -module.exports = outputJsonSync +module.exports = (...arguments_) => { + return [...new Set([].concat(...arguments_))]; +}; /***/ }), -/***/ 50859: +/***/ 6916: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +const path = __nccwpck_require__(6928) +const isWindows = __nccwpck_require__(434) -const path = __nccwpck_require__(16928) -const mkdir = __nccwpck_require__(20559) -const pathExists = (__nccwpck_require__(85615).pathExists) -const jsonFile = __nccwpck_require__(53373) +module.exports = isWindows() ? winResolve : path.resolve -function outputJson (file, data, options, callback) { - if (typeof options === 'function') { - callback = options - options = {} - } +function winResolve (p) { + if (arguments.length === 0) return path.resolve() + if (typeof p !== 'string') { + return path.resolve(p) + } + // c: => C: + if (p[1] === ':') { + const cc = p[0].charCodeAt() + if (cc < 65 || cc > 90) { + p = `${p[0].toUpperCase()}${p.substr(1)}` + } + } + // On Windows path.resolve('C:') returns C:\Users\ + // We resolve C: to C: + if (p.endsWith(':')) { + return p + } + return path.resolve(p) +} - const dir = path.dirname(file) - pathExists(dir, (err, itDoes) => { - if (err) return callback(err) - if (itDoes) return jsonFile.writeJson(file, data, options, callback) +/***/ }), - mkdir.mkdirs(dir, err => { - if (err) return callback(err) - jsonFile.writeJson(file, data, options, callback) - }) - }) -} +/***/ 8671: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -module.exports = outputJson -/***/ }), +const stringify = __nccwpck_require__(3062); +const compile = __nccwpck_require__(4898); +const expand = __nccwpck_require__(5331); +const parse = __nccwpck_require__(7787); -/***/ 20559: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +/** + * Expand the given pattern or create a regex-compatible string. + * + * ```js + * const braces = require('braces'); + * console.log(braces('{a,b,c}', { compile: true })); //=> ['(a|b|c)'] + * console.log(braces('{a,b,c}')); //=> ['a', 'b', 'c'] + * ``` + * @param {String} `str` + * @param {Object} `options` + * @return {String} + * @api public + */ +const braces = (input, options = {}) => { + let output = []; -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const mkdirs = u(__nccwpck_require__(80515)) -const mkdirsSync = __nccwpck_require__(36275) + if (Array.isArray(input)) { + for (const pattern of input) { + const result = braces.create(pattern, options); + if (Array.isArray(result)) { + output.push(...result); + } else { + output.push(result); + } + } + } else { + output = [].concat(braces.create(input, options)); + } -module.exports = { - mkdirs, - mkdirsSync, - // alias - mkdirp: mkdirs, - mkdirpSync: mkdirsSync, - ensureDir: mkdirs, - ensureDirSync: mkdirsSync -} + if (options && options.expand === true && options.nodupes === true) { + output = [...new Set(output)]; + } + return output; +}; +/** + * Parse the given `str` with the given `options`. + * + * ```js + * // braces.parse(pattern, [, options]); + * const ast = braces.parse('a/{b,c}/d'); + * console.log(ast); + * ``` + * @param {String} pattern Brace pattern to parse + * @param {Object} options + * @return {Object} Returns an AST + * @api public + */ -/***/ }), +braces.parse = (input, options = {}) => parse(input, options); -/***/ 36275: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +/** + * Creates a braces string from an AST, or an AST node. + * + * ```js + * const braces = require('braces'); + * let ast = braces.parse('foo/{a,b}/bar'); + * console.log(stringify(ast.nodes[2])); //=> '{a,b}' + * ``` + * @param {String} `input` Brace pattern or AST. + * @param {Object} `options` + * @return {Array} Returns an array of expanded values. + * @api public + */ +braces.stringify = (input, options = {}) => { + if (typeof input === 'string') { + return stringify(braces.parse(input, options), options); + } + return stringify(input, options); +}; +/** + * Compiles a brace pattern into a regex-compatible, optimized string. + * This method is called by the main [braces](#braces) function by default. + * + * ```js + * const braces = require('braces'); + * console.log(braces.compile('a/{b,c}/d')); + * //=> ['a/(b|c)/d'] + * ``` + * @param {String} `input` Brace pattern or AST. + * @param {Object} `options` + * @return {Array} Returns an array of expanded values. + * @api public + */ -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const invalidWin32Path = (__nccwpck_require__(59672).invalidWin32Path) +braces.compile = (input, options = {}) => { + if (typeof input === 'string') { + input = braces.parse(input, options); + } + return compile(input, options); +}; -const o777 = parseInt('0777', 8) +/** + * Expands a brace pattern into an array. This method is called by the + * main [braces](#braces) function when `options.expand` is true. Before + * using this method it's recommended that you read the [performance notes](#performance)) + * and advantages of using [.compile](#compile) instead. + * + * ```js + * const braces = require('braces'); + * console.log(braces.expand('a/{b,c}/d')); + * //=> ['a/b/d', 'a/c/d']; + * ``` + * @param {String} `pattern` Brace pattern + * @param {Object} `options` + * @return {Array} Returns an array of expanded values. + * @api public + */ -function mkdirsSync (p, opts, made) { - if (!opts || typeof opts !== 'object') { - opts = { mode: opts } +braces.expand = (input, options = {}) => { + if (typeof input === 'string') { + input = braces.parse(input, options); } - let mode = opts.mode - const xfs = opts.fs || fs + let result = expand(input, options); - if (process.platform === 'win32' && invalidWin32Path(p)) { - const errInval = new Error(p + ' contains invalid WIN32 path characters.') - errInval.code = 'EINVAL' - throw errInval + // filter out empty strings if specified + if (options.noempty === true) { + result = result.filter(Boolean); } - if (mode === undefined) { - mode = o777 & (~process.umask()) + // filter out duplicates if specified + if (options.nodupes === true) { + result = [...new Set(result)]; } - if (!made) made = null - p = path.resolve(p) + return result; +}; - try { - xfs.mkdirSync(p, mode) - made = made || p - } catch (err0) { - if (err0.code === 'ENOENT') { - if (path.dirname(p) === p) throw err0 - made = mkdirsSync(path.dirname(p), opts, made) - mkdirsSync(p, opts, made) - } else { - // In the case of any other error, just see if there's a dir there - // already. If so, then hooray! If not, then something is borked. - let stat - try { - stat = xfs.statSync(p) - } catch (err1) { - throw err0 - } - if (!stat.isDirectory()) throw err0 - } +/** + * Processes a brace pattern and returns either an expanded array + * (if `options.expand` is true), a highly optimized regex-compatible string. + * This method is called by the main [braces](#braces) function. + * + * ```js + * const braces = require('braces'); + * console.log(braces.create('user-{200..300}/project-{a,b,c}-{1..10}')) + * //=> 'user-(20[0-9]|2[1-9][0-9]|300)/project-(a|b|c)-([1-9]|10)' + * ``` + * @param {String} `pattern` Brace pattern + * @param {Object} `options` + * @return {Array} Returns an array of expanded values. + * @api public + */ + +braces.create = (input, options = {}) => { + if (input === '' || input.length < 3) { + return [input]; } - return made -} + return options.expand !== true + ? braces.compile(input, options) + : braces.expand(input, options); +}; -module.exports = mkdirsSync +/** + * Expose "braces" + */ + +module.exports = braces; /***/ }), -/***/ 80515: +/***/ 4898: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const invalidWin32Path = (__nccwpck_require__(59672).invalidWin32Path) - -const o777 = parseInt('0777', 8) +const fill = __nccwpck_require__(9730); +const utils = __nccwpck_require__(2474); -function mkdirs (p, opts, callback, made) { - if (typeof opts === 'function') { - callback = opts - opts = {} - } else if (!opts || typeof opts !== 'object') { - opts = { mode: opts } - } +const compile = (ast, options = {}) => { + const walk = (node, parent = {}) => { + const invalidBlock = utils.isInvalidBrace(parent); + const invalidNode = node.invalid === true && options.escapeInvalid === true; + const invalid = invalidBlock === true || invalidNode === true; + const prefix = options.escapeInvalid === true ? '\\' : ''; + let output = ''; - if (process.platform === 'win32' && invalidWin32Path(p)) { - const errInval = new Error(p + ' contains invalid WIN32 path characters.') - errInval.code = 'EINVAL' - return callback(errInval) - } + if (node.isOpen === true) { + return prefix + node.value; + } - let mode = opts.mode - const xfs = opts.fs || fs + if (node.isClose === true) { + console.log('node.isClose', prefix, node.value); + return prefix + node.value; + } - if (mode === undefined) { - mode = o777 & (~process.umask()) - } - if (!made) made = null + if (node.type === 'open') { + return invalid ? prefix + node.value : '('; + } - callback = callback || function () {} - p = path.resolve(p) + if (node.type === 'close') { + return invalid ? prefix + node.value : ')'; + } - xfs.mkdir(p, mode, er => { - if (!er) { - made = made || p - return callback(null, made) + if (node.type === 'comma') { + return node.prev.type === 'comma' ? '' : invalid ? node.value : '|'; } - switch (er.code) { - case 'ENOENT': - if (path.dirname(p) === p) return callback(er) - mkdirs(path.dirname(p), opts, (er, made) => { - if (er) callback(er, made) - else mkdirs(p, opts, callback, made) - }) - break - // In the case of any other error, just see if there's a dir - // there already. If so, then hooray! If not, then something - // is borked. - default: - xfs.stat(p, (er2, stat) => { - // if the stat fails, then that's super weird. - // let the original error be the failure reason. - if (er2 || !stat.isDirectory()) callback(er, made) - else callback(null, made) - }) - break + if (node.value) { + return node.value; } - }) -} -module.exports = mkdirs + if (node.nodes && node.ranges > 0) { + const args = utils.reduce(node.nodes); + const range = fill(...args, { ...options, wrap: false, toRegex: true, strictZeros: true }); + if (range.length !== 0) { + return args.length > 1 && range.length > 1 ? `(${range})` : range; + } + } -/***/ }), + if (node.nodes) { + for (const child of node.nodes) { + output += walk(child, node); + } + } -/***/ 59672: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + return output; + }; + return walk(ast); +}; +module.exports = compile; -const path = __nccwpck_require__(16928) -// get drive on windows -function getRootPath (p) { - p = path.normalize(path.resolve(p)).split(path.sep) - if (p.length > 0) return p[0] - return null -} +/***/ }), -// http://stackoverflow.com/a/62888/10333 contains more accurate -// TODO: expand to include the rest -const INVALID_PATH_CHARS = /[<>:"|?*]/ +/***/ 9397: +/***/ ((module) => { -function invalidWin32Path (p) { - const rp = getRootPath(p) - p = p.replace(rp, '') - return INVALID_PATH_CHARS.test(p) -} -module.exports = { - getRootPath, - invalidWin32Path -} +module.exports = { + MAX_LENGTH: 10000, -/***/ }), + // Digits + CHAR_0: '0', /* 0 */ + CHAR_9: '9', /* 9 */ -/***/ 96542: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + // Alphabet chars. + CHAR_UPPERCASE_A: 'A', /* A */ + CHAR_LOWERCASE_A: 'a', /* a */ + CHAR_UPPERCASE_Z: 'Z', /* Z */ + CHAR_LOWERCASE_Z: 'z', /* z */ + CHAR_LEFT_PARENTHESES: '(', /* ( */ + CHAR_RIGHT_PARENTHESES: ')', /* ) */ + CHAR_ASTERISK: '*', /* * */ -module.exports = { - moveSync: __nccwpck_require__(38345) -} + // Non-alphabetic chars. + CHAR_AMPERSAND: '&', /* & */ + CHAR_AT: '@', /* @ */ + CHAR_BACKSLASH: '\\', /* \ */ + CHAR_BACKTICK: '`', /* ` */ + CHAR_CARRIAGE_RETURN: '\r', /* \r */ + CHAR_CIRCUMFLEX_ACCENT: '^', /* ^ */ + CHAR_COLON: ':', /* : */ + CHAR_COMMA: ',', /* , */ + CHAR_DOLLAR: '$', /* . */ + CHAR_DOT: '.', /* . */ + CHAR_DOUBLE_QUOTE: '"', /* " */ + CHAR_EQUAL: '=', /* = */ + CHAR_EXCLAMATION_MARK: '!', /* ! */ + CHAR_FORM_FEED: '\f', /* \f */ + CHAR_FORWARD_SLASH: '/', /* / */ + CHAR_HASH: '#', /* # */ + CHAR_HYPHEN_MINUS: '-', /* - */ + CHAR_LEFT_ANGLE_BRACKET: '<', /* < */ + CHAR_LEFT_CURLY_BRACE: '{', /* { */ + CHAR_LEFT_SQUARE_BRACKET: '[', /* [ */ + CHAR_LINE_FEED: '\n', /* \n */ + CHAR_NO_BREAK_SPACE: '\u00A0', /* \u00A0 */ + CHAR_PERCENT: '%', /* % */ + CHAR_PLUS: '+', /* + */ + CHAR_QUESTION_MARK: '?', /* ? */ + CHAR_RIGHT_ANGLE_BRACKET: '>', /* > */ + CHAR_RIGHT_CURLY_BRACE: '}', /* } */ + CHAR_RIGHT_SQUARE_BRACKET: ']', /* ] */ + CHAR_SEMICOLON: ';', /* ; */ + CHAR_SINGLE_QUOTE: '\'', /* ' */ + CHAR_SPACE: ' ', /* */ + CHAR_TAB: '\t', /* \t */ + CHAR_UNDERSCORE: '_', /* _ */ + CHAR_VERTICAL_LINE: '|', /* | */ + CHAR_ZERO_WIDTH_NOBREAK_SPACE: '\uFEFF' /* \uFEFF */ +}; /***/ }), -/***/ 38345: +/***/ 5331: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const copySync = (__nccwpck_require__(52726).copySync) -const removeSync = (__nccwpck_require__(75419).removeSync) -const mkdirpSync = (__nccwpck_require__(20559).mkdirpSync) -const stat = __nccwpck_require__(76821) +const fill = __nccwpck_require__(9730); +const stringify = __nccwpck_require__(3062); +const utils = __nccwpck_require__(2474); -function moveSync (src, dest, opts) { - opts = opts || {} - const overwrite = opts.overwrite || opts.clobber || false +const append = (queue = '', stash = '', enclose = false) => { + const result = []; - const { srcStat } = stat.checkPathsSync(src, dest, 'move') - stat.checkParentPathsSync(src, srcStat, dest, 'move') - mkdirpSync(path.dirname(dest)) - return doRename(src, dest, overwrite) -} + queue = [].concat(queue); + stash = [].concat(stash); -function doRename (src, dest, overwrite) { - if (overwrite) { - removeSync(dest) - return rename(src, dest, overwrite) + if (!stash.length) return queue; + if (!queue.length) { + return enclose ? utils.flatten(stash).map(ele => `{${ele}}`) : stash; } - if (fs.existsSync(dest)) throw new Error('dest already exists.') - return rename(src, dest, overwrite) -} -function rename (src, dest, overwrite) { - try { - fs.renameSync(src, dest) - } catch (err) { - if (err.code !== 'EXDEV') throw err - return moveAcrossDevice(src, dest, overwrite) + for (const item of queue) { + if (Array.isArray(item)) { + for (const value of item) { + result.push(append(value, stash, enclose)); + } + } else { + for (let ele of stash) { + if (enclose === true && typeof ele === 'string') ele = `{${ele}}`; + result.push(Array.isArray(ele) ? append(item, ele, enclose) : item + ele); + } + } } -} + return utils.flatten(result); +}; -function moveAcrossDevice (src, dest, overwrite) { - const opts = { - overwrite, - errorOnExist: true - } - copySync(src, dest, opts) - return removeSync(src) -} +const expand = (ast, options = {}) => { + const rangeLimit = options.rangeLimit === undefined ? 1000 : options.rangeLimit; -module.exports = moveSync + const walk = (node, parent = {}) => { + node.queue = []; + let p = parent; + let q = parent.queue; -/***/ }), + while (p.type !== 'brace' && p.type !== 'root' && p.parent) { + p = p.parent; + q = p.queue; + } -/***/ 59190: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if (node.invalid || node.dollar) { + q.push(append(q.pop(), stringify(node, options))); + return; + } + if (node.type === 'brace' && node.invalid !== true && node.nodes.length === 2) { + q.push(append(q.pop(), ['{}'])); + return; + } + if (node.nodes && node.ranges > 0) { + const args = utils.reduce(node.nodes); -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -module.exports = { - move: u(__nccwpck_require__(15569)) -} + if (utils.exceedsLimit(...args, options.step, rangeLimit)) { + throw new RangeError('expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.'); + } + let range = fill(...args, options); + if (range.length === 0) { + range = stringify(node, options); + } -/***/ }), + q.push(append(q.pop(), range)); + node.nodes = []; + return; + } -/***/ 15569: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + const enclose = utils.encloseBrace(node); + let queue = node.queue; + let block = node; + while (block.type !== 'brace' && block.type !== 'root' && block.parent) { + block = block.parent; + queue = block.queue; + } + for (let i = 0; i < node.nodes.length; i++) { + const child = node.nodes[i]; -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const copy = (__nccwpck_require__(61454).copy) -const remove = (__nccwpck_require__(75419).remove) -const mkdirp = (__nccwpck_require__(20559).mkdirp) -const pathExists = (__nccwpck_require__(85615).pathExists) -const stat = __nccwpck_require__(76821) + if (child.type === 'comma' && node.type === 'brace') { + if (i === 1) queue.push(''); + queue.push(''); + continue; + } -function move (src, dest, opts, cb) { - if (typeof opts === 'function') { - cb = opts - opts = {} - } + if (child.type === 'close') { + q.push(append(q.pop(), queue, enclose)); + continue; + } - const overwrite = opts.overwrite || opts.clobber || false + if (child.value && child.type !== 'open') { + queue.push(append(queue.pop(), child.value)); + continue; + } - stat.checkPaths(src, dest, 'move', (err, stats) => { - if (err) return cb(err) - const { srcStat } = stats - stat.checkParentPaths(src, srcStat, dest, 'move', err => { - if (err) return cb(err) - mkdirp(path.dirname(dest), err => { - if (err) return cb(err) - return doRename(src, dest, overwrite, cb) - }) - }) - }) -} - -function doRename (src, dest, overwrite, cb) { - if (overwrite) { - return remove(dest, err => { - if (err) return cb(err) - return rename(src, dest, overwrite, cb) - }) - } - pathExists(dest, (err, destExists) => { - if (err) return cb(err) - if (destExists) return cb(new Error('dest already exists.')) - return rename(src, dest, overwrite, cb) - }) -} + if (child.nodes) { + walk(child, node); + } + } -function rename (src, dest, overwrite, cb) { - fs.rename(src, dest, err => { - if (!err) return cb() - if (err.code !== 'EXDEV') return cb(err) - return moveAcrossDevice(src, dest, overwrite, cb) - }) -} + return queue; + }; -function moveAcrossDevice (src, dest, overwrite, cb) { - const opts = { - overwrite, - errorOnExist: true - } - copy(src, dest, opts, err => { - if (err) return cb(err) - return remove(src, cb) - }) -} + return utils.flatten(walk(ast)); +}; -module.exports = move +module.exports = expand; /***/ }), -/***/ 76698: +/***/ 7787: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const mkdir = __nccwpck_require__(20559) -const pathExists = (__nccwpck_require__(85615).pathExists) - -function outputFile (file, data, encoding, callback) { - if (typeof encoding === 'function') { - callback = encoding - encoding = 'utf8' - } +const stringify = __nccwpck_require__(3062); - const dir = path.dirname(file) - pathExists(dir, (err, itDoes) => { - if (err) return callback(err) - if (itDoes) return fs.writeFile(file, data, encoding, callback) +/** + * Constants + */ - mkdir.mkdirs(dir, err => { - if (err) return callback(err) +const { + MAX_LENGTH, + CHAR_BACKSLASH, /* \ */ + CHAR_BACKTICK, /* ` */ + CHAR_COMMA, /* , */ + CHAR_DOT, /* . */ + CHAR_LEFT_PARENTHESES, /* ( */ + CHAR_RIGHT_PARENTHESES, /* ) */ + CHAR_LEFT_CURLY_BRACE, /* { */ + CHAR_RIGHT_CURLY_BRACE, /* } */ + CHAR_LEFT_SQUARE_BRACKET, /* [ */ + CHAR_RIGHT_SQUARE_BRACKET, /* ] */ + CHAR_DOUBLE_QUOTE, /* " */ + CHAR_SINGLE_QUOTE, /* ' */ + CHAR_NO_BREAK_SPACE, + CHAR_ZERO_WIDTH_NOBREAK_SPACE +} = __nccwpck_require__(9397); - fs.writeFile(file, data, encoding, callback) - }) - }) -} +/** + * parse + */ -function outputFileSync (file, ...args) { - const dir = path.dirname(file) - if (fs.existsSync(dir)) { - return fs.writeFileSync(file, ...args) +const parse = (input, options = {}) => { + if (typeof input !== 'string') { + throw new TypeError('Expected a string'); } - mkdir.mkdirsSync(dir) - fs.writeFileSync(file, ...args) -} -module.exports = { - outputFile: u(outputFile), - outputFileSync -} + const opts = options || {}; + const max = typeof opts.maxLength === 'number' ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH; + if (input.length > max) { + throw new SyntaxError(`Input length (${input.length}), exceeds max characters (${max})`); + } + const ast = { type: 'root', input, nodes: [] }; + const stack = [ast]; + let block = ast; + let prev = ast; + let brackets = 0; + const length = input.length; + let index = 0; + let depth = 0; + let value; -/***/ }), + /** + * Helpers + */ -/***/ 85615: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + const advance = () => input[index++]; + const push = node => { + if (node.type === 'text' && prev.type === 'dot') { + prev.type = 'text'; + } + if (prev && prev.type === 'text' && node.type === 'text') { + prev.value += node.value; + return; + } -const u = (__nccwpck_require__(92977)/* .fromPromise */ .z) -const fs = __nccwpck_require__(93628) + block.nodes.push(node); + node.parent = block; + node.prev = prev; + prev = node; + return node; + }; -function pathExists (path) { - return fs.access(path).then(() => true).catch(() => false) -} + push({ type: 'bos' }); -module.exports = { - pathExists: u(pathExists), - pathExistsSync: fs.existsSync -} + while (index < length) { + block = stack[stack.length - 1]; + value = advance(); + /** + * Invalid chars + */ -/***/ }), + if (value === CHAR_ZERO_WIDTH_NOBREAK_SPACE || value === CHAR_NO_BREAK_SPACE) { + continue; + } -/***/ 75419: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + /** + * Escaped chars + */ + if (value === CHAR_BACKSLASH) { + push({ type: 'text', value: (options.keepEscaping ? value : '') + advance() }); + continue; + } + /** + * Right square bracket (literal): ']' + */ -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const rimraf = __nccwpck_require__(82058) + if (value === CHAR_RIGHT_SQUARE_BRACKET) { + push({ type: 'text', value: '\\' + value }); + continue; + } -module.exports = { - remove: u(rimraf), - removeSync: rimraf.sync -} + /** + * Left square bracket: '[' + */ + if (value === CHAR_LEFT_SQUARE_BRACKET) { + brackets++; -/***/ }), + let next; -/***/ 82058: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + while (index < length && (next = advance())) { + value += next; + if (next === CHAR_LEFT_SQUARE_BRACKET) { + brackets++; + continue; + } + if (next === CHAR_BACKSLASH) { + value += advance(); + continue; + } -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const assert = __nccwpck_require__(42613) + if (next === CHAR_RIGHT_SQUARE_BRACKET) { + brackets--; -const isWindows = (process.platform === 'win32') + if (brackets === 0) { + break; + } + } + } -function defaults (options) { - const methods = [ - 'unlink', - 'chmod', - 'stat', - 'lstat', - 'rmdir', - 'readdir' - ] - methods.forEach(m => { - options[m] = options[m] || fs[m] - m = m + 'Sync' - options[m] = options[m] || fs[m] - }) + push({ type: 'text', value }); + continue; + } - options.maxBusyTries = options.maxBusyTries || 3 -} + /** + * Parentheses + */ -function rimraf (p, options, cb) { - let busyTries = 0 + if (value === CHAR_LEFT_PARENTHESES) { + block = push({ type: 'paren', nodes: [] }); + stack.push(block); + push({ type: 'text', value }); + continue; + } - if (typeof options === 'function') { - cb = options - options = {} - } + if (value === CHAR_RIGHT_PARENTHESES) { + if (block.type !== 'paren') { + push({ type: 'text', value }); + continue; + } + block = stack.pop(); + push({ type: 'text', value }); + block = stack[stack.length - 1]; + continue; + } - assert(p, 'rimraf: missing path') - assert.strictEqual(typeof p, 'string', 'rimraf: path should be a string') - assert.strictEqual(typeof cb, 'function', 'rimraf: callback function required') - assert(options, 'rimraf: invalid options argument provided') - assert.strictEqual(typeof options, 'object', 'rimraf: options should be object') + /** + * Quotes: '|"|` + */ - defaults(options) + if (value === CHAR_DOUBLE_QUOTE || value === CHAR_SINGLE_QUOTE || value === CHAR_BACKTICK) { + const open = value; + let next; - rimraf_(p, options, function CB (er) { - if (er) { - if ((er.code === 'EBUSY' || er.code === 'ENOTEMPTY' || er.code === 'EPERM') && - busyTries < options.maxBusyTries) { - busyTries++ - const time = busyTries * 100 - // try again, with the same exact callback as this one. - return setTimeout(() => rimraf_(p, options, CB), time) + if (options.keepQuotes !== true) { + value = ''; } - // already gone - if (er.code === 'ENOENT') er = null - } - - cb(er) - }) -} + while (index < length && (next = advance())) { + if (next === CHAR_BACKSLASH) { + value += next + advance(); + continue; + } -// Two possible strategies. -// 1. Assume it's a file. unlink it, then do the dir stuff on EPERM or EISDIR -// 2. Assume it's a directory. readdir, then do the file stuff on ENOTDIR -// -// Both result in an extra syscall when you guess wrong. However, there -// are likely far more normal files in the world than directories. This -// is based on the assumption that a the average number of files per -// directory is >= 1. -// -// If anyone ever complains about this, then I guess the strategy could -// be made configurable somehow. But until then, YAGNI. -function rimraf_ (p, options, cb) { - assert(p) - assert(options) - assert(typeof cb === 'function') + if (next === open) { + if (options.keepQuotes === true) value += next; + break; + } - // sunos lets the root user unlink directories, which is... weird. - // so we have to lstat here and make sure it's not a dir. - options.lstat(p, (er, st) => { - if (er && er.code === 'ENOENT') { - return cb(null) - } + value += next; + } - // Windows can EPERM on stat. Life is suffering. - if (er && er.code === 'EPERM' && isWindows) { - return fixWinEPERM(p, options, er, cb) + push({ type: 'text', value }); + continue; } - if (st && st.isDirectory()) { - return rmdir(p, options, er, cb) - } + /** + * Left curly brace: '{' + */ - options.unlink(p, er => { - if (er) { - if (er.code === 'ENOENT') { - return cb(null) - } - if (er.code === 'EPERM') { - return (isWindows) - ? fixWinEPERM(p, options, er, cb) - : rmdir(p, options, er, cb) - } - if (er.code === 'EISDIR') { - return rmdir(p, options, er, cb) - } - } - return cb(er) - }) - }) -} + if (value === CHAR_LEFT_CURLY_BRACE) { + depth++; -function fixWinEPERM (p, options, er, cb) { - assert(p) - assert(options) - assert(typeof cb === 'function') - if (er) { - assert(er instanceof Error) - } + const dollar = prev.value && prev.value.slice(-1) === '$' || block.dollar === true; + const brace = { + type: 'brace', + open: true, + close: false, + dollar, + depth, + commas: 0, + ranges: 0, + nodes: [] + }; - options.chmod(p, 0o666, er2 => { - if (er2) { - cb(er2.code === 'ENOENT' ? null : er) - } else { - options.stat(p, (er3, stats) => { - if (er3) { - cb(er3.code === 'ENOENT' ? null : er) - } else if (stats.isDirectory()) { - rmdir(p, options, er, cb) - } else { - options.unlink(p, cb) - } - }) + block = push(brace); + stack.push(block); + push({ type: 'open', value }); + continue; } - }) -} -function fixWinEPERMSync (p, options, er) { - let stats + /** + * Right curly brace: '}' + */ - assert(p) - assert(options) - if (er) { - assert(er instanceof Error) - } + if (value === CHAR_RIGHT_CURLY_BRACE) { + if (block.type !== 'brace') { + push({ type: 'text', value }); + continue; + } - try { - options.chmodSync(p, 0o666) - } catch (er2) { - if (er2.code === 'ENOENT') { - return - } else { - throw er - } - } + const type = 'close'; + block = stack.pop(); + block.close = true; - try { - stats = options.statSync(p) - } catch (er3) { - if (er3.code === 'ENOENT') { - return - } else { - throw er + push({ type, value }); + depth--; + + block = stack[stack.length - 1]; + continue; } - } - if (stats.isDirectory()) { - rmdirSync(p, options, er) - } else { - options.unlinkSync(p) - } -} + /** + * Comma: ',' + */ -function rmdir (p, options, originalEr, cb) { - assert(p) - assert(options) - if (originalEr) { - assert(originalEr instanceof Error) - } - assert(typeof cb === 'function') + if (value === CHAR_COMMA && depth > 0) { + if (block.ranges > 0) { + block.ranges = 0; + const open = block.nodes.shift(); + block.nodes = [open, { type: 'text', value: stringify(block) }]; + } - // try to rmdir first, and only readdir on ENOTEMPTY or EEXIST (SunOS) - // if we guessed wrong, and it's not a directory, then - // raise the original error. - options.rmdir(p, er => { - if (er && (er.code === 'ENOTEMPTY' || er.code === 'EEXIST' || er.code === 'EPERM')) { - rmkids(p, options, cb) - } else if (er && er.code === 'ENOTDIR') { - cb(originalEr) - } else { - cb(er) + push({ type: 'comma', value }); + block.commas++; + continue; } - }) -} -function rmkids (p, options, cb) { - assert(p) - assert(options) - assert(typeof cb === 'function') + /** + * Dot: '.' + */ - options.readdir(p, (er, files) => { - if (er) return cb(er) + if (value === CHAR_DOT && depth > 0 && block.commas === 0) { + const siblings = block.nodes; - let n = files.length - let errState + if (depth === 0 || siblings.length === 0) { + push({ type: 'text', value }); + continue; + } - if (n === 0) return options.rmdir(p, cb) + if (prev.type === 'dot') { + block.range = []; + prev.value += value; + prev.type = 'range'; - files.forEach(f => { - rimraf(path.join(p, f), options, er => { - if (errState) { - return - } - if (er) return cb(errState = er) - if (--n === 0) { - options.rmdir(p, cb) + if (block.nodes.length !== 3 && block.nodes.length !== 5) { + block.invalid = true; + block.ranges = 0; + prev.type = 'text'; + continue; } - }) - }) - }) -} -// this looks simpler, and is strictly *faster*, but will -// tie up the JavaScript thread and fail on excessively -// deep directory trees. -function rimrafSync (p, options) { - let st + block.ranges++; + block.args = []; + continue; + } - options = options || {} - defaults(options) + if (prev.type === 'range') { + siblings.pop(); - assert(p, 'rimraf: missing path') - assert.strictEqual(typeof p, 'string', 'rimraf: path should be a string') - assert(options, 'rimraf: missing options') - assert.strictEqual(typeof options, 'object', 'rimraf: options should be object') + const before = siblings[siblings.length - 1]; + before.value += prev.value + value; + prev = before; + block.ranges--; + continue; + } - try { - st = options.lstatSync(p) - } catch (er) { - if (er.code === 'ENOENT') { - return + push({ type: 'dot', value }); + continue; } - // Windows can EPERM on stat. Life is suffering. - if (er.code === 'EPERM' && isWindows) { - fixWinEPERMSync(p, options, er) - } - } + /** + * Text + */ - try { - // sunos lets the root user unlink directories, which is... weird. - if (st && st.isDirectory()) { - rmdirSync(p, options, null) - } else { - options.unlinkSync(p) - } - } catch (er) { - if (er.code === 'ENOENT') { - return - } else if (er.code === 'EPERM') { - return isWindows ? fixWinEPERMSync(p, options, er) : rmdirSync(p, options, er) - } else if (er.code !== 'EISDIR') { - throw er - } - rmdirSync(p, options, er) + push({ type: 'text', value }); } -} -function rmdirSync (p, options, originalEr) { - assert(p) - assert(options) - if (originalEr) { - assert(originalEr instanceof Error) - } + // Mark imbalanced braces and brackets as invalid + do { + block = stack.pop(); - try { - options.rmdirSync(p) - } catch (er) { - if (er.code === 'ENOTDIR') { - throw originalEr - } else if (er.code === 'ENOTEMPTY' || er.code === 'EEXIST' || er.code === 'EPERM') { - rmkidsSync(p, options) - } else if (er.code !== 'ENOENT') { - throw er - } - } -} + if (block.type !== 'root') { + block.nodes.forEach(node => { + if (!node.nodes) { + if (node.type === 'open') node.isOpen = true; + if (node.type === 'close') node.isClose = true; + if (!node.nodes) node.type = 'text'; + node.invalid = true; + } + }); -function rmkidsSync (p, options) { - assert(p) - assert(options) - options.readdirSync(p).forEach(f => rimrafSync(path.join(p, f), options)) + // get the location of the block on parent.nodes (block's siblings) + const parent = stack[stack.length - 1]; + const index = parent.nodes.indexOf(block); + // replace the (invalid) block with it's nodes + parent.nodes.splice(index, 1, ...block.nodes); + } + } while (stack.length > 0); - if (isWindows) { - // We only end up here once we got ENOTEMPTY at least once, and - // at this point, we are guaranteed to have removed all the kids. - // So, we know that it won't be ENOENT or ENOTDIR or anything else. - // try really hard to delete stuff on windows, because it has a - // PROFOUNDLY annoying habit of not closing handles promptly when - // files are deleted, resulting in spurious ENOTEMPTY errors. - const startTime = Date.now() - do { - try { - const ret = options.rmdirSync(p, options) - return ret - } catch (er) { } - } while (Date.now() - startTime < 500) // give up after 500ms - } else { - const ret = options.rmdirSync(p, options) - return ret - } -} + push({ type: 'eos' }); + return ast; +}; -module.exports = rimraf -rimraf.sync = rimrafSync +module.exports = parse; /***/ }), -/***/ 26445: -/***/ ((module) => { +/***/ 3062: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -/* eslint-disable node/no-deprecated-api */ -module.exports = function (size) { - if (typeof Buffer.allocUnsafe === 'function') { - try { - return Buffer.allocUnsafe(size) - } catch (e) { - return new Buffer(size) + +const utils = __nccwpck_require__(2474); + +module.exports = (ast, options = {}) => { + const stringify = (node, parent = {}) => { + const invalidBlock = options.escapeInvalid && utils.isInvalidBrace(parent); + const invalidNode = node.invalid === true && options.escapeInvalid === true; + let output = ''; + + if (node.value) { + if ((invalidBlock || invalidNode) && utils.isOpenOrClose(node)) { + return '\\' + node.value; + } + return node.value; } - } - return new Buffer(size) -} + + if (node.value) { + return node.value; + } + + if (node.nodes) { + for (const child of node.nodes) { + output += stringify(child); + } + } + return output; + }; + + return stringify(ast); +}; + /***/ }), -/***/ 76821: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +/***/ 2474: +/***/ ((__unused_webpack_module, exports) => { -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) +exports.isInteger = num => { + if (typeof num === 'number') { + return Number.isInteger(num); + } + if (typeof num === 'string' && num.trim() !== '') { + return Number.isInteger(Number(num)); + } + return false; +}; -const NODE_VERSION_MAJOR_WITH_BIGINT = 10 -const NODE_VERSION_MINOR_WITH_BIGINT = 5 -const NODE_VERSION_PATCH_WITH_BIGINT = 0 -const nodeVersion = process.versions.node.split('.') -const nodeVersionMajor = Number.parseInt(nodeVersion[0], 10) -const nodeVersionMinor = Number.parseInt(nodeVersion[1], 10) -const nodeVersionPatch = Number.parseInt(nodeVersion[2], 10) +/** + * Find a node of the given type + */ -function nodeSupportsBigInt () { - if (nodeVersionMajor > NODE_VERSION_MAJOR_WITH_BIGINT) { - return true - } else if (nodeVersionMajor === NODE_VERSION_MAJOR_WITH_BIGINT) { - if (nodeVersionMinor > NODE_VERSION_MINOR_WITH_BIGINT) { - return true - } else if (nodeVersionMinor === NODE_VERSION_MINOR_WITH_BIGINT) { - if (nodeVersionPatch >= NODE_VERSION_PATCH_WITH_BIGINT) { - return true - } +exports.find = (node, type) => node.nodes.find(node => node.type === type); + +/** + * Find a node of the given type + */ + +exports.exceedsLimit = (min, max, step = 1, limit) => { + if (limit === false) return false; + if (!exports.isInteger(min) || !exports.isInteger(max)) return false; + return ((Number(max) - Number(min)) / Number(step)) >= limit; +}; + +/** + * Escape the given node with '\\' before node.value + */ + +exports.escapeNode = (block, n = 0, type) => { + const node = block.nodes[n]; + if (!node) return; + + if ((type && node.type === type) || node.type === 'open' || node.type === 'close') { + if (node.escaped !== true) { + node.value = '\\' + node.value; + node.escaped = true; } } - return false -} +}; -function getStats (src, dest, cb) { - if (nodeSupportsBigInt()) { - fs.stat(src, { bigint: true }, (err, srcStat) => { - if (err) return cb(err) - fs.stat(dest, { bigint: true }, (err, destStat) => { - if (err) { - if (err.code === 'ENOENT') return cb(null, { srcStat, destStat: null }) - return cb(err) - } - return cb(null, { srcStat, destStat }) - }) - }) - } else { - fs.stat(src, (err, srcStat) => { - if (err) return cb(err) - fs.stat(dest, (err, destStat) => { - if (err) { - if (err.code === 'ENOENT') return cb(null, { srcStat, destStat: null }) - return cb(err) - } - return cb(null, { srcStat, destStat }) - }) - }) - } -} +/** + * Returns true if the given brace node should be enclosed in literal braces + */ -function getStatsSync (src, dest) { - let srcStat, destStat - if (nodeSupportsBigInt()) { - srcStat = fs.statSync(src, { bigint: true }) - } else { - srcStat = fs.statSync(src) - } - try { - if (nodeSupportsBigInt()) { - destStat = fs.statSync(dest, { bigint: true }) - } else { - destStat = fs.statSync(dest) - } - } catch (err) { - if (err.code === 'ENOENT') return { srcStat, destStat: null } - throw err +exports.encloseBrace = node => { + if (node.type !== 'brace') return false; + if ((node.commas >> 0 + node.ranges >> 0) === 0) { + node.invalid = true; + return true; } - return { srcStat, destStat } -} + return false; +}; -function checkPaths (src, dest, funcName, cb) { - getStats(src, dest, (err, stats) => { - if (err) return cb(err) - const { srcStat, destStat } = stats - if (destStat && destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev) { - return cb(new Error('Source and destination must not be the same.')) - } - if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { - return cb(new Error(errMsg(src, dest, funcName))) - } - return cb(null, { srcStat, destStat }) - }) -} +/** + * Returns true if a brace node is invalid. + */ -function checkPathsSync (src, dest, funcName) { - const { srcStat, destStat } = getStatsSync(src, dest) - if (destStat && destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev) { - throw new Error('Source and destination must not be the same.') +exports.isInvalidBrace = block => { + if (block.type !== 'brace') return false; + if (block.invalid === true || block.dollar) return true; + if ((block.commas >> 0 + block.ranges >> 0) === 0) { + block.invalid = true; + return true; } - if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { - throw new Error(errMsg(src, dest, funcName)) + if (block.open !== true || block.close !== true) { + block.invalid = true; + return true; } - return { srcStat, destStat } -} + return false; +}; -// recursively check if dest parent is a subdirectory of src. -// It works for all file types including symlinks since it -// checks the src and dest inodes. It starts from the deepest -// parent and stops once it reaches the src parent or the root path. -function checkParentPaths (src, srcStat, dest, funcName, cb) { - const srcParent = path.resolve(path.dirname(src)) - const destParent = path.resolve(path.dirname(dest)) - if (destParent === srcParent || destParent === path.parse(destParent).root) return cb() - if (nodeSupportsBigInt()) { - fs.stat(destParent, { bigint: true }, (err, destStat) => { - if (err) { - if (err.code === 'ENOENT') return cb() - return cb(err) - } - if (destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev) { - return cb(new Error(errMsg(src, dest, funcName))) - } - return checkParentPaths(src, srcStat, destParent, funcName, cb) - }) - } else { - fs.stat(destParent, (err, destStat) => { - if (err) { - if (err.code === 'ENOENT') return cb() - return cb(err) - } - if (destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev) { - return cb(new Error(errMsg(src, dest, funcName))) - } - return checkParentPaths(src, srcStat, destParent, funcName, cb) - }) - } -} +/** + * Returns true if a node is an open or close node + */ -function checkParentPathsSync (src, srcStat, dest, funcName) { - const srcParent = path.resolve(path.dirname(src)) - const destParent = path.resolve(path.dirname(dest)) - if (destParent === srcParent || destParent === path.parse(destParent).root) return - let destStat - try { - if (nodeSupportsBigInt()) { - destStat = fs.statSync(destParent, { bigint: true }) - } else { - destStat = fs.statSync(destParent) - } - } catch (err) { - if (err.code === 'ENOENT') return - throw err - } - if (destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev) { - throw new Error(errMsg(src, dest, funcName)) +exports.isOpenOrClose = node => { + if (node.type === 'open' || node.type === 'close') { + return true; } - return checkParentPathsSync(src, srcStat, destParent, funcName) -} + return node.open === true || node.close === true; +}; -// return true if dest is a subdir of src, otherwise false. -// It only checks the path strings. -function isSrcSubdir (src, dest) { - const srcArr = path.resolve(src).split(path.sep).filter(i => i) - const destArr = path.resolve(dest).split(path.sep).filter(i => i) - return srcArr.reduce((acc, cur, i) => acc && destArr[i] === cur, true) -} +/** + * Reduce an array of text nodes. + */ -function errMsg (src, dest, funcName) { - return `Cannot ${funcName} '${src}' to a subdirectory of itself, '${dest}'.` -} +exports.reduce = nodes => nodes.reduce((acc, node) => { + if (node.type === 'text') acc.push(node.value); + if (node.type === 'range') node.type = 'text'; + return acc; +}, []); -module.exports = { - checkPaths, - checkPathsSync, - checkParentPaths, - checkParentPathsSync, - isSrcSubdir -} +/** + * Flatten an array + */ + +exports.flatten = (...args) => { + const result = []; + const flat = arr => { + for (let i = 0; i < arr.length; i++) { + const ele = arr[i]; -/***/ }), + if (Array.isArray(ele)) { + flat(ele); + continue; + } -/***/ 84420: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if (ele !== undefined) { + result.push(ele); + } + } + return result; + }; + flat(args); + return result; +}; -const fs = __nccwpck_require__(61404) -const os = __nccwpck_require__(70857) -const path = __nccwpck_require__(16928) +/***/ }), -// HFS, ext{2,3}, FAT do not, Node.js v0.10 does not -function hasMillisResSync () { - let tmpfile = path.join('millis-test-sync' + Date.now().toString() + Math.random().toString().slice(2)) - tmpfile = path.join(os.tmpdir(), tmpfile) +/***/ 670: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - // 550 millis past UNIX epoch - const d = new Date(1435410243862) - fs.writeFileSync(tmpfile, 'https://github.com/jprichardson/node-fs-extra/pull/141') - const fd = fs.openSync(tmpfile, 'r+') - fs.futimesSync(fd, d, d) - fs.closeSync(fd) - return fs.statSync(tmpfile).mtime > 1435410243000 -} -function hasMillisRes (callback) { - let tmpfile = path.join('millis-test' + Date.now().toString() + Math.random().toString().slice(2)) - tmpfile = path.join(os.tmpdir(), tmpfile) - // 550 millis past UNIX epoch - const d = new Date(1435410243862) - fs.writeFile(tmpfile, 'https://github.com/jprichardson/node-fs-extra/pull/141', err => { - if (err) return callback(err) - fs.open(tmpfile, 'r+', (err, fd) => { - if (err) return callback(err) - fs.futimes(fd, d, d, err => { - if (err) return callback(err) - fs.close(fd, err => { - if (err) return callback(err) - fs.stat(tmpfile, (err, stats) => { - if (err) return callback(err) - callback(null, stats.mtime > 1435410243000) - }) - }) - }) - }) - }) -} +const cp = __nccwpck_require__(5317); +const parse = __nccwpck_require__(8401); +const enoent = __nccwpck_require__(7758); -function timeRemoveMillis (timestamp) { - if (typeof timestamp === 'number') { - return Math.floor(timestamp / 1000) * 1000 - } else if (timestamp instanceof Date) { - return new Date(Math.floor(timestamp.getTime() / 1000) * 1000) - } else { - throw new Error('fs-extra: timeRemoveMillis() unknown parameter type') - } -} +function spawn(command, args, options) { + // Parse the arguments + const parsed = parse(command, args, options); -function utimesMillis (path, atime, mtime, callback) { - // if (!HAS_MILLIS_RES) return fs.utimes(path, atime, mtime, callback) - fs.open(path, 'r+', (err, fd) => { - if (err) return callback(err) - fs.futimes(fd, atime, mtime, futimesErr => { - fs.close(fd, closeErr => { - if (callback) callback(futimesErr || closeErr) - }) - }) - }) -} + // Spawn the child process + const spawned = cp.spawn(parsed.command, parsed.args, parsed.options); -function utimesMillisSync (path, atime, mtime) { - const fd = fs.openSync(path, 'r+') - fs.futimesSync(fd, atime, mtime) - return fs.closeSync(fd) -} + // Hook into child process "exit" event to emit an error if the command + // does not exists, see: https://github.com/IndigoUnited/node-cross-spawn/issues/16 + enoent.hookChildProcess(spawned, parsed); -module.exports = { - hasMillisRes, - hasMillisResSync, - timeRemoveMillis, - utimesMillis, - utimesMillisSync + return spawned; } +function spawnSync(command, args, options) { + // Parse the arguments + const parsed = parse(command, args, options); -/***/ }), + // Spawn the child process + const result = cp.spawnSync(parsed.command, parsed.args, parsed.options); -/***/ 16792: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { + // Analyze if the command does not exist, see: https://github.com/IndigoUnited/node-cross-spawn/issues/16 + result.error = result.error || enoent.verifyENOENTSync(result.status, parsed); + return result; +} +module.exports = spawn; +module.exports.spawn = spawn; +module.exports.sync = spawnSync; -Object.defineProperty(exports, "__esModule", ({ value: true })); +module.exports._parse = parse; +module.exports._enoent = enoent; -function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; } -var _regeneratorRuntime = _interopDefault(__nccwpck_require__(65907)); -var _asyncToGenerator = _interopDefault(__nccwpck_require__(67584)); -var _classCallCheck = _interopDefault(__nccwpck_require__(33446)); -var _possibleConstructorReturn = _interopDefault(__nccwpck_require__(83855)); -var _getPrototypeOf = _interopDefault(__nccwpck_require__(55989)); -var _inherits = _interopDefault(__nccwpck_require__(87406)); -var _wrapNativeSuper = _interopDefault(__nccwpck_require__(16318)); -var fs = _interopDefault(__nccwpck_require__(5810)); -var path = _interopDefault(__nccwpck_require__(16928)); -var globby = __nccwpck_require__(46127); -var globby__default = _interopDefault(globby); -var readYamlFile = __nccwpck_require__(64109); -var readYamlFile__default = _interopDefault(readYamlFile); -var findRoot = __nccwpck_require__(67805); +/***/ }), -var PackageJsonMissingNameError = -/*#__PURE__*/ -function (_Error) { - _inherits(PackageJsonMissingNameError, _Error); +/***/ 7758: +/***/ ((module) => { - function PackageJsonMissingNameError(directories) { - var _this; - _classCallCheck(this, PackageJsonMissingNameError); - _this = _possibleConstructorReturn(this, _getPrototypeOf(PackageJsonMissingNameError).call(this, "The following package.jsons are missing the \"name\" field:\n".concat(directories.join("\n")))); - _this.directories = directories; - return _this; - } +const isWin = process.platform === 'win32'; - return PackageJsonMissingNameError; -}(_wrapNativeSuper(Error)); -function getPackages(_x) { - return _getPackages.apply(this, arguments); +function notFoundError(original, syscall) { + return Object.assign(new Error(`${syscall} ${original.command} ENOENT`), { + code: 'ENOENT', + errno: 'ENOENT', + syscall: `${syscall} ${original.command}`, + path: original.command, + spawnargs: original.args, + }); } -function _getPackages() { - _getPackages = _asyncToGenerator( - /*#__PURE__*/ - _regeneratorRuntime.mark(function _callee(dir) { - var cwd, pkg, tool, manifest, lernaJson, root, relativeDirectories, directories, pkgJsonsMissingNameField, results; - return _regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - _context.next = 2; - return findRoot.findRoot(dir); +function hookChildProcess(cp, parsed) { + if (!isWin) { + return; + } - case 2: - cwd = _context.sent; - _context.next = 5; - return fs.readJson(path.join(cwd, "package.json")); + const originalEmit = cp.emit; - case 5: - pkg = _context.sent; + cp.emit = function (name, arg1) { + // If emitting "exit" event and exit code is 1, we need to check if + // the command exists and emit an "error" instead + // See https://github.com/IndigoUnited/node-cross-spawn/issues/16 + if (name === 'exit') { + const err = verifyENOENT(arg1, parsed); - if (!pkg.workspaces) { - _context.next = 10; - break; + if (err) { + return originalEmit.call(cp, 'error', err); } + } - if (Array.isArray(pkg.workspaces)) { - tool = { - type: "yarn", - packageGlobs: pkg.workspaces - }; - } else if (pkg.workspaces.packages) { - tool = { - type: "yarn", - packageGlobs: pkg.workspaces.packages - }; - } + return originalEmit.apply(cp, arguments); // eslint-disable-line prefer-rest-params + }; +} - _context.next = 37; - break; +function verifyENOENT(status, parsed) { + if (isWin && status === 1 && !parsed.file) { + return notFoundError(parsed.original, 'spawn'); + } - case 10: - if (!(pkg.bolt && pkg.bolt.workspaces)) { - _context.next = 14; - break; - } + return null; +} - tool = { - type: "bolt", - packageGlobs: pkg.bolt.workspaces - }; - _context.next = 37; - break; +function verifyENOENTSync(status, parsed) { + if (isWin && status === 1 && !parsed.file) { + return notFoundError(parsed.original, 'spawnSync'); + } - case 14: - _context.prev = 14; - _context.next = 17; - return readYamlFile__default(path.join(cwd, "pnpm-workspace.yaml")); + return null; +} - case 17: - manifest = _context.sent; +module.exports = { + hookChildProcess, + verifyENOENT, + verifyENOENTSync, + notFoundError, +}; - if (manifest && manifest.packages) { - tool = { - type: "pnpm", - packageGlobs: manifest.packages - }; - } - _context.next = 25; - break; +/***/ }), - case 21: - _context.prev = 21; - _context.t0 = _context["catch"](14); +/***/ 8401: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - if (!(_context.t0.code !== "ENOENT")) { - _context.next = 25; - break; - } - throw _context.t0; - case 25: - if (tool) { - _context.next = 37; - break; - } +const path = __nccwpck_require__(6928); +const resolveCommand = __nccwpck_require__(7430); +const escape = __nccwpck_require__(6808); +const readShebang = __nccwpck_require__(9531); - _context.prev = 26; - _context.next = 29; - return fs.readJson(path.join(cwd, "lerna.json")); +const isWin = process.platform === 'win32'; +const isExecutableRegExp = /\.(?:com|exe)$/i; +const isCmdShimRegExp = /node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i; - case 29: - lernaJson = _context.sent; +function detectShebang(parsed) { + parsed.file = resolveCommand(parsed); - if (lernaJson) { - tool = { - type: "lerna", - packageGlobs: lernaJson.packages || ["packages/*"] - }; - } + const shebang = parsed.file && readShebang(parsed.file); - _context.next = 37; - break; + if (shebang) { + parsed.args.unshift(parsed.file); + parsed.command = shebang; - case 33: - _context.prev = 33; - _context.t1 = _context["catch"](26); + return resolveCommand(parsed); + } - if (!(_context.t1.code !== "ENOENT")) { - _context.next = 37; - break; - } + return parsed.file; +} - throw _context.t1; +function parseNonShell(parsed) { + if (!isWin) { + return parsed; + } - case 37: - if (tool) { - _context.next = 42; - break; - } + // Detect & add support for shebangs + const commandFile = detectShebang(parsed); - root = { - dir: cwd, - packageJson: pkg - }; + // We don't need a shell if the command filename is an executable + const needsShell = !isExecutableRegExp.test(commandFile); - if (pkg.name) { - _context.next = 41; - break; - } + // If a shell is required, use cmd.exe and take care of escaping everything correctly + // Note that `forceShell` is an hidden option used only in tests + if (parsed.options.forceShell || needsShell) { + // Need to double escape meta chars if the command is a cmd-shim located in `node_modules/.bin/` + // The cmd-shim simply calls execute the package bin file with NodeJS, proxying any argument + // Because the escape of metachars with ^ gets interpreted when the cmd.exe is first called, + // we need to double escape them + const needsDoubleEscapeMetaChars = isCmdShimRegExp.test(commandFile); - throw new PackageJsonMissingNameError(["package.json"]); + // Normalize posix paths into OS compatible paths (e.g.: foo/bar -> foo\bar) + // This is necessary otherwise it will always fail with ENOENT in those cases + parsed.command = path.normalize(parsed.command); - case 41: - return _context.abrupt("return", { - tool: "root", - root: root, - packages: [root] - }); + // Escape command & arguments + parsed.command = escape.command(parsed.command); + parsed.args = parsed.args.map((arg) => escape.argument(arg, needsDoubleEscapeMetaChars)); - case 42: - _context.next = 44; - return globby__default(tool.packageGlobs, { - cwd: cwd, - onlyDirectories: true, - expandDirectories: false, - ignore: ["**/node_modules"] - }); + const shellCommand = [parsed.command].concat(parsed.args).join(' '); - case 44: - relativeDirectories = _context.sent; - directories = relativeDirectories.map(function (p) { - return path.resolve(cwd, p); - }); - pkgJsonsMissingNameField = []; - _context.next = 49; - return Promise.all(directories.sort().map(function (dir) { - return fs.readJson(path.join(dir, "package.json")).then(function (packageJson) { - if (!packageJson.name) { - pkgJsonsMissingNameField.push(path.relative(cwd, path.join(dir, "package.json"))); - } + parsed.args = ['/d', '/s', '/c', `"${shellCommand}"`]; + parsed.command = process.env.comspec || 'cmd.exe'; + parsed.options.windowsVerbatimArguments = true; // Tell node's spawn that the arguments are already escaped + } - return { - packageJson: packageJson, - dir: dir - }; - })["catch"](function (err) { - if (err.code === "ENOENT") { - return null; - } + return parsed; +} - throw err; - }); - })); +function parse(command, args, options) { + // Normalize arguments, similar to nodejs + if (args && !Array.isArray(args)) { + options = args; + args = null; + } - case 49: - _context.t2 = function (x) { - return x; - }; + args = args ? args.slice(0) : []; // Clone array to avoid changing the original + options = Object.assign({}, options); // Clone object to avoid changing the original - results = _context.sent.filter(_context.t2); + // Build our parsed object + const parsed = { + command, + args, + options, + file: undefined, + original: { + command, + args, + }, + }; - if (!(pkgJsonsMissingNameField.length !== 0)) { - _context.next = 54; - break; - } + // Delegate further parsing to shell or non-shell + return options.shell ? parsed : parseNonShell(parsed); +} - pkgJsonsMissingNameField.sort(); - throw new PackageJsonMissingNameError(pkgJsonsMissingNameField); +module.exports = parse; - case 54: - return _context.abrupt("return", { - tool: tool.type, - root: { - dir: cwd, - packageJson: pkg - }, - packages: results - }); - case 55: - case "end": - return _context.stop(); - } - } - }, _callee, null, [[14, 21], [26, 33]]); - })); - return _getPackages.apply(this, arguments); -} +/***/ }), -function getPackagesSync(dir) { - var cwd = findRoot.findRootSync(dir); - var pkg = fs.readJsonSync(path.join(cwd, "package.json")); - var tool; +/***/ 6808: +/***/ ((module) => { - if (pkg.workspaces) { - if (Array.isArray(pkg.workspaces)) { - tool = { - type: "yarn", - packageGlobs: pkg.workspaces - }; - } else if (pkg.workspaces.packages) { - tool = { - type: "yarn", - packageGlobs: pkg.workspaces.packages - }; - } - } else if (pkg.bolt && pkg.bolt.workspaces) { - tool = { - type: "bolt", - packageGlobs: pkg.bolt.workspaces - }; - } else { - try { - var manifest = readYamlFile.sync(path.join(cwd, "pnpm-workspace.yaml")); - if (manifest && manifest.packages) { - tool = { - type: "pnpm", - packageGlobs: manifest.packages - }; - } - } catch (err) { - if (err.code !== "ENOENT") { - throw err; - } - } - if (!tool) { - try { - var lernaJson = fs.readJsonSync(path.join(cwd, "lerna.json")); +// See http://www.robvanderwoude.com/escapechars.php +const metaCharsRegExp = /([()\][%!^"`<>&|;, *?])/g; - if (lernaJson) { - tool = { - type: "lerna", - packageGlobs: lernaJson.packages || ["packages/*"] - }; - } - } catch (err) { - if (err.code !== "ENOENT") { - throw err; - } - } - } - } +function escapeCommand(arg) { + // Escape meta chars + arg = arg.replace(metaCharsRegExp, '^$1'); - if (!tool) { - var root = { - dir: cwd, - packageJson: pkg - }; + return arg; +} - if (!pkg.name) { - throw new PackageJsonMissingNameError(["package.json"]); - } +function escapeArgument(arg, doubleEscapeMetaChars) { + // Convert to string + arg = `${arg}`; - return { - tool: "root", - root: root, - packages: [root] - }; - } + // Algorithm below is based on https://qntm.org/cmd + // It's slightly altered to disable JS backtracking to avoid hanging on specially crafted input + // Please see https://github.com/moxystudio/node-cross-spawn/pull/160 for more information - var relativeDirectories = globby.sync(tool.packageGlobs, { - cwd: cwd, - onlyDirectories: true, - expandDirectories: false, - ignore: ["**/node_modules"] - }); - var directories = relativeDirectories.map(function (p) { - return path.resolve(cwd, p); - }); - var pkgJsonsMissingNameField = []; - var results = directories.sort().map(function (dir) { - try { - var packageJson = fs.readJsonSync(path.join(dir, "package.json")); + // Sequence of backslashes followed by a double quote: + // double up all the backslashes and escape the double quote + arg = arg.replace(/(?=(\\+?)?)\1"/g, '$1$1\\"'); - if (!packageJson.name) { - pkgJsonsMissingNameField.push(path.relative(cwd, path.join(dir, "package.json"))); - } + // Sequence of backslashes followed by the end of the string + // (which will become a double quote later): + // double up all the backslashes + arg = arg.replace(/(?=(\\+?)?)\1$/, '$1$1'); - return { - packageJson: packageJson, - dir: dir - }; - } catch (err) { - if (err.code === "ENOENT") return null; - throw err; - } - }).filter(function (x) { - return x; - }); + // All other backslashes occur literally - if (pkgJsonsMissingNameField.length !== 0) { - pkgJsonsMissingNameField.sort(); - throw new PackageJsonMissingNameError(pkgJsonsMissingNameField); - } + // Quote the whole thing: + arg = `"${arg}"`; - return { - tool: tool.type, - root: { - dir: cwd, - packageJson: pkg - }, - packages: results - }; + // Escape meta chars + arg = arg.replace(metaCharsRegExp, '^$1'); + + // Double escape meta chars if necessary + if (doubleEscapeMetaChars) { + arg = arg.replace(metaCharsRegExp, '^$1'); + } + + return arg; } -exports.PackageJsonMissingNameError = PackageJsonMissingNameError; -exports.getPackages = getPackages; -exports.getPackagesSync = getPackagesSync; +module.exports.command = escapeCommand; +module.exports.argument = escapeArgument; /***/ }), -/***/ 94941: +/***/ 9531: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -if (process.env.NODE_ENV === "production") { - module.exports = __nccwpck_require__(61042); -} else { - module.exports = __nccwpck_require__(16792); -} - - -/***/ }), +const fs = __nccwpck_require__(9896); +const shebangCommand = __nccwpck_require__(4881); -/***/ 61042: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +function readShebang(command) { + // Read the first 150 bytes from the file + const size = 150; + const buffer = Buffer.alloc(size); + let fd; + try { + fd = fs.openSync(command, 'r'); + fs.readSync(fd, buffer, 0, size, 0); + fs.closeSync(fd); + } catch (e) { /* Empty */ } -function _interopDefault(ex) { - return ex && "object" == typeof ex && "default" in ex ? ex.default : ex; + // Attempt to extract shebang (null is returned if not a shebang) + return shebangCommand(buffer.toString()); } -Object.defineProperty(exports, "__esModule", ({ - value: !0 -})); - -var _regeneratorRuntime = _interopDefault(__nccwpck_require__(65907)), _asyncToGenerator = _interopDefault(__nccwpck_require__(67584)), _classCallCheck = _interopDefault(__nccwpck_require__(33446)), _possibleConstructorReturn = _interopDefault(__nccwpck_require__(83855)), _getPrototypeOf = _interopDefault(__nccwpck_require__(55989)), _inherits = _interopDefault(__nccwpck_require__(87406)), _wrapNativeSuper = _interopDefault(__nccwpck_require__(16318)), fs = _interopDefault(__nccwpck_require__(5810)), path = _interopDefault(__nccwpck_require__(16928)), globby = __nccwpck_require__(46127), globby__default = _interopDefault(globby), readYamlFile = __nccwpck_require__(64109), readYamlFile__default = _interopDefault(readYamlFile), findRoot = __nccwpck_require__(67805), PackageJsonMissingNameError = function(_Error) { - function PackageJsonMissingNameError(directories) { - var _this; - return _classCallCheck(this, PackageJsonMissingNameError), (_this = _possibleConstructorReturn(this, _getPrototypeOf(PackageJsonMissingNameError).call(this, 'The following package.jsons are missing the "name" field:\n'.concat(directories.join("\n"))))).directories = directories, - _this; - } - return _inherits(PackageJsonMissingNameError, _Error), PackageJsonMissingNameError; -}(_wrapNativeSuper(Error)); +module.exports = readShebang; -function getPackages(_x) { - return _getPackages.apply(this, arguments); -} -function _getPackages() { - return (_getPackages = _asyncToGenerator(_regeneratorRuntime.mark(function _callee(dir) { - var cwd, pkg, tool, manifest, lernaJson, root, relativeDirectories, directories, pkgJsonsMissingNameField, results; - return _regeneratorRuntime.wrap(function(_context) { - for (;;) switch (_context.prev = _context.next) { - case 0: - return _context.next = 2, findRoot.findRoot(dir); +/***/ }), - case 2: - return cwd = _context.sent, _context.next = 5, fs.readJson(path.join(cwd, "package.json")); +/***/ 7430: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - case 5: - if (!(pkg = _context.sent).workspaces) { - _context.next = 10; - break; - } - Array.isArray(pkg.workspaces) ? tool = { - type: "yarn", - packageGlobs: pkg.workspaces - } : pkg.workspaces.packages && (tool = { - type: "yarn", - packageGlobs: pkg.workspaces.packages - }), _context.next = 37; - break; - case 10: - if (!pkg.bolt || !pkg.bolt.workspaces) { - _context.next = 14; - break; - } - tool = { - type: "bolt", - packageGlobs: pkg.bolt.workspaces - }, _context.next = 37; - break; - case 14: - return _context.prev = 14, _context.next = 17, readYamlFile__default(path.join(cwd, "pnpm-workspace.yaml")); +const path = __nccwpck_require__(6928); +const which = __nccwpck_require__(1192); +const getPathKey = __nccwpck_require__(4662); - case 17: - (manifest = _context.sent) && manifest.packages && (tool = { - type: "pnpm", - packageGlobs: manifest.packages - }), _context.next = 25; - break; +function resolveCommandAttempt(parsed, withoutPathExt) { + const env = parsed.options.env || process.env; + const cwd = process.cwd(); + const hasCustomCwd = parsed.options.cwd != null; + // Worker threads do not have process.chdir() + const shouldSwitchCwd = hasCustomCwd && process.chdir !== undefined && !process.chdir.disabled; - case 21: - if (_context.prev = 21, _context.t0 = _context.catch(14), "ENOENT" === _context.t0.code) { - _context.next = 25; - break; + // If a custom `cwd` was specified, we need to change the process cwd + // because `which` will do stat calls but does not support a custom cwd + if (shouldSwitchCwd) { + try { + process.chdir(parsed.options.cwd); + } catch (err) { + /* Empty */ } - throw _context.t0; + } - case 25: - if (tool) { - _context.next = 37; - break; - } - return _context.prev = 26, _context.next = 29, fs.readJson(path.join(cwd, "lerna.json")); - - case 29: - (lernaJson = _context.sent) && (tool = { - type: "lerna", - packageGlobs: lernaJson.packages || [ "packages/*" ] - }), _context.next = 37; - break; - - case 33: - if (_context.prev = 33, _context.t1 = _context.catch(26), "ENOENT" === _context.t1.code) { - _context.next = 37; - break; - } - throw _context.t1; - - case 37: - if (tool) { - _context.next = 42; - break; - } - if (root = { - dir: cwd, - packageJson: pkg - }, pkg.name) { - _context.next = 41; - break; - } - throw new PackageJsonMissingNameError([ "package.json" ]); - - case 41: - return _context.abrupt("return", { - tool: "root", - root: root, - packages: [ root ] - }); + let resolved; - case 42: - return _context.next = 44, globby__default(tool.packageGlobs, { - cwd: cwd, - onlyDirectories: !0, - expandDirectories: !1, - ignore: [ "**/node_modules" ] + try { + resolved = which.sync(parsed.command, { + path: env[getPathKey({ env })], + pathExt: withoutPathExt ? path.delimiter : undefined, }); - - case 44: - return relativeDirectories = _context.sent, directories = relativeDirectories.map(function(p) { - return path.resolve(cwd, p); - }), pkgJsonsMissingNameField = [], _context.next = 49, Promise.all(directories.sort().map(function(dir) { - return fs.readJson(path.join(dir, "package.json")).then(function(packageJson) { - return packageJson.name || pkgJsonsMissingNameField.push(path.relative(cwd, path.join(dir, "package.json"))), - { - packageJson: packageJson, - dir: dir - }; - }).catch(function(err) { - if ("ENOENT" === err.code) return null; - throw err; - }); - })); - - case 49: - if (_context.t2 = function(x) { - return x; - }, results = _context.sent.filter(_context.t2), 0 === pkgJsonsMissingNameField.length) { - _context.next = 54; - break; + } catch (e) { + /* Empty */ + } finally { + if (shouldSwitchCwd) { + process.chdir(cwd); } - throw pkgJsonsMissingNameField.sort(), new PackageJsonMissingNameError(pkgJsonsMissingNameField); + } - case 54: - return _context.abrupt("return", { - tool: tool.type, - root: { - dir: cwd, - packageJson: pkg - }, - packages: results - }); + // If we successfully resolved, ensure that an absolute path is returned + // Note that when a custom `cwd` was used, we need to resolve to an absolute path based on it + if (resolved) { + resolved = path.resolve(hasCustomCwd ? parsed.options.cwd : '', resolved); + } - case 55: - case "end": - return _context.stop(); - } - }, _callee, null, [ [ 14, 21 ], [ 26, 33 ] ]); - }))).apply(this, arguments); + return resolved; } -function getPackagesSync(dir) { - var tool, cwd = findRoot.findRootSync(dir), pkg = fs.readJsonSync(path.join(cwd, "package.json")); - if (pkg.workspaces) Array.isArray(pkg.workspaces) ? tool = { - type: "yarn", - packageGlobs: pkg.workspaces - } : pkg.workspaces.packages && (tool = { - type: "yarn", - packageGlobs: pkg.workspaces.packages - }); else if (pkg.bolt && pkg.bolt.workspaces) tool = { - type: "bolt", - packageGlobs: pkg.bolt.workspaces - }; else { - try { - var manifest = readYamlFile.sync(path.join(cwd, "pnpm-workspace.yaml")); - manifest && manifest.packages && (tool = { - type: "pnpm", - packageGlobs: manifest.packages - }); - } catch (err) { - if ("ENOENT" !== err.code) throw err; - } - if (!tool) try { - var lernaJson = fs.readJsonSync(path.join(cwd, "lerna.json")); - lernaJson && (tool = { - type: "lerna", - packageGlobs: lernaJson.packages || [ "packages/*" ] - }); - } catch (err) { - if ("ENOENT" !== err.code) throw err; - } - } - if (!tool) { - var root = { - dir: cwd, - packageJson: pkg - }; - if (!pkg.name) throw new PackageJsonMissingNameError([ "package.json" ]); - return { - tool: "root", - root: root, - packages: [ root ] - }; - } - var directories = globby.sync(tool.packageGlobs, { - cwd: cwd, - onlyDirectories: !0, - expandDirectories: !1, - ignore: [ "**/node_modules" ] - }).map(function(p) { - return path.resolve(cwd, p); - }), pkgJsonsMissingNameField = [], results = directories.sort().map(function(dir) { - try { - var packageJson = fs.readJsonSync(path.join(dir, "package.json")); - return packageJson.name || pkgJsonsMissingNameField.push(path.relative(cwd, path.join(dir, "package.json"))), - { - packageJson: packageJson, - dir: dir - }; - } catch (err) { - if ("ENOENT" === err.code) return null; - throw err; - } - }).filter(function(x) { - return x; - }); - if (0 !== pkgJsonsMissingNameField.length) throw pkgJsonsMissingNameField.sort(), - new PackageJsonMissingNameError(pkgJsonsMissingNameField); - return { - tool: tool.type, - root: { - dir: cwd, - packageJson: pkg - }, - packages: results - }; +function resolveCommand(parsed) { + return resolveCommandAttempt(parsed) || resolveCommandAttempt(parsed, true); } -exports.PackageJsonMissingNameError = PackageJsonMissingNameError, exports.getPackages = getPackages, -exports.getPackagesSync = getPackagesSync; +module.exports = resolveCommand; /***/ }), -/***/ 94145: +/***/ 8797: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +const path = __nccwpck_require__(6928); +const pathType = __nccwpck_require__(3051); -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const mkdirpSync = (__nccwpck_require__(77999).mkdirsSync) -const utimesSync = (__nccwpck_require__(12804).utimesMillisSync) -const stat = __nccwpck_require__(91349) +const getExtensions = extensions => extensions.length > 1 ? `{${extensions.join(',')}}` : extensions[0]; -function copySync (src, dest, opts) { - if (typeof opts === 'function') { - opts = { filter: opts } - } +const getPath = (filepath, cwd) => { + const pth = filepath[0] === '!' ? filepath.slice(1) : filepath; + return path.isAbsolute(pth) ? pth : path.join(cwd, pth); +}; - opts = opts || {} - opts.clobber = 'clobber' in opts ? !!opts.clobber : true // default to true for now - opts.overwrite = 'overwrite' in opts ? !!opts.overwrite : opts.clobber // overwrite falls back to clobber +const addExtensions = (file, extensions) => { + if (path.extname(file)) { + return `**/${file}`; + } - // Warn about using preserveTimestamps on 32-bit node - if (opts.preserveTimestamps && process.arch === 'ia32') { - console.warn(`fs-extra: Using the preserveTimestamps option in 32-bit node is not recommended;\n - see https://github.com/jprichardson/node-fs-extra/issues/269`) - } + return `**/${file}.${getExtensions(extensions)}`; +}; - const { srcStat, destStat } = stat.checkPathsSync(src, dest, 'copy') - stat.checkParentPathsSync(src, srcStat, dest, 'copy') - return handleFilterAndCopy(destStat, src, dest, opts) -} +const getGlob = (directory, options) => { + if (options.files && !Array.isArray(options.files)) { + throw new TypeError(`Expected \`files\` to be of type \`Array\` but received type \`${typeof options.files}\``); + } -function handleFilterAndCopy (destStat, src, dest, opts) { - if (opts.filter && !opts.filter(src, dest)) return - const destParent = path.dirname(dest) - if (!fs.existsSync(destParent)) mkdirpSync(destParent) - return startCopy(destStat, src, dest, opts) -} + if (options.extensions && !Array.isArray(options.extensions)) { + throw new TypeError(`Expected \`extensions\` to be of type \`Array\` but received type \`${typeof options.extensions}\``); + } -function startCopy (destStat, src, dest, opts) { - if (opts.filter && !opts.filter(src, dest)) return - return getStats(destStat, src, dest, opts) -} + if (options.files && options.extensions) { + return options.files.map(x => path.posix.join(directory, addExtensions(x, options.extensions))); + } -function getStats (destStat, src, dest, opts) { - const statSync = opts.dereference ? fs.statSync : fs.lstatSync - const srcStat = statSync(src) + if (options.files) { + return options.files.map(x => path.posix.join(directory, `**/${x}`)); + } - if (srcStat.isDirectory()) return onDir(srcStat, destStat, src, dest, opts) - else if (srcStat.isFile() || - srcStat.isCharacterDevice() || - srcStat.isBlockDevice()) return onFile(srcStat, destStat, src, dest, opts) - else if (srcStat.isSymbolicLink()) return onLink(destStat, src, dest, opts) -} + if (options.extensions) { + return [path.posix.join(directory, `**/*.${getExtensions(options.extensions)}`)]; + } -function onFile (srcStat, destStat, src, dest, opts) { - if (!destStat) return copyFile(srcStat, src, dest, opts) - return mayCopyFile(srcStat, src, dest, opts) -} + return [path.posix.join(directory, '**')]; +}; -function mayCopyFile (srcStat, src, dest, opts) { - if (opts.overwrite) { - fs.unlinkSync(dest) - return copyFile(srcStat, src, dest, opts) - } else if (opts.errorOnExist) { - throw new Error(`'${dest}' already exists`) - } -} +module.exports = async (input, options) => { + options = { + cwd: process.cwd(), + ...options + }; -function copyFile (srcStat, src, dest, opts) { - if (typeof fs.copyFileSync === 'function') { - fs.copyFileSync(src, dest) - fs.chmodSync(dest, srcStat.mode) - if (opts.preserveTimestamps) { - return utimesSync(dest, srcStat.atime, srcStat.mtime) - } - return - } - return copyFileFallback(srcStat, src, dest, opts) -} + if (typeof options.cwd !== 'string') { + throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof options.cwd}\``); + } -function copyFileFallback (srcStat, src, dest, opts) { - const BUF_LENGTH = 64 * 1024 - const _buff = __nccwpck_require__(44973)(BUF_LENGTH) + const globs = await Promise.all([].concat(input).map(async x => { + const isDirectory = await pathType.isDirectory(getPath(x, options.cwd)); + return isDirectory ? getGlob(x, options) : x; + })); - const fdr = fs.openSync(src, 'r') - const fdw = fs.openSync(dest, 'w', srcStat.mode) - let pos = 0 + return [].concat.apply([], globs); // eslint-disable-line prefer-spread +}; - while (pos < srcStat.size) { - const bytesRead = fs.readSync(fdr, _buff, 0, BUF_LENGTH, pos) - fs.writeSync(fdw, _buff, 0, bytesRead) - pos += bytesRead - } +module.exports.sync = (input, options) => { + options = { + cwd: process.cwd(), + ...options + }; - if (opts.preserveTimestamps) fs.futimesSync(fdw, srcStat.atime, srcStat.mtime) + if (typeof options.cwd !== 'string') { + throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof options.cwd}\``); + } - fs.closeSync(fdr) - fs.closeSync(fdw) -} + const globs = [].concat(input).map(x => pathType.isDirectorySync(getPath(x, options.cwd)) ? getGlob(x, options) : x); -function onDir (srcStat, destStat, src, dest, opts) { - if (!destStat) return mkDirAndCopy(srcStat, src, dest, opts) - if (destStat && !destStat.isDirectory()) { - throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`) - } - return copyDir(src, dest, opts) -} + return [].concat.apply([], globs); // eslint-disable-line prefer-spread +}; -function mkDirAndCopy (srcStat, src, dest, opts) { - fs.mkdirSync(dest) - copyDir(src, dest, opts) - return fs.chmodSync(dest, srcStat.mode) -} -function copyDir (src, dest, opts) { - fs.readdirSync(src).forEach(item => copyDirItem(item, src, dest, opts)) -} +/***/ }), -function copyDirItem (item, src, dest, opts) { - const srcItem = path.join(src, item) - const destItem = path.join(dest, item) - const { destStat } = stat.checkPathsSync(srcItem, destItem, 'copy') - return startCopy(destStat, srcItem, destItem, opts) -} +/***/ 3650: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -function onLink (destStat, src, dest, opts) { - let resolvedSrc = fs.readlinkSync(src) - if (opts.dereference) { - resolvedSrc = path.resolve(process.cwd(), resolvedSrc) - } - if (!destStat) { - return fs.symlinkSync(resolvedSrc, dest) - } else { - let resolvedDest - try { - resolvedDest = fs.readlinkSync(dest) - } catch (err) { - // dest exists and is a regular file or directory, - // Windows may throw UNKNOWN error. If dest already exists, - // fs throws error anyway, so no need to guard against it here. - if (err.code === 'EINVAL' || err.code === 'UNKNOWN') return fs.symlinkSync(resolvedSrc, dest) - throw err - } - if (opts.dereference) { - resolvedDest = path.resolve(process.cwd(), resolvedDest) - } - if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) { - throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`) - } +const path = __nccwpck_require__(6928); +const childProcess = __nccwpck_require__(5317); +const crossSpawn = __nccwpck_require__(670); +const stripFinalNewline = __nccwpck_require__(3757); +const npmRunPath = __nccwpck_require__(4876); +const onetime = __nccwpck_require__(7471); +const makeError = __nccwpck_require__(5156); +const normalizeStdio = __nccwpck_require__(2319); +const {spawnedKill, spawnedCancel, setupTimeout, validateTimeout, setExitHandler} = __nccwpck_require__(9388); +const {handleInput, getSpawnedResult, makeAllStream, validateInputSync} = __nccwpck_require__(6852); +const {mergePromise, getSpawnedPromise} = __nccwpck_require__(8531); +const {joinCommand, parseCommand, getEscapedCommand} = __nccwpck_require__(4435); - // prevent copy if src is a subdir of dest since unlinking - // dest in this case would result in removing src contents - // and therefore a broken symlink would be created. - if (fs.statSync(dest).isDirectory() && stat.isSrcSubdir(resolvedDest, resolvedSrc)) { - throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`) - } - return copyLink(resolvedSrc, dest) - } -} +const DEFAULT_MAX_BUFFER = 1000 * 1000 * 100; -function copyLink (resolvedSrc, dest) { - fs.unlinkSync(dest) - return fs.symlinkSync(resolvedSrc, dest) -} +const getEnv = ({env: envOption, extendEnv, preferLocal, localDir, execPath}) => { + const env = extendEnv ? {...process.env, ...envOption} : envOption; -module.exports = copySync + if (preferLocal) { + return npmRunPath.env({env, cwd: localDir, execPath}); + } + return env; +}; -/***/ }), +const handleArguments = (file, args, options = {}) => { + const parsed = crossSpawn._parse(file, args, options); + file = parsed.command; + args = parsed.args; + options = parsed.options; -/***/ 36278: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + options = { + maxBuffer: DEFAULT_MAX_BUFFER, + buffer: true, + stripFinalNewline: true, + extendEnv: true, + preferLocal: false, + localDir: options.cwd || process.cwd(), + execPath: process.execPath, + encoding: 'utf8', + reject: true, + cleanup: true, + all: false, + windowsHide: true, + ...options + }; + options.env = getEnv(options); + options.stdio = normalizeStdio(options); -module.exports = { - copySync: __nccwpck_require__(94145) -} + if (process.platform === 'win32' && path.basename(file, '.exe') === 'cmd') { + // #116 + args.unshift('/q'); + } + return {file, args, options, parsed}; +}; -/***/ }), +const handleOutput = (options, value, error) => { + if (typeof value !== 'string' && !Buffer.isBuffer(value)) { + // When `execa.sync()` errors, we normalize it to '' to mimic `execa()` + return error === undefined ? undefined : ''; + } -/***/ 65737: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if (options.stripFinalNewline) { + return stripFinalNewline(value); + } + return value; +}; +const execa = (file, args, options) => { + const parsed = handleArguments(file, args, options); + const command = joinCommand(file, args); + const escapedCommand = getEscapedCommand(file, args); -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const mkdirp = (__nccwpck_require__(77999).mkdirs) -const pathExists = (__nccwpck_require__(53647).pathExists) -const utimes = (__nccwpck_require__(12804).utimesMillis) -const stat = __nccwpck_require__(91349) + validateTimeout(parsed.options); -function copy (src, dest, opts, cb) { - if (typeof opts === 'function' && !cb) { - cb = opts - opts = {} - } else if (typeof opts === 'function') { - opts = { filter: opts } - } + let spawned; + try { + spawned = childProcess.spawn(parsed.file, parsed.args, parsed.options); + } catch (error) { + // Ensure the returned error is always both a promise and a child process + const dummySpawned = new childProcess.ChildProcess(); + const errorPromise = Promise.reject(makeError({ + error, + stdout: '', + stderr: '', + all: '', + command, + escapedCommand, + parsed, + timedOut: false, + isCanceled: false, + killed: false + })); + return mergePromise(dummySpawned, errorPromise); + } - cb = cb || function () {} - opts = opts || {} + const spawnedPromise = getSpawnedPromise(spawned); + const timedPromise = setupTimeout(spawned, parsed.options, spawnedPromise); + const processDone = setExitHandler(spawned, parsed.options, timedPromise); - opts.clobber = 'clobber' in opts ? !!opts.clobber : true // default to true for now - opts.overwrite = 'overwrite' in opts ? !!opts.overwrite : opts.clobber // overwrite falls back to clobber + const context = {isCanceled: false}; - // Warn about using preserveTimestamps on 32-bit node - if (opts.preserveTimestamps && process.arch === 'ia32') { - console.warn(`fs-extra: Using the preserveTimestamps option in 32-bit node is not recommended;\n - see https://github.com/jprichardson/node-fs-extra/issues/269`) - } + spawned.kill = spawnedKill.bind(null, spawned.kill.bind(spawned)); + spawned.cancel = spawnedCancel.bind(null, spawned, context); - stat.checkPaths(src, dest, 'copy', (err, stats) => { - if (err) return cb(err) - const { srcStat, destStat } = stats - stat.checkParentPaths(src, srcStat, dest, 'copy', err => { - if (err) return cb(err) - if (opts.filter) return handleFilter(checkParentDir, destStat, src, dest, opts, cb) - return checkParentDir(destStat, src, dest, opts, cb) - }) - }) -} + const handlePromise = async () => { + const [{error, exitCode, signal, timedOut}, stdoutResult, stderrResult, allResult] = await getSpawnedResult(spawned, parsed.options, processDone); + const stdout = handleOutput(parsed.options, stdoutResult); + const stderr = handleOutput(parsed.options, stderrResult); + const all = handleOutput(parsed.options, allResult); -function checkParentDir (destStat, src, dest, opts, cb) { - const destParent = path.dirname(dest) - pathExists(destParent, (err, dirExists) => { - if (err) return cb(err) - if (dirExists) return startCopy(destStat, src, dest, opts, cb) - mkdirp(destParent, err => { - if (err) return cb(err) - return startCopy(destStat, src, dest, opts, cb) - }) - }) -} + if (error || exitCode !== 0 || signal !== null) { + const returnedError = makeError({ + error, + exitCode, + signal, + stdout, + stderr, + all, + command, + escapedCommand, + parsed, + timedOut, + isCanceled: context.isCanceled, + killed: spawned.killed + }); -function handleFilter (onInclude, destStat, src, dest, opts, cb) { - Promise.resolve(opts.filter(src, dest)).then(include => { - if (include) return onInclude(destStat, src, dest, opts, cb) - return cb() - }, error => cb(error)) -} - -function startCopy (destStat, src, dest, opts, cb) { - if (opts.filter) return handleFilter(getStats, destStat, src, dest, opts, cb) - return getStats(destStat, src, dest, opts, cb) -} + if (!parsed.options.reject) { + return returnedError; + } -function getStats (destStat, src, dest, opts, cb) { - const stat = opts.dereference ? fs.stat : fs.lstat - stat(src, (err, srcStat) => { - if (err) return cb(err) + throw returnedError; + } - if (srcStat.isDirectory()) return onDir(srcStat, destStat, src, dest, opts, cb) - else if (srcStat.isFile() || - srcStat.isCharacterDevice() || - srcStat.isBlockDevice()) return onFile(srcStat, destStat, src, dest, opts, cb) - else if (srcStat.isSymbolicLink()) return onLink(destStat, src, dest, opts, cb) - }) -} + return { + command, + escapedCommand, + exitCode: 0, + stdout, + stderr, + all, + failed: false, + timedOut: false, + isCanceled: false, + killed: false + }; + }; -function onFile (srcStat, destStat, src, dest, opts, cb) { - if (!destStat) return copyFile(srcStat, src, dest, opts, cb) - return mayCopyFile(srcStat, src, dest, opts, cb) -} + const handlePromiseOnce = onetime(handlePromise); -function mayCopyFile (srcStat, src, dest, opts, cb) { - if (opts.overwrite) { - fs.unlink(dest, err => { - if (err) return cb(err) - return copyFile(srcStat, src, dest, opts, cb) - }) - } else if (opts.errorOnExist) { - return cb(new Error(`'${dest}' already exists`)) - } else return cb() -} + handleInput(spawned, parsed.options.input); -function copyFile (srcStat, src, dest, opts, cb) { - if (typeof fs.copyFile === 'function') { - return fs.copyFile(src, dest, err => { - if (err) return cb(err) - return setDestModeAndTimestamps(srcStat, dest, opts, cb) - }) - } - return copyFileFallback(srcStat, src, dest, opts, cb) -} + spawned.all = makeAllStream(spawned, parsed.options); -function copyFileFallback (srcStat, src, dest, opts, cb) { - const rs = fs.createReadStream(src) - rs.on('error', err => cb(err)).once('open', () => { - const ws = fs.createWriteStream(dest, { mode: srcStat.mode }) - ws.on('error', err => cb(err)) - .on('open', () => rs.pipe(ws)) - .once('close', () => setDestModeAndTimestamps(srcStat, dest, opts, cb)) - }) -} + return mergePromise(spawned, handlePromiseOnce); +}; -function setDestModeAndTimestamps (srcStat, dest, opts, cb) { - fs.chmod(dest, srcStat.mode, err => { - if (err) return cb(err) - if (opts.preserveTimestamps) { - return utimes(dest, srcStat.atime, srcStat.mtime, cb) - } - return cb() - }) -} +module.exports = execa; -function onDir (srcStat, destStat, src, dest, opts, cb) { - if (!destStat) return mkDirAndCopy(srcStat, src, dest, opts, cb) - if (destStat && !destStat.isDirectory()) { - return cb(new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`)) - } - return copyDir(src, dest, opts, cb) -} +module.exports.sync = (file, args, options) => { + const parsed = handleArguments(file, args, options); + const command = joinCommand(file, args); + const escapedCommand = getEscapedCommand(file, args); -function mkDirAndCopy (srcStat, src, dest, opts, cb) { - fs.mkdir(dest, err => { - if (err) return cb(err) - copyDir(src, dest, opts, err => { - if (err) return cb(err) - return fs.chmod(dest, srcStat.mode, cb) - }) - }) -} + validateInputSync(parsed.options); -function copyDir (src, dest, opts, cb) { - fs.readdir(src, (err, items) => { - if (err) return cb(err) - return copyDirItems(items, src, dest, opts, cb) - }) -} + let result; + try { + result = childProcess.spawnSync(parsed.file, parsed.args, parsed.options); + } catch (error) { + throw makeError({ + error, + stdout: '', + stderr: '', + all: '', + command, + escapedCommand, + parsed, + timedOut: false, + isCanceled: false, + killed: false + }); + } -function copyDirItems (items, src, dest, opts, cb) { - const item = items.pop() - if (!item) return cb() - return copyDirItem(items, item, src, dest, opts, cb) -} + const stdout = handleOutput(parsed.options, result.stdout, result.error); + const stderr = handleOutput(parsed.options, result.stderr, result.error); -function copyDirItem (items, item, src, dest, opts, cb) { - const srcItem = path.join(src, item) - const destItem = path.join(dest, item) - stat.checkPaths(srcItem, destItem, 'copy', (err, stats) => { - if (err) return cb(err) - const { destStat } = stats - startCopy(destStat, srcItem, destItem, opts, err => { - if (err) return cb(err) - return copyDirItems(items, src, dest, opts, cb) - }) - }) -} + if (result.error || result.status !== 0 || result.signal !== null) { + const error = makeError({ + stdout, + stderr, + error: result.error, + signal: result.signal, + exitCode: result.status, + command, + escapedCommand, + parsed, + timedOut: result.error && result.error.code === 'ETIMEDOUT', + isCanceled: false, + killed: result.signal !== null + }); -function onLink (destStat, src, dest, opts, cb) { - fs.readlink(src, (err, resolvedSrc) => { - if (err) return cb(err) - if (opts.dereference) { - resolvedSrc = path.resolve(process.cwd(), resolvedSrc) - } + if (!parsed.options.reject) { + return error; + } - if (!destStat) { - return fs.symlink(resolvedSrc, dest, cb) - } else { - fs.readlink(dest, (err, resolvedDest) => { - if (err) { - // dest exists and is a regular file or directory, - // Windows may throw UNKNOWN error. If dest already exists, - // fs throws error anyway, so no need to guard against it here. - if (err.code === 'EINVAL' || err.code === 'UNKNOWN') return fs.symlink(resolvedSrc, dest, cb) - return cb(err) - } - if (opts.dereference) { - resolvedDest = path.resolve(process.cwd(), resolvedDest) - } - if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) { - return cb(new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`)) - } + throw error; + } - // do not copy if src is a subdir of dest since unlinking - // dest in this case would result in removing src contents - // and therefore a broken symlink would be created. - if (destStat.isDirectory() && stat.isSrcSubdir(resolvedDest, resolvedSrc)) { - return cb(new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`)) - } - return copyLink(resolvedSrc, dest, cb) - }) - } - }) -} + return { + command, + escapedCommand, + exitCode: 0, + stdout, + stderr, + failed: false, + timedOut: false, + isCanceled: false, + killed: false + }; +}; -function copyLink (resolvedSrc, dest, cb) { - fs.unlink(dest, err => { - if (err) return cb(err) - return fs.symlink(resolvedSrc, dest, cb) - }) -} +module.exports.command = (command, options) => { + const [file, ...args] = parseCommand(command); + return execa(file, args, options); +}; -module.exports = copy +module.exports.commandSync = (command, options) => { + const [file, ...args] = parseCommand(command); + return execa.sync(file, args, options); +}; +module.exports.node = (scriptPath, args, options = {}) => { + if (args && !Array.isArray(args) && typeof args === 'object') { + options = args; + args = []; + } -/***/ }), + const stdio = normalizeStdio.node(options); + const defaultExecArgv = process.execArgv.filter(arg => !arg.startsWith('--inspect')); -/***/ 32558: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + const { + nodePath = process.execPath, + nodeOptions = defaultExecArgv + } = options; + return execa( + nodePath, + [ + ...nodeOptions, + scriptPath, + ...(Array.isArray(args) ? args : []) + ], + { + ...options, + stdin: undefined, + stdout: undefined, + stderr: undefined, + stdio, + shell: false + } + ); +}; -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -module.exports = { - copy: u(__nccwpck_require__(65737)) -} +/***/ }), +/***/ 4435: +/***/ ((module) => { -/***/ }), -/***/ 77032: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +const normalizeArgs = (file, args = []) => { + if (!Array.isArray(args)) { + return [file]; + } + return [file, ...args]; +}; +const NO_ESCAPE_REGEXP = /^[\w.-]+$/; +const DOUBLE_QUOTES_REGEXP = /"/g; -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const mkdir = __nccwpck_require__(77999) -const remove = __nccwpck_require__(84507) +const escapeArg = arg => { + if (typeof arg !== 'string' || NO_ESCAPE_REGEXP.test(arg)) { + return arg; + } -const emptyDir = u(function emptyDir (dir, callback) { - callback = callback || function () {} - fs.readdir(dir, (err, items) => { - if (err) return mkdir.mkdirs(dir, callback) + return `"${arg.replace(DOUBLE_QUOTES_REGEXP, '\\"')}"`; +}; - items = items.map(item => path.join(dir, item)) +const joinCommand = (file, args) => { + return normalizeArgs(file, args).join(' '); +}; - deleteItem() +const getEscapedCommand = (file, args) => { + return normalizeArgs(file, args).map(arg => escapeArg(arg)).join(' '); +}; - function deleteItem () { - const item = items.pop() - if (!item) return callback() - remove.remove(item, err => { - if (err) return callback(err) - deleteItem() - }) - } - }) -}) +const SPACES_REGEXP = / +/g; -function emptyDirSync (dir) { - let items - try { - items = fs.readdirSync(dir) - } catch (err) { - return mkdir.mkdirsSync(dir) - } +// Handle `execa.command()` +const parseCommand = command => { + const tokens = []; + for (const token of command.trim().split(SPACES_REGEXP)) { + // Allow spaces to be escaped by a backslash if not meant as a delimiter + const previousToken = tokens[tokens.length - 1]; + if (previousToken && previousToken.endsWith('\\')) { + // Merge previous token with current one + tokens[tokens.length - 1] = `${previousToken.slice(0, -1)} ${token}`; + } else { + tokens.push(token); + } + } - items.forEach(item => { - item = path.join(dir, item) - remove.removeSync(item) - }) -} + return tokens; +}; module.exports = { - emptyDirSync, - emptydirSync: emptyDirSync, - emptyDir, - emptydir: emptyDir -} + joinCommand, + getEscapedCommand, + parseCommand +}; /***/ }), -/***/ 17731: +/***/ 5156: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +const {signalsByName} = __nccwpck_require__(4743); -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const path = __nccwpck_require__(16928) -const fs = __nccwpck_require__(61404) -const mkdir = __nccwpck_require__(77999) -const pathExists = (__nccwpck_require__(53647).pathExists) +const getErrorPrefix = ({timedOut, timeout, errorCode, signal, signalDescription, exitCode, isCanceled}) => { + if (timedOut) { + return `timed out after ${timeout} milliseconds`; + } -function createFile (file, callback) { - function makeFile () { - fs.writeFile(file, '', err => { - if (err) return callback(err) - callback() - }) - } + if (isCanceled) { + return 'was canceled'; + } - fs.stat(file, (err, stats) => { // eslint-disable-line handle-callback-err - if (!err && stats.isFile()) return callback() - const dir = path.dirname(file) - pathExists(dir, (err, dirExists) => { - if (err) return callback(err) - if (dirExists) return makeFile() - mkdir.mkdirs(dir, err => { - if (err) return callback(err) - makeFile() - }) - }) - }) -} + if (errorCode !== undefined) { + return `failed with ${errorCode}`; + } -function createFileSync (file) { - let stats - try { - stats = fs.statSync(file) - } catch (e) {} - if (stats && stats.isFile()) return + if (signal !== undefined) { + return `was killed with ${signal} (${signalDescription})`; + } - const dir = path.dirname(file) - if (!fs.existsSync(dir)) { - mkdir.mkdirsSync(dir) - } + if (exitCode !== undefined) { + return `failed with exit code ${exitCode}`; + } - fs.writeFileSync(file, '') -} + return 'failed'; +}; -module.exports = { - createFile: u(createFile), - createFileSync -} +const makeError = ({ + stdout, + stderr, + all, + error, + signal, + exitCode, + command, + escapedCommand, + timedOut, + isCanceled, + killed, + parsed: {options: {timeout}} +}) => { + // `signal` and `exitCode` emitted on `spawned.on('exit')` event can be `null`. + // We normalize them to `undefined` + exitCode = exitCode === null ? undefined : exitCode; + signal = signal === null ? undefined : signal; + const signalDescription = signal === undefined ? undefined : signalsByName[signal].description; + const errorCode = error && error.code; -/***/ }), + const prefix = getErrorPrefix({timedOut, timeout, errorCode, signal, signalDescription, exitCode, isCanceled}); + const execaMessage = `Command ${prefix}: ${command}`; + const isError = Object.prototype.toString.call(error) === '[object Error]'; + const shortMessage = isError ? `${execaMessage}\n${error.message}` : execaMessage; + const message = [shortMessage, stderr, stdout].filter(Boolean).join('\n'); -/***/ 25985: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if (isError) { + error.originalMessage = error.message; + error.message = message; + } else { + error = new Error(message); + } + error.shortMessage = shortMessage; + error.command = command; + error.escapedCommand = escapedCommand; + error.exitCode = exitCode; + error.signal = signal; + error.signalDescription = signalDescription; + error.stdout = stdout; + error.stderr = stderr; + if (all !== undefined) { + error.all = all; + } -const file = __nccwpck_require__(17731) -const link = __nccwpck_require__(8381) -const symlink = __nccwpck_require__(12062) + if ('bufferedData' in error) { + delete error.bufferedData; + } -module.exports = { - // file - createFile: file.createFile, - createFileSync: file.createFileSync, - ensureFile: file.createFile, - ensureFileSync: file.createFileSync, - // link - createLink: link.createLink, - createLinkSync: link.createLinkSync, - ensureLink: link.createLink, - ensureLinkSync: link.createLinkSync, - // symlink - createSymlink: symlink.createSymlink, - createSymlinkSync: symlink.createSymlinkSync, - ensureSymlink: symlink.createSymlink, - ensureSymlinkSync: symlink.createSymlinkSync -} + error.failed = true; + error.timedOut = Boolean(timedOut); + error.isCanceled = isCanceled; + error.killed = killed && !timedOut; + + return error; +}; + +module.exports = makeError; /***/ }), -/***/ 8381: +/***/ 9388: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +const os = __nccwpck_require__(857); +const onExit = __nccwpck_require__(6821); -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const path = __nccwpck_require__(16928) -const fs = __nccwpck_require__(61404) -const mkdir = __nccwpck_require__(77999) -const pathExists = (__nccwpck_require__(53647).pathExists) - -function createLink (srcpath, dstpath, callback) { - function makeLink (srcpath, dstpath) { - fs.link(srcpath, dstpath, err => { - if (err) return callback(err) - callback(null) - }) - } +const DEFAULT_FORCE_KILL_TIMEOUT = 1000 * 5; - pathExists(dstpath, (err, destinationExists) => { - if (err) return callback(err) - if (destinationExists) return callback(null) - fs.lstat(srcpath, (err) => { - if (err) { - err.message = err.message.replace('lstat', 'ensureLink') - return callback(err) - } +// Monkey-patches `childProcess.kill()` to add `forceKillAfterTimeout` behavior +const spawnedKill = (kill, signal = 'SIGTERM', options = {}) => { + const killResult = kill(signal); + setKillTimeout(kill, signal, options, killResult); + return killResult; +}; - const dir = path.dirname(dstpath) - pathExists(dir, (err, dirExists) => { - if (err) return callback(err) - if (dirExists) return makeLink(srcpath, dstpath) - mkdir.mkdirs(dir, err => { - if (err) return callback(err) - makeLink(srcpath, dstpath) - }) - }) - }) - }) -} +const setKillTimeout = (kill, signal, options, killResult) => { + if (!shouldForceKill(signal, options, killResult)) { + return; + } -function createLinkSync (srcpath, dstpath) { - const destinationExists = fs.existsSync(dstpath) - if (destinationExists) return undefined + const timeout = getForceKillAfterTimeout(options); + const t = setTimeout(() => { + kill('SIGKILL'); + }, timeout); - try { - fs.lstatSync(srcpath) - } catch (err) { - err.message = err.message.replace('lstat', 'ensureLink') - throw err - } - - const dir = path.dirname(dstpath) - const dirExists = fs.existsSync(dir) - if (dirExists) return fs.linkSync(srcpath, dstpath) - mkdir.mkdirsSync(dir) - - return fs.linkSync(srcpath, dstpath) -} - -module.exports = { - createLink: u(createLink), - createLinkSync -} - - -/***/ }), - -/***/ 37363: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + // Guarded because there's no `.unref()` when `execa` is used in the renderer + // process in Electron. This cannot be tested since we don't run tests in + // Electron. + // istanbul ignore else + if (t.unref) { + t.unref(); + } +}; +const shouldForceKill = (signal, {forceKillAfterTimeout}, killResult) => { + return isSigterm(signal) && forceKillAfterTimeout !== false && killResult; +}; +const isSigterm = signal => { + return signal === os.constants.signals.SIGTERM || + (typeof signal === 'string' && signal.toUpperCase() === 'SIGTERM'); +}; -const path = __nccwpck_require__(16928) -const fs = __nccwpck_require__(61404) -const pathExists = (__nccwpck_require__(53647).pathExists) +const getForceKillAfterTimeout = ({forceKillAfterTimeout = true}) => { + if (forceKillAfterTimeout === true) { + return DEFAULT_FORCE_KILL_TIMEOUT; + } -/** - * Function that returns two types of paths, one relative to symlink, and one - * relative to the current working directory. Checks if path is absolute or - * relative. If the path is relative, this function checks if the path is - * relative to symlink or relative to current working directory. This is an - * initiative to find a smarter `srcpath` to supply when building symlinks. - * This allows you to determine which path to use out of one of three possible - * types of source paths. The first is an absolute path. This is detected by - * `path.isAbsolute()`. When an absolute path is provided, it is checked to - * see if it exists. If it does it's used, if not an error is returned - * (callback)/ thrown (sync). The other two options for `srcpath` are a - * relative url. By default Node's `fs.symlink` works by creating a symlink - * using `dstpath` and expects the `srcpath` to be relative to the newly - * created symlink. If you provide a `srcpath` that does not exist on the file - * system it results in a broken symlink. To minimize this, the function - * checks to see if the 'relative to symlink' source file exists, and if it - * does it will use it. If it does not, it checks if there's a file that - * exists that is relative to the current working directory, if does its used. - * This preserves the expectations of the original fs.symlink spec and adds - * the ability to pass in `relative to current working direcotry` paths. - */ + if (!Number.isFinite(forceKillAfterTimeout) || forceKillAfterTimeout < 0) { + throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${forceKillAfterTimeout}\` (${typeof forceKillAfterTimeout})`); + } -function symlinkPaths (srcpath, dstpath, callback) { - if (path.isAbsolute(srcpath)) { - return fs.lstat(srcpath, (err) => { - if (err) { - err.message = err.message.replace('lstat', 'ensureSymlink') - return callback(err) - } - return callback(null, { - 'toCwd': srcpath, - 'toDst': srcpath - }) - }) - } else { - const dstdir = path.dirname(dstpath) - const relativeToDst = path.join(dstdir, srcpath) - return pathExists(relativeToDst, (err, exists) => { - if (err) return callback(err) - if (exists) { - return callback(null, { - 'toCwd': relativeToDst, - 'toDst': srcpath - }) - } else { - return fs.lstat(srcpath, (err) => { - if (err) { - err.message = err.message.replace('lstat', 'ensureSymlink') - return callback(err) - } - return callback(null, { - 'toCwd': srcpath, - 'toDst': path.relative(dstdir, srcpath) - }) - }) - } - }) - } -} + return forceKillAfterTimeout; +}; -function symlinkPathsSync (srcpath, dstpath) { - let exists - if (path.isAbsolute(srcpath)) { - exists = fs.existsSync(srcpath) - if (!exists) throw new Error('absolute srcpath does not exist') - return { - 'toCwd': srcpath, - 'toDst': srcpath - } - } else { - const dstdir = path.dirname(dstpath) - const relativeToDst = path.join(dstdir, srcpath) - exists = fs.existsSync(relativeToDst) - if (exists) { - return { - 'toCwd': relativeToDst, - 'toDst': srcpath - } - } else { - exists = fs.existsSync(srcpath) - if (!exists) throw new Error('relative srcpath does not exist') - return { - 'toCwd': srcpath, - 'toDst': path.relative(dstdir, srcpath) - } - } - } -} +// `childProcess.cancel()` +const spawnedCancel = (spawned, context) => { + const killResult = spawned.kill(); -module.exports = { - symlinkPaths, - symlinkPathsSync -} + if (killResult) { + context.isCanceled = true; + } +}; +const timeoutKill = (spawned, signal, reject) => { + spawned.kill(signal); + reject(Object.assign(new Error('Timed out'), {timedOut: true, signal})); +}; -/***/ }), +// `timeout` option handling +const setupTimeout = (spawned, {timeout, killSignal = 'SIGTERM'}, spawnedPromise) => { + if (timeout === 0 || timeout === undefined) { + return spawnedPromise; + } -/***/ 93959: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + let timeoutId; + const timeoutPromise = new Promise((resolve, reject) => { + timeoutId = setTimeout(() => { + timeoutKill(spawned, killSignal, reject); + }, timeout); + }); + const safeSpawnedPromise = spawnedPromise.finally(() => { + clearTimeout(timeoutId); + }); + return Promise.race([timeoutPromise, safeSpawnedPromise]); +}; -const fs = __nccwpck_require__(61404) +const validateTimeout = ({timeout}) => { + if (timeout !== undefined && (!Number.isFinite(timeout) || timeout < 0)) { + throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${timeout}\` (${typeof timeout})`); + } +}; -function symlinkType (srcpath, type, callback) { - callback = (typeof type === 'function') ? type : callback - type = (typeof type === 'function') ? false : type - if (type) return callback(null, type) - fs.lstat(srcpath, (err, stats) => { - if (err) return callback(null, 'file') - type = (stats && stats.isDirectory()) ? 'dir' : 'file' - callback(null, type) - }) -} +// `cleanup` option handling +const setExitHandler = async (spawned, {cleanup, detached}, timedPromise) => { + if (!cleanup || detached) { + return timedPromise; + } -function symlinkTypeSync (srcpath, type) { - let stats + const removeExitHandler = onExit(() => { + spawned.kill(); + }); - if (type) return type - try { - stats = fs.lstatSync(srcpath) - } catch (e) { - return 'file' - } - return (stats && stats.isDirectory()) ? 'dir' : 'file' -} + return timedPromise.finally(() => { + removeExitHandler(); + }); +}; module.exports = { - symlinkType, - symlinkTypeSync -} + spawnedKill, + spawnedCancel, + setupTimeout, + validateTimeout, + setExitHandler +}; /***/ }), -/***/ 12062: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - +/***/ 8531: +/***/ ((module) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const path = __nccwpck_require__(16928) -const fs = __nccwpck_require__(61404) -const _mkdirs = __nccwpck_require__(77999) -const mkdirs = _mkdirs.mkdirs -const mkdirsSync = _mkdirs.mkdirsSync -const _symlinkPaths = __nccwpck_require__(37363) -const symlinkPaths = _symlinkPaths.symlinkPaths -const symlinkPathsSync = _symlinkPaths.symlinkPathsSync +const nativePromisePrototype = (async () => {})().constructor.prototype; +const descriptors = ['then', 'catch', 'finally'].map(property => [ + property, + Reflect.getOwnPropertyDescriptor(nativePromisePrototype, property) +]); -const _symlinkType = __nccwpck_require__(93959) -const symlinkType = _symlinkType.symlinkType -const symlinkTypeSync = _symlinkType.symlinkTypeSync +// The return value is a mixin of `childProcess` and `Promise` +const mergePromise = (spawned, promise) => { + for (const [property, descriptor] of descriptors) { + // Starting the main `promise` is deferred to avoid consuming streams + const value = typeof promise === 'function' ? + (...args) => Reflect.apply(descriptor.value, promise(), args) : + descriptor.value.bind(promise); -const pathExists = (__nccwpck_require__(53647).pathExists) + Reflect.defineProperty(spawned, property, {...descriptor, value}); + } -function createSymlink (srcpath, dstpath, type, callback) { - callback = (typeof type === 'function') ? type : callback - type = (typeof type === 'function') ? false : type + return spawned; +}; - pathExists(dstpath, (err, destinationExists) => { - if (err) return callback(err) - if (destinationExists) return callback(null) - symlinkPaths(srcpath, dstpath, (err, relative) => { - if (err) return callback(err) - srcpath = relative.toDst - symlinkType(relative.toCwd, type, (err, type) => { - if (err) return callback(err) - const dir = path.dirname(dstpath) - pathExists(dir, (err, dirExists) => { - if (err) return callback(err) - if (dirExists) return fs.symlink(srcpath, dstpath, type, callback) - mkdirs(dir, err => { - if (err) return callback(err) - fs.symlink(srcpath, dstpath, type, callback) - }) - }) - }) - }) - }) -} +// Use promises instead of `child_process` events +const getSpawnedPromise = spawned => { + return new Promise((resolve, reject) => { + spawned.on('exit', (exitCode, signal) => { + resolve({exitCode, signal}); + }); -function createSymlinkSync (srcpath, dstpath, type) { - const destinationExists = fs.existsSync(dstpath) - if (destinationExists) return undefined + spawned.on('error', error => { + reject(error); + }); - const relative = symlinkPathsSync(srcpath, dstpath) - srcpath = relative.toDst - type = symlinkTypeSync(relative.toCwd, type) - const dir = path.dirname(dstpath) - const exists = fs.existsSync(dir) - if (exists) return fs.symlinkSync(srcpath, dstpath, type) - mkdirsSync(dir) - return fs.symlinkSync(srcpath, dstpath, type) -} + if (spawned.stdin) { + spawned.stdin.on('error', error => { + reject(error); + }); + } + }); +}; module.exports = { - createSymlink: u(createSymlink), - createSymlinkSync -} - + mergePromise, + getSpawnedPromise +}; -/***/ }), -/***/ 58684: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +/***/ }), -// This is adapted from https://github.com/normalize/mz -// Copyright (c) 2014-2016 Jonathan Ong me@jongleberry.com and Contributors -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const fs = __nccwpck_require__(61404) +/***/ 2319: +/***/ ((module) => { -const api = [ - 'access', - 'appendFile', - 'chmod', - 'chown', - 'close', - 'copyFile', - 'fchmod', - 'fchown', - 'fdatasync', - 'fstat', - 'fsync', - 'ftruncate', - 'futimes', - 'lchown', - 'lchmod', - 'link', - 'lstat', - 'mkdir', - 'mkdtemp', - 'open', - 'readFile', - 'readdir', - 'readlink', - 'realpath', - 'rename', - 'rmdir', - 'stat', - 'symlink', - 'truncate', - 'unlink', - 'utimes', - 'writeFile' -].filter(key => { - // Some commands are not available on some systems. Ex: - // fs.copyFile was added in Node.js v8.5.0 - // fs.mkdtemp was added in Node.js v5.10.0 - // fs.lchown is not available on at least some Linux - return typeof fs[key] === 'function' -}) -// Export all keys: -Object.keys(fs).forEach(key => { - if (key === 'promises') { - // fs.promises is a getter property that triggers ExperimentalWarning - // Don't re-export it here, the getter is defined in "lib/index.js" - return - } - exports[key] = fs[key] -}) +const aliases = ['stdin', 'stdout', 'stderr']; -// Universalify async methods: -api.forEach(method => { - exports[method] = u(fs[method]) -}) +const hasAlias = options => aliases.some(alias => options[alias] !== undefined); -// We differ from mz/fs in that we still ship the old, broken, fs.exists() -// since we are a drop-in replacement for the native module -exports.exists = function (filename, callback) { - if (typeof callback === 'function') { - return fs.exists(filename, callback) - } - return new Promise(resolve => { - return fs.exists(filename, resolve) - }) -} +const normalizeStdio = options => { + if (!options) { + return; + } -// fs.read() & fs.write need special treatment due to multiple callback args + const {stdio} = options; -exports.read = function (fd, buffer, offset, length, position, callback) { - if (typeof callback === 'function') { - return fs.read(fd, buffer, offset, length, position, callback) - } - return new Promise((resolve, reject) => { - fs.read(fd, buffer, offset, length, position, (err, bytesRead, buffer) => { - if (err) return reject(err) - resolve({ bytesRead, buffer }) - }) - }) -} + if (stdio === undefined) { + return aliases.map(alias => options[alias]); + } -// Function signature can be -// fs.write(fd, buffer[, offset[, length[, position]]], callback) -// OR -// fs.write(fd, string[, position[, encoding]], callback) -// We need to handle both cases, so we use ...args -exports.write = function (fd, buffer, ...args) { - if (typeof args[args.length - 1] === 'function') { - return fs.write(fd, buffer, ...args) - } + if (hasAlias(options)) { + throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${aliases.map(alias => `\`${alias}\``).join(', ')}`); + } - return new Promise((resolve, reject) => { - fs.write(fd, buffer, ...args, (err, bytesWritten, buffer) => { - if (err) return reject(err) - resolve({ bytesWritten, buffer }) - }) - }) -} + if (typeof stdio === 'string') { + return stdio; + } -// fs.realpath.native only available in Node v9.2+ -if (typeof fs.realpath.native === 'function') { - exports.realpath.native = u(fs.realpath.native) -} + if (!Array.isArray(stdio)) { + throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof stdio}\``); + } + const length = Math.max(stdio.length, aliases.length); + return Array.from({length}, (value, index) => stdio[index]); +}; -/***/ }), +module.exports = normalizeStdio; -/***/ 5810: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +// `ipc` is pushed unless it is already present +module.exports.node = options => { + const stdio = normalizeStdio(options); + if (stdio === 'ipc') { + return 'ipc'; + } + if (stdio === undefined || typeof stdio === 'string') { + return [stdio, stdio, stdio, 'ipc']; + } -module.exports = Object.assign( - {}, - // Export promiseified graceful-fs: - __nccwpck_require__(58684), - // Export extra methods: - __nccwpck_require__(36278), - __nccwpck_require__(32558), - __nccwpck_require__(77032), - __nccwpck_require__(25985), - __nccwpck_require__(60457), - __nccwpck_require__(77999), - __nccwpck_require__(3262), - __nccwpck_require__(59926), - __nccwpck_require__(78778), - __nccwpck_require__(53647), - __nccwpck_require__(84507) -) + if (stdio.includes('ipc')) { + return stdio; + } -// Export fs.promises as a getter property so that we don't trigger -// ExperimentalWarning before fs.promises is actually accessed. -const fs = __nccwpck_require__(79896) -if (Object.getOwnPropertyDescriptor(fs, 'promises')) { - Object.defineProperty(module.exports, "promises", ({ - get () { return fs.promises } - })) -} + return [...stdio, 'ipc']; +}; /***/ }), -/***/ 60457: +/***/ 6852: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +const isStream = __nccwpck_require__(1066); +const getStream = __nccwpck_require__(2462); +const mergeStream = __nccwpck_require__(353); -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const jsonFile = __nccwpck_require__(46333) - -jsonFile.outputJson = u(__nccwpck_require__(49483)) -jsonFile.outputJsonSync = __nccwpck_require__(74363) -// aliases -jsonFile.outputJSON = jsonFile.outputJson -jsonFile.outputJSONSync = jsonFile.outputJsonSync -jsonFile.writeJSON = jsonFile.writeJson -jsonFile.writeJSONSync = jsonFile.writeJsonSync -jsonFile.readJSON = jsonFile.readJson -jsonFile.readJSONSync = jsonFile.readJsonSync +// `input` option +const handleInput = (spawned, input) => { + // Checking for stdin is workaround for https://github.com/nodejs/node/issues/26852 + // @todo remove `|| spawned.stdin === undefined` once we drop support for Node.js <=12.2.0 + if (input === undefined || spawned.stdin === undefined) { + return; + } -module.exports = jsonFile + if (isStream(input)) { + input.pipe(spawned.stdin); + } else { + spawned.stdin.end(input); + } +}; +// `all` interleaves `stdout` and `stderr` +const makeAllStream = (spawned, {all}) => { + if (!all || (!spawned.stdout && !spawned.stderr)) { + return; + } -/***/ }), + const mixed = mergeStream(); -/***/ 46333: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if (spawned.stdout) { + mixed.add(spawned.stdout); + } + if (spawned.stderr) { + mixed.add(spawned.stderr); + } + return mixed; +}; -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const jsonFile = __nccwpck_require__(93588) +// On failure, `result.stdout|stderr|all` should contain the currently buffered stream +const getBufferedData = async (stream, streamPromise) => { + if (!stream) { + return; + } -module.exports = { - // jsonfile exports - readJson: u(jsonFile.readFile), - readJsonSync: jsonFile.readFileSync, - writeJson: u(jsonFile.writeFile), - writeJsonSync: jsonFile.writeFileSync -} + stream.destroy(); + try { + return await streamPromise; + } catch (error) { + return error.bufferedData; + } +}; -/***/ }), - -/***/ 74363: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +const getStreamPromise = (stream, {encoding, buffer, maxBuffer}) => { + if (!stream || !buffer) { + return; + } + if (encoding) { + return getStream(stream, {encoding, maxBuffer}); + } + return getStream.buffer(stream, {maxBuffer}); +}; -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const mkdir = __nccwpck_require__(77999) -const jsonFile = __nccwpck_require__(46333) +// Retrieve result of child process: exit code, signal, error, streams (stdout/stderr/all) +const getSpawnedResult = async ({stdout, stderr, all}, {encoding, buffer, maxBuffer}, processDone) => { + const stdoutPromise = getStreamPromise(stdout, {encoding, buffer, maxBuffer}); + const stderrPromise = getStreamPromise(stderr, {encoding, buffer, maxBuffer}); + const allPromise = getStreamPromise(all, {encoding, buffer, maxBuffer: maxBuffer * 2}); -function outputJsonSync (file, data, options) { - const dir = path.dirname(file) + try { + return await Promise.all([processDone, stdoutPromise, stderrPromise, allPromise]); + } catch (error) { + return Promise.all([ + {error, signal: error.signal, timedOut: error.timedOut}, + getBufferedData(stdout, stdoutPromise), + getBufferedData(stderr, stderrPromise), + getBufferedData(all, allPromise) + ]); + } +}; - if (!fs.existsSync(dir)) { - mkdir.mkdirsSync(dir) - } +const validateInputSync = ({input}) => { + if (isStream(input)) { + throw new TypeError('The `input` option cannot be a stream in sync mode'); + } +}; - jsonFile.writeJsonSync(file, data, options) -} +module.exports = { + handleInput, + makeAllStream, + getSpawnedResult, + validateInputSync +}; -module.exports = outputJsonSync /***/ }), -/***/ 49483: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -const path = __nccwpck_require__(16928) -const mkdir = __nccwpck_require__(77999) -const pathExists = (__nccwpck_require__(53647).pathExists) -const jsonFile = __nccwpck_require__(46333) - -function outputJson (file, data, options, callback) { - if (typeof options === 'function') { - callback = options - options = {} - } - - const dir = path.dirname(file) - - pathExists(dir, (err, itDoes) => { - if (err) return callback(err) - if (itDoes) return jsonFile.writeJson(file, data, options, callback) - - mkdir.mkdirs(dir, err => { - if (err) return callback(err) - jsonFile.writeJson(file, data, options, callback) - }) - }) -} +/***/ 1456: +/***/ (function(__unused_webpack_module, exports) { -module.exports = outputJson +var __extends = (this && this.__extends) || (function () { + var extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; + return function (d, b) { + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); + }; +})(); +Object.defineProperty(exports, "__esModule", ({ value: true })); +var ExtendableError = /** @class */ (function (_super) { + __extends(ExtendableError, _super); + function ExtendableError(message) { + var _newTarget = this.constructor; + if (message === void 0) { message = ''; } + var _this = _super.call(this, message) || this; + _this.message = message; + Object.setPrototypeOf(_this, _newTarget.prototype); + delete _this.stack; + _this.name = _newTarget.name; + _this._error = new Error(); + return _this; + } + Object.defineProperty(ExtendableError.prototype, "stack", { + get: function () { + if (this._stack) { + return this._stack; + } + var prototype = Object.getPrototypeOf(this); + var depth = 1; + loop: while (prototype) { + switch (prototype) { + case ExtendableError.prototype: + break loop; + case Object.prototype: + depth = 1; + break loop; + default: + depth++; + break; + } + prototype = Object.getPrototypeOf(prototype); + } + var stackLines = (this._error.stack || '').match(/.+/g) || []; + var nameLine = this.name; + if (this.message) { + nameLine += ": " + this.message; + } + stackLines.splice(0, depth + 1, nameLine); + return this._stack = stackLines.join('\n'); + }, + enumerable: true, + configurable: true + }); + return ExtendableError; +}(Error)); +exports.ExtendableError = ExtendableError; +exports["default"] = ExtendableError; +//# sourceMappingURL=index.js.map /***/ }), -/***/ 77999: +/***/ 2457: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const mkdirs = u(__nccwpck_require__(40931)) -const mkdirsSync = __nccwpck_require__(6419) - -module.exports = { - mkdirs, - mkdirsSync, - // alias - mkdirp: mkdirs, - mkdirpSync: mkdirsSync, - ensureDir: mkdirs, - ensureDirSync: mkdirsSync +const taskManager = __nccwpck_require__(6160); +const async_1 = __nccwpck_require__(3616); +const stream_1 = __nccwpck_require__(2410); +const sync_1 = __nccwpck_require__(3473); +const settings_1 = __nccwpck_require__(948); +const utils = __nccwpck_require__(123); +async function FastGlob(source, options) { + assertPatternsInput(source); + const works = getWorks(source, async_1.default, options); + const result = await Promise.all(works); + return utils.array.flatten(result); } - - -/***/ }), - -/***/ 6419: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const invalidWin32Path = (__nccwpck_require__(62936).invalidWin32Path) - -const o777 = parseInt('0777', 8) - -function mkdirsSync (p, opts, made) { - if (!opts || typeof opts !== 'object') { - opts = { mode: opts } - } - - let mode = opts.mode - const xfs = opts.fs || fs - - if (process.platform === 'win32' && invalidWin32Path(p)) { - const errInval = new Error(p + ' contains invalid WIN32 path characters.') - errInval.code = 'EINVAL' - throw errInval - } - - if (mode === undefined) { - mode = o777 & (~process.umask()) - } - if (!made) made = null - - p = path.resolve(p) - - try { - xfs.mkdirSync(p, mode) - made = made || p - } catch (err0) { - if (err0.code === 'ENOENT') { - if (path.dirname(p) === p) throw err0 - made = mkdirsSync(path.dirname(p), opts, made) - mkdirsSync(p, opts, made) - } else { - // In the case of any other error, just see if there's a dir there - // already. If so, then hooray! If not, then something is borked. - let stat - try { - stat = xfs.statSync(p) - } catch (err1) { - throw err0 - } - if (!stat.isDirectory()) throw err0 +// https://github.com/typescript-eslint/typescript-eslint/issues/60 +// eslint-disable-next-line no-redeclare +(function (FastGlob) { + FastGlob.glob = FastGlob; + FastGlob.globSync = sync; + FastGlob.globStream = stream; + FastGlob.async = FastGlob; + function sync(source, options) { + assertPatternsInput(source); + const works = getWorks(source, sync_1.default, options); + return utils.array.flatten(works); } - } - - return made + FastGlob.sync = sync; + function stream(source, options) { + assertPatternsInput(source); + const works = getWorks(source, stream_1.default, options); + /** + * The stream returned by the provider cannot work with an asynchronous iterator. + * To support asynchronous iterators, regardless of the number of tasks, we always multiplex streams. + * This affects performance (+25%). I don't see best solution right now. + */ + return utils.stream.merge(works); + } + FastGlob.stream = stream; + function generateTasks(source, options) { + assertPatternsInput(source); + const patterns = [].concat(source); + const settings = new settings_1.default(options); + return taskManager.generate(patterns, settings); + } + FastGlob.generateTasks = generateTasks; + function isDynamicPattern(source, options) { + assertPatternsInput(source); + const settings = new settings_1.default(options); + return utils.pattern.isDynamicPattern(source, settings); + } + FastGlob.isDynamicPattern = isDynamicPattern; + function escapePath(source) { + assertPatternsInput(source); + return utils.path.escape(source); + } + FastGlob.escapePath = escapePath; + function convertPathToPattern(source) { + assertPatternsInput(source); + return utils.path.convertPathToPattern(source); + } + FastGlob.convertPathToPattern = convertPathToPattern; + let posix; + (function (posix) { + function escapePath(source) { + assertPatternsInput(source); + return utils.path.escapePosixPath(source); + } + posix.escapePath = escapePath; + function convertPathToPattern(source) { + assertPatternsInput(source); + return utils.path.convertPosixPathToPattern(source); + } + posix.convertPathToPattern = convertPathToPattern; + })(posix = FastGlob.posix || (FastGlob.posix = {})); + let win32; + (function (win32) { + function escapePath(source) { + assertPatternsInput(source); + return utils.path.escapeWindowsPath(source); + } + win32.escapePath = escapePath; + function convertPathToPattern(source) { + assertPatternsInput(source); + return utils.path.convertWindowsPathToPattern(source); + } + win32.convertPathToPattern = convertPathToPattern; + })(win32 = FastGlob.win32 || (FastGlob.win32 = {})); +})(FastGlob || (FastGlob = {})); +function getWorks(source, _Provider, options) { + const patterns = [].concat(source); + const settings = new settings_1.default(options); + const tasks = taskManager.generate(patterns, settings); + const provider = new _Provider(settings); + return tasks.map(provider.read, provider); } - -module.exports = mkdirsSync +function assertPatternsInput(input) { + const source = [].concat(input); + const isValidSource = source.every((item) => utils.string.isString(item) && !utils.string.isEmpty(item)); + if (!isValidSource) { + throw new TypeError('Patterns must be a string (non empty) or an array of strings'); + } +} +module.exports = FastGlob; /***/ }), -/***/ 40931: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const invalidWin32Path = (__nccwpck_require__(62936).invalidWin32Path) - -const o777 = parseInt('0777', 8) - -function mkdirs (p, opts, callback, made) { - if (typeof opts === 'function') { - callback = opts - opts = {} - } else if (!opts || typeof opts !== 'object') { - opts = { mode: opts } - } - - if (process.platform === 'win32' && invalidWin32Path(p)) { - const errInval = new Error(p + ' contains invalid WIN32 path characters.') - errInval.code = 'EINVAL' - return callback(errInval) - } - - let mode = opts.mode - const xfs = opts.fs || fs - - if (mode === undefined) { - mode = o777 & (~process.umask()) - } - if (!made) made = null +/***/ 6160: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - callback = callback || function () {} - p = path.resolve(p) - xfs.mkdir(p, mode, er => { - if (!er) { - made = made || p - return callback(null, made) +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.convertPatternGroupToTask = exports.convertPatternGroupsToTasks = exports.groupPatternsByBaseDirectory = exports.getNegativePatternsAsPositive = exports.getPositivePatterns = exports.convertPatternsToTasks = exports.generate = void 0; +const utils = __nccwpck_require__(123); +function generate(input, settings) { + const patterns = processPatterns(input, settings); + const ignore = processPatterns(settings.ignore, settings); + const positivePatterns = getPositivePatterns(patterns); + const negativePatterns = getNegativePatternsAsPositive(patterns, ignore); + const staticPatterns = positivePatterns.filter((pattern) => utils.pattern.isStaticPattern(pattern, settings)); + const dynamicPatterns = positivePatterns.filter((pattern) => utils.pattern.isDynamicPattern(pattern, settings)); + const staticTasks = convertPatternsToTasks(staticPatterns, negativePatterns, /* dynamic */ false); + const dynamicTasks = convertPatternsToTasks(dynamicPatterns, negativePatterns, /* dynamic */ true); + return staticTasks.concat(dynamicTasks); +} +exports.generate = generate; +function processPatterns(input, settings) { + let patterns = input; + /** + * The original pattern like `{,*,**,a/*}` can lead to problems checking the depth when matching entry + * and some problems with the micromatch package (see fast-glob issues: #365, #394). + * + * To solve this problem, we expand all patterns containing brace expansion. This can lead to a slight slowdown + * in matching in the case of a large set of patterns after expansion. + */ + if (settings.braceExpansion) { + patterns = utils.pattern.expandPatternsWithBraceExpansion(patterns); } - switch (er.code) { - case 'ENOENT': - if (path.dirname(p) === p) return callback(er) - mkdirs(path.dirname(p), opts, (er, made) => { - if (er) callback(er, made) - else mkdirs(p, opts, callback, made) - }) - break - - // In the case of any other error, just see if there's a dir - // there already. If so, then hooray! If not, then something - // is borked. - default: - xfs.stat(p, (er2, stat) => { - // if the stat fails, then that's super weird. - // let the original error be the failure reason. - if (er2 || !stat.isDirectory()) callback(er, made) - else callback(null, made) - }) - break + /** + * If the `baseNameMatch` option is enabled, we must add globstar to patterns, so that they can be used + * at any nesting level. + * + * We do this here, because otherwise we have to complicate the filtering logic. For example, we need to change + * the pattern in the filter before creating a regular expression. There is no need to change the patterns + * in the application. Only on the input. + */ + if (settings.baseNameMatch) { + patterns = patterns.map((pattern) => pattern.includes('/') ? pattern : `**/${pattern}`); } - }) + /** + * This method also removes duplicate slashes that may have been in the pattern or formed as a result of expansion. + */ + return patterns.map((pattern) => utils.pattern.removeDuplicateSlashes(pattern)); } - -module.exports = mkdirs - - -/***/ }), - -/***/ 62936: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -const path = __nccwpck_require__(16928) - -// get drive on windows -function getRootPath (p) { - p = path.normalize(path.resolve(p)).split(path.sep) - if (p.length > 0) return p[0] - return null +/** + * Returns tasks grouped by basic pattern directories. + * + * Patterns that can be found inside (`./`) and outside (`../`) the current directory are handled separately. + * This is necessary because directory traversal starts at the base directory and goes deeper. + */ +function convertPatternsToTasks(positive, negative, dynamic) { + const tasks = []; + const patternsOutsideCurrentDirectory = utils.pattern.getPatternsOutsideCurrentDirectory(positive); + const patternsInsideCurrentDirectory = utils.pattern.getPatternsInsideCurrentDirectory(positive); + const outsideCurrentDirectoryGroup = groupPatternsByBaseDirectory(patternsOutsideCurrentDirectory); + const insideCurrentDirectoryGroup = groupPatternsByBaseDirectory(patternsInsideCurrentDirectory); + tasks.push(...convertPatternGroupsToTasks(outsideCurrentDirectoryGroup, negative, dynamic)); + /* + * For the sake of reducing future accesses to the file system, we merge all tasks within the current directory + * into a global task, if at least one pattern refers to the root (`.`). In this case, the global task covers the rest. + */ + if ('.' in insideCurrentDirectoryGroup) { + tasks.push(convertPatternGroupToTask('.', patternsInsideCurrentDirectory, negative, dynamic)); + } + else { + tasks.push(...convertPatternGroupsToTasks(insideCurrentDirectoryGroup, negative, dynamic)); + } + return tasks; } - -// http://stackoverflow.com/a/62888/10333 contains more accurate -// TODO: expand to include the rest -const INVALID_PATH_CHARS = /[<>:"|?*]/ - -function invalidWin32Path (p) { - const rp = getRootPath(p) - p = p.replace(rp, '') - return INVALID_PATH_CHARS.test(p) +exports.convertPatternsToTasks = convertPatternsToTasks; +function getPositivePatterns(patterns) { + return utils.pattern.getPositivePatterns(patterns); } - -module.exports = { - getRootPath, - invalidWin32Path +exports.getPositivePatterns = getPositivePatterns; +function getNegativePatternsAsPositive(patterns, ignore) { + const negative = utils.pattern.getNegativePatterns(patterns).concat(ignore); + const positive = negative.map(utils.pattern.convertToPositivePattern); + return positive; +} +exports.getNegativePatternsAsPositive = getNegativePatternsAsPositive; +function groupPatternsByBaseDirectory(patterns) { + const group = {}; + return patterns.reduce((collection, pattern) => { + const base = utils.pattern.getBaseDirectory(pattern); + if (base in collection) { + collection[base].push(pattern); + } + else { + collection[base] = [pattern]; + } + return collection; + }, group); +} +exports.groupPatternsByBaseDirectory = groupPatternsByBaseDirectory; +function convertPatternGroupsToTasks(positive, negative, dynamic) { + return Object.keys(positive).map((base) => { + return convertPatternGroupToTask(base, positive[base], negative, dynamic); + }); +} +exports.convertPatternGroupsToTasks = convertPatternGroupsToTasks; +function convertPatternGroupToTask(base, positive, negative, dynamic) { + return { + dynamic, + positive, + negative, + base, + patterns: [].concat(positive, negative.map(utils.pattern.convertToNegativePattern)) + }; } +exports.convertPatternGroupToTask = convertPatternGroupToTask; /***/ }), -/***/ 3262: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - +/***/ 3616: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -module.exports = { - moveSync: __nccwpck_require__(80041) +Object.defineProperty(exports, "__esModule", ({ value: true })); +const async_1 = __nccwpck_require__(6866); +const provider_1 = __nccwpck_require__(3815); +class ProviderAsync extends provider_1.default { + constructor() { + super(...arguments); + this._reader = new async_1.default(this._settings); + } + async read(task) { + const root = this._getRootDirectory(task); + const options = this._getReaderOptions(task); + const entries = await this.api(root, task, options); + return entries.map((entry) => options.transform(entry)); + } + api(root, task, options) { + if (task.dynamic) { + return this._reader.dynamic(root, options); + } + return this._reader.static(task.patterns, options); + } } +exports["default"] = ProviderAsync; /***/ }), -/***/ 80041: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const copySync = (__nccwpck_require__(36278).copySync) -const removeSync = (__nccwpck_require__(84507).removeSync) -const mkdirpSync = (__nccwpck_require__(77999).mkdirpSync) -const stat = __nccwpck_require__(91349) - -function moveSync (src, dest, opts) { - opts = opts || {} - const overwrite = opts.overwrite || opts.clobber || false - - const { srcStat } = stat.checkPathsSync(src, dest, 'move') - stat.checkParentPathsSync(src, srcStat, dest, 'move') - mkdirpSync(path.dirname(dest)) - return doRename(src, dest, overwrite) -} +/***/ 4084: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -function doRename (src, dest, overwrite) { - if (overwrite) { - removeSync(dest) - return rename(src, dest, overwrite) - } - if (fs.existsSync(dest)) throw new Error('dest already exists.') - return rename(src, dest, overwrite) -} -function rename (src, dest, overwrite) { - try { - fs.renameSync(src, dest) - } catch (err) { - if (err.code !== 'EXDEV') throw err - return moveAcrossDevice(src, dest, overwrite) - } -} - -function moveAcrossDevice (src, dest, overwrite) { - const opts = { - overwrite, - errorOnExist: true - } - copySync(src, dest, opts) - return removeSync(src) +Object.defineProperty(exports, "__esModule", ({ value: true })); +const utils = __nccwpck_require__(123); +const partial_1 = __nccwpck_require__(3147); +class DeepFilter { + constructor(_settings, _micromatchOptions) { + this._settings = _settings; + this._micromatchOptions = _micromatchOptions; + } + getFilter(basePath, positive, negative) { + const matcher = this._getMatcher(positive); + const negativeRe = this._getNegativePatternsRe(negative); + return (entry) => this._filter(basePath, entry, matcher, negativeRe); + } + _getMatcher(patterns) { + return new partial_1.default(patterns, this._settings, this._micromatchOptions); + } + _getNegativePatternsRe(patterns) { + const affectDepthOfReadingPatterns = patterns.filter(utils.pattern.isAffectDepthOfReadingPattern); + return utils.pattern.convertPatternsToRe(affectDepthOfReadingPatterns, this._micromatchOptions); + } + _filter(basePath, entry, matcher, negativeRe) { + if (this._isSkippedByDeep(basePath, entry.path)) { + return false; + } + if (this._isSkippedSymbolicLink(entry)) { + return false; + } + const filepath = utils.path.removeLeadingDotSegment(entry.path); + if (this._isSkippedByPositivePatterns(filepath, matcher)) { + return false; + } + return this._isSkippedByNegativePatterns(filepath, negativeRe); + } + _isSkippedByDeep(basePath, entryPath) { + /** + * Avoid unnecessary depth calculations when it doesn't matter. + */ + if (this._settings.deep === Infinity) { + return false; + } + return this._getEntryLevel(basePath, entryPath) >= this._settings.deep; + } + _getEntryLevel(basePath, entryPath) { + const entryPathDepth = entryPath.split('/').length; + if (basePath === '') { + return entryPathDepth; + } + const basePathDepth = basePath.split('/').length; + return entryPathDepth - basePathDepth; + } + _isSkippedSymbolicLink(entry) { + return !this._settings.followSymbolicLinks && entry.dirent.isSymbolicLink(); + } + _isSkippedByPositivePatterns(entryPath, matcher) { + return !this._settings.baseNameMatch && !matcher.match(entryPath); + } + _isSkippedByNegativePatterns(entryPath, patternsRe) { + return !utils.pattern.matchAny(entryPath, patternsRe); + } } - -module.exports = moveSync +exports["default"] = DeepFilter; /***/ }), -/***/ 59926: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - +/***/ 2552: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -module.exports = { - move: u(__nccwpck_require__(35825)) +Object.defineProperty(exports, "__esModule", ({ value: true })); +const utils = __nccwpck_require__(123); +class EntryFilter { + constructor(_settings, _micromatchOptions) { + this._settings = _settings; + this._micromatchOptions = _micromatchOptions; + this.index = new Map(); + } + getFilter(positive, negative) { + const [absoluteNegative, relativeNegative] = utils.pattern.partitionAbsoluteAndRelative(negative); + const patterns = { + positive: { + all: utils.pattern.convertPatternsToRe(positive, this._micromatchOptions) + }, + negative: { + absolute: utils.pattern.convertPatternsToRe(absoluteNegative, Object.assign(Object.assign({}, this._micromatchOptions), { dot: true })), + relative: utils.pattern.convertPatternsToRe(relativeNegative, Object.assign(Object.assign({}, this._micromatchOptions), { dot: true })) + } + }; + return (entry) => this._filter(entry, patterns); + } + _filter(entry, patterns) { + const filepath = utils.path.removeLeadingDotSegment(entry.path); + if (this._settings.unique && this._isDuplicateEntry(filepath)) { + return false; + } + if (this._onlyFileFilter(entry) || this._onlyDirectoryFilter(entry)) { + return false; + } + const isMatched = this._isMatchToPatternsSet(filepath, patterns, entry.dirent.isDirectory()); + if (this._settings.unique && isMatched) { + this._createIndexRecord(filepath); + } + return isMatched; + } + _isDuplicateEntry(filepath) { + return this.index.has(filepath); + } + _createIndexRecord(filepath) { + this.index.set(filepath, undefined); + } + _onlyFileFilter(entry) { + return this._settings.onlyFiles && !entry.dirent.isFile(); + } + _onlyDirectoryFilter(entry) { + return this._settings.onlyDirectories && !entry.dirent.isDirectory(); + } + _isMatchToPatternsSet(filepath, patterns, isDirectory) { + const isMatched = this._isMatchToPatterns(filepath, patterns.positive.all, isDirectory); + if (!isMatched) { + return false; + } + const isMatchedByRelativeNegative = this._isMatchToPatterns(filepath, patterns.negative.relative, isDirectory); + if (isMatchedByRelativeNegative) { + return false; + } + const isMatchedByAbsoluteNegative = this._isMatchToAbsoluteNegative(filepath, patterns.negative.absolute, isDirectory); + if (isMatchedByAbsoluteNegative) { + return false; + } + return true; + } + _isMatchToAbsoluteNegative(filepath, patternsRe, isDirectory) { + if (patternsRe.length === 0) { + return false; + } + const fullpath = utils.path.makeAbsolute(this._settings.cwd, filepath); + return this._isMatchToPatterns(fullpath, patternsRe, isDirectory); + } + _isMatchToPatterns(filepath, patternsRe, isDirectory) { + if (patternsRe.length === 0) { + return false; + } + // Trying to match files and directories by patterns. + const isMatched = utils.pattern.matchAny(filepath, patternsRe); + // A pattern with a trailling slash can be used for directory matching. + // To apply such pattern, we need to add a tralling slash to the path. + if (!isMatched && isDirectory) { + return utils.pattern.matchAny(filepath + '/', patternsRe); + } + return isMatched; + } } +exports["default"] = EntryFilter; /***/ }), -/***/ 35825: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +/***/ 5042: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +Object.defineProperty(exports, "__esModule", ({ value: true })); +const utils = __nccwpck_require__(123); +class ErrorFilter { + constructor(_settings) { + this._settings = _settings; + } + getFilter() { + return (error) => this._isNonFatalError(error); + } + _isNonFatalError(error) { + return utils.errno.isEnoentCodeError(error) || this._settings.suppressErrors; + } +} +exports["default"] = ErrorFilter; -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const copy = (__nccwpck_require__(32558).copy) -const remove = (__nccwpck_require__(84507).remove) -const mkdirp = (__nccwpck_require__(77999).mkdirp) -const pathExists = (__nccwpck_require__(53647).pathExists) -const stat = __nccwpck_require__(91349) -function move (src, dest, opts, cb) { - if (typeof opts === 'function') { - cb = opts - opts = {} - } +/***/ }), - const overwrite = opts.overwrite || opts.clobber || false +/***/ 5828: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - stat.checkPaths(src, dest, 'move', (err, stats) => { - if (err) return cb(err) - const { srcStat } = stats - stat.checkParentPaths(src, srcStat, dest, 'move', err => { - if (err) return cb(err) - mkdirp(path.dirname(dest), err => { - if (err) return cb(err) - return doRename(src, dest, overwrite, cb) - }) - }) - }) -} -function doRename (src, dest, overwrite, cb) { - if (overwrite) { - return remove(dest, err => { - if (err) return cb(err) - return rename(src, dest, overwrite, cb) - }) - } - pathExists(dest, (err, destExists) => { - if (err) return cb(err) - if (destExists) return cb(new Error('dest already exists.')) - return rename(src, dest, overwrite, cb) - }) +Object.defineProperty(exports, "__esModule", ({ value: true })); +const utils = __nccwpck_require__(123); +class Matcher { + constructor(_patterns, _settings, _micromatchOptions) { + this._patterns = _patterns; + this._settings = _settings; + this._micromatchOptions = _micromatchOptions; + this._storage = []; + this._fillStorage(); + } + _fillStorage() { + for (const pattern of this._patterns) { + const segments = this._getPatternSegments(pattern); + const sections = this._splitSegmentsIntoSections(segments); + this._storage.push({ + complete: sections.length <= 1, + pattern, + segments, + sections + }); + } + } + _getPatternSegments(pattern) { + const parts = utils.pattern.getPatternParts(pattern, this._micromatchOptions); + return parts.map((part) => { + const dynamic = utils.pattern.isDynamicPattern(part, this._settings); + if (!dynamic) { + return { + dynamic: false, + pattern: part + }; + } + return { + dynamic: true, + pattern: part, + patternRe: utils.pattern.makeRe(part, this._micromatchOptions) + }; + }); + } + _splitSegmentsIntoSections(segments) { + return utils.array.splitWhen(segments, (segment) => segment.dynamic && utils.pattern.hasGlobStar(segment.pattern)); + } } +exports["default"] = Matcher; -function rename (src, dest, overwrite, cb) { - fs.rename(src, dest, err => { - if (!err) return cb() - if (err.code !== 'EXDEV') return cb(err) - return moveAcrossDevice(src, dest, overwrite, cb) - }) -} -function moveAcrossDevice (src, dest, overwrite, cb) { - const opts = { - overwrite, - errorOnExist: true - } - copy(src, dest, opts, err => { - if (err) return cb(err) - return remove(src, cb) - }) -} +/***/ }), -module.exports = move +/***/ 3147: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -/***/ }), +Object.defineProperty(exports, "__esModule", ({ value: true })); +const matcher_1 = __nccwpck_require__(5828); +class PartialMatcher extends matcher_1.default { + match(filepath) { + const parts = filepath.split('/'); + const levels = parts.length; + const patterns = this._storage.filter((info) => !info.complete || info.segments.length > levels); + for (const pattern of patterns) { + const section = pattern.sections[0]; + /** + * In this case, the pattern has a globstar and we must read all directories unconditionally, + * but only if the level has reached the end of the first group. + * + * fixtures/{a,b}/** + * ^ true/false ^ always true + */ + if (!pattern.complete && levels > section.length) { + return true; + } + const match = parts.every((part, index) => { + const segment = pattern.segments[index]; + if (segment.dynamic && segment.patternRe.test(part)) { + return true; + } + if (!segment.dynamic && segment.pattern === part) { + return true; + } + return false; + }); + if (match) { + return true; + } + } + return false; + } +} +exports["default"] = PartialMatcher; -/***/ 78778: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +/***/ }), +/***/ 3815: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const mkdir = __nccwpck_require__(77999) -const pathExists = (__nccwpck_require__(53647).pathExists) -function outputFile (file, data, encoding, callback) { - if (typeof encoding === 'function') { - callback = encoding - encoding = 'utf8' - } +Object.defineProperty(exports, "__esModule", ({ value: true })); +const path = __nccwpck_require__(6928); +const deep_1 = __nccwpck_require__(4084); +const entry_1 = __nccwpck_require__(2552); +const error_1 = __nccwpck_require__(5042); +const entry_2 = __nccwpck_require__(825); +class Provider { + constructor(_settings) { + this._settings = _settings; + this.errorFilter = new error_1.default(this._settings); + this.entryFilter = new entry_1.default(this._settings, this._getMicromatchOptions()); + this.deepFilter = new deep_1.default(this._settings, this._getMicromatchOptions()); + this.entryTransformer = new entry_2.default(this._settings); + } + _getRootDirectory(task) { + return path.resolve(this._settings.cwd, task.base); + } + _getReaderOptions(task) { + const basePath = task.base === '.' ? '' : task.base; + return { + basePath, + pathSegmentSeparator: '/', + concurrency: this._settings.concurrency, + deepFilter: this.deepFilter.getFilter(basePath, task.positive, task.negative), + entryFilter: this.entryFilter.getFilter(task.positive, task.negative), + errorFilter: this.errorFilter.getFilter(), + followSymbolicLinks: this._settings.followSymbolicLinks, + fs: this._settings.fs, + stats: this._settings.stats, + throwErrorOnBrokenSymbolicLink: this._settings.throwErrorOnBrokenSymbolicLink, + transform: this.entryTransformer.getTransformer() + }; + } + _getMicromatchOptions() { + return { + dot: this._settings.dot, + matchBase: this._settings.baseNameMatch, + nobrace: !this._settings.braceExpansion, + nocase: !this._settings.caseSensitiveMatch, + noext: !this._settings.extglob, + noglobstar: !this._settings.globstar, + posix: true, + strictSlashes: false + }; + } +} +exports["default"] = Provider; - const dir = path.dirname(file) - pathExists(dir, (err, itDoes) => { - if (err) return callback(err) - if (itDoes) return fs.writeFile(file, data, encoding, callback) - mkdir.mkdirs(dir, err => { - if (err) return callback(err) +/***/ }), - fs.writeFile(file, data, encoding, callback) - }) - }) -} +/***/ 2410: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -function outputFileSync (file, ...args) { - const dir = path.dirname(file) - if (fs.existsSync(dir)) { - return fs.writeFileSync(file, ...args) - } - mkdir.mkdirsSync(dir) - fs.writeFileSync(file, ...args) -} -module.exports = { - outputFile: u(outputFile), - outputFileSync +Object.defineProperty(exports, "__esModule", ({ value: true })); +const stream_1 = __nccwpck_require__(2203); +const stream_2 = __nccwpck_require__(1980); +const provider_1 = __nccwpck_require__(3815); +class ProviderStream extends provider_1.default { + constructor() { + super(...arguments); + this._reader = new stream_2.default(this._settings); + } + read(task) { + const root = this._getRootDirectory(task); + const options = this._getReaderOptions(task); + const source = this.api(root, task, options); + const destination = new stream_1.Readable({ objectMode: true, read: () => { } }); + source + .once('error', (error) => destination.emit('error', error)) + .on('data', (entry) => destination.emit('data', options.transform(entry))) + .once('end', () => destination.emit('end')); + destination + .once('close', () => source.destroy()); + return destination; + } + api(root, task, options) { + if (task.dynamic) { + return this._reader.dynamic(root, options); + } + return this._reader.static(task.patterns, options); + } } +exports["default"] = ProviderStream; /***/ }), -/***/ 53647: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - -const u = (__nccwpck_require__(92977)/* .fromPromise */ .z) -const fs = __nccwpck_require__(58684) +/***/ 3473: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -function pathExists (path) { - return fs.access(path).then(() => true).catch(() => false) -} -module.exports = { - pathExists: u(pathExists), - pathExistsSync: fs.existsSync +Object.defineProperty(exports, "__esModule", ({ value: true })); +const sync_1 = __nccwpck_require__(967); +const provider_1 = __nccwpck_require__(3815); +class ProviderSync extends provider_1.default { + constructor() { + super(...arguments); + this._reader = new sync_1.default(this._settings); + } + read(task) { + const root = this._getRootDirectory(task); + const options = this._getReaderOptions(task); + const entries = this.api(root, task, options); + return entries.map(options.transform); + } + api(root, task, options) { + if (task.dynamic) { + return this._reader.dynamic(root, options); + } + return this._reader.static(task.patterns, options); + } } +exports["default"] = ProviderSync; /***/ }), -/***/ 84507: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - +/***/ 825: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const rimraf = __nccwpck_require__(92170) -module.exports = { - remove: u(rimraf), - removeSync: rimraf.sync +Object.defineProperty(exports, "__esModule", ({ value: true })); +const utils = __nccwpck_require__(123); +class EntryTransformer { + constructor(_settings) { + this._settings = _settings; + } + getTransformer() { + return (entry) => this._transform(entry); + } + _transform(entry) { + let filepath = entry.path; + if (this._settings.absolute) { + filepath = utils.path.makeAbsolute(this._settings.cwd, filepath); + filepath = utils.path.unixify(filepath); + } + if (this._settings.markDirectories && entry.dirent.isDirectory()) { + filepath += '/'; + } + if (!this._settings.objectMode) { + return filepath; + } + return Object.assign(Object.assign({}, entry), { path: filepath }); + } } +exports["default"] = EntryTransformer; /***/ }), -/***/ 92170: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +/***/ 6866: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +Object.defineProperty(exports, "__esModule", ({ value: true })); +const fsWalk = __nccwpck_require__(8734); +const reader_1 = __nccwpck_require__(6703); +const stream_1 = __nccwpck_require__(1980); +class ReaderAsync extends reader_1.default { + constructor() { + super(...arguments); + this._walkAsync = fsWalk.walk; + this._readerStream = new stream_1.default(this._settings); + } + dynamic(root, options) { + return new Promise((resolve, reject) => { + this._walkAsync(root, options, (error, entries) => { + if (error === null) { + resolve(entries); + } + else { + reject(error); + } + }); + }); + } + async static(patterns, options) { + const entries = []; + const stream = this._readerStream.static(patterns, options); + // After #235, replace it with an asynchronous iterator. + return new Promise((resolve, reject) => { + stream.once('error', reject); + stream.on('data', (entry) => entries.push(entry)); + stream.once('end', () => resolve(entries)); + }); + } +} +exports["default"] = ReaderAsync; -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const assert = __nccwpck_require__(42613) -const isWindows = (process.platform === 'win32') +/***/ }), -function defaults (options) { - const methods = [ - 'unlink', - 'chmod', - 'stat', - 'lstat', - 'rmdir', - 'readdir' - ] - methods.forEach(m => { - options[m] = options[m] || fs[m] - m = m + 'Sync' - options[m] = options[m] || fs[m] - }) +/***/ 6703: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - options.maxBusyTries = options.maxBusyTries || 3 -} -function rimraf (p, options, cb) { - let busyTries = 0 +Object.defineProperty(exports, "__esModule", ({ value: true })); +const path = __nccwpck_require__(6928); +const fsStat = __nccwpck_require__(1309); +const utils = __nccwpck_require__(123); +class Reader { + constructor(_settings) { + this._settings = _settings; + this._fsStatSettings = new fsStat.Settings({ + followSymbolicLink: this._settings.followSymbolicLinks, + fs: this._settings.fs, + throwErrorOnBrokenSymbolicLink: this._settings.followSymbolicLinks + }); + } + _getFullEntryPath(filepath) { + return path.resolve(this._settings.cwd, filepath); + } + _makeEntry(stats, pattern) { + const entry = { + name: pattern, + path: pattern, + dirent: utils.fs.createDirentFromStats(pattern, stats) + }; + if (this._settings.stats) { + entry.stats = stats; + } + return entry; + } + _isFatalError(error) { + return !utils.errno.isEnoentCodeError(error) && !this._settings.suppressErrors; + } +} +exports["default"] = Reader; - if (typeof options === 'function') { - cb = options - options = {} - } - assert(p, 'rimraf: missing path') - assert.strictEqual(typeof p, 'string', 'rimraf: path should be a string') - assert.strictEqual(typeof cb, 'function', 'rimraf: callback function required') - assert(options, 'rimraf: invalid options argument provided') - assert.strictEqual(typeof options, 'object', 'rimraf: options should be object') +/***/ }), - defaults(options) +/***/ 1980: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - rimraf_(p, options, function CB (er) { - if (er) { - if ((er.code === 'EBUSY' || er.code === 'ENOTEMPTY' || er.code === 'EPERM') && - busyTries < options.maxBusyTries) { - busyTries++ - const time = busyTries * 100 - // try again, with the same exact callback as this one. - return setTimeout(() => rimraf_(p, options, CB), time) - } - // already gone - if (er.code === 'ENOENT') er = null +Object.defineProperty(exports, "__esModule", ({ value: true })); +const stream_1 = __nccwpck_require__(2203); +const fsStat = __nccwpck_require__(1309); +const fsWalk = __nccwpck_require__(8734); +const reader_1 = __nccwpck_require__(6703); +class ReaderStream extends reader_1.default { + constructor() { + super(...arguments); + this._walkStream = fsWalk.walkStream; + this._stat = fsStat.stat; } - - cb(er) - }) -} - -// Two possible strategies. -// 1. Assume it's a file. unlink it, then do the dir stuff on EPERM or EISDIR -// 2. Assume it's a directory. readdir, then do the file stuff on ENOTDIR -// -// Both result in an extra syscall when you guess wrong. However, there -// are likely far more normal files in the world than directories. This -// is based on the assumption that a the average number of files per -// directory is >= 1. -// -// If anyone ever complains about this, then I guess the strategy could -// be made configurable somehow. But until then, YAGNI. -function rimraf_ (p, options, cb) { - assert(p) - assert(options) - assert(typeof cb === 'function') - - // sunos lets the root user unlink directories, which is... weird. - // so we have to lstat here and make sure it's not a dir. - options.lstat(p, (er, st) => { - if (er && er.code === 'ENOENT') { - return cb(null) + dynamic(root, options) { + return this._walkStream(root, options); } - - // Windows can EPERM on stat. Life is suffering. - if (er && er.code === 'EPERM' && isWindows) { - return fixWinEPERM(p, options, er, cb) + static(patterns, options) { + const filepaths = patterns.map(this._getFullEntryPath, this); + const stream = new stream_1.PassThrough({ objectMode: true }); + stream._write = (index, _enc, done) => { + return this._getEntry(filepaths[index], patterns[index], options) + .then((entry) => { + if (entry !== null && options.entryFilter(entry)) { + stream.push(entry); + } + if (index === filepaths.length - 1) { + stream.end(); + } + done(); + }) + .catch(done); + }; + for (let i = 0; i < filepaths.length; i++) { + stream.write(i); + } + return stream; } - - if (st && st.isDirectory()) { - return rmdir(p, options, er, cb) + _getEntry(filepath, pattern, options) { + return this._getStat(filepath) + .then((stats) => this._makeEntry(stats, pattern)) + .catch((error) => { + if (options.errorFilter(error)) { + return null; + } + throw error; + }); + } + _getStat(filepath) { + return new Promise((resolve, reject) => { + this._stat(filepath, this._fsStatSettings, (error, stats) => { + return error === null ? resolve(stats) : reject(error); + }); + }); } - - options.unlink(p, er => { - if (er) { - if (er.code === 'ENOENT') { - return cb(null) - } - if (er.code === 'EPERM') { - return (isWindows) - ? fixWinEPERM(p, options, er, cb) - : rmdir(p, options, er, cb) - } - if (er.code === 'EISDIR') { - return rmdir(p, options, er, cb) - } - } - return cb(er) - }) - }) } +exports["default"] = ReaderStream; -function fixWinEPERM (p, options, er, cb) { - assert(p) - assert(options) - assert(typeof cb === 'function') - if (er) { - assert(er instanceof Error) - } - options.chmod(p, 0o666, er2 => { - if (er2) { - cb(er2.code === 'ENOENT' ? null : er) - } else { - options.stat(p, (er3, stats) => { - if (er3) { - cb(er3.code === 'ENOENT' ? null : er) - } else if (stats.isDirectory()) { - rmdir(p, options, er, cb) - } else { - options.unlink(p, cb) - } - }) - } - }) -} +/***/ }), -function fixWinEPERMSync (p, options, er) { - let stats +/***/ 967: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - assert(p) - assert(options) - if (er) { - assert(er instanceof Error) - } - try { - options.chmodSync(p, 0o666) - } catch (er2) { - if (er2.code === 'ENOENT') { - return - } else { - throw er +Object.defineProperty(exports, "__esModule", ({ value: true })); +const fsStat = __nccwpck_require__(1309); +const fsWalk = __nccwpck_require__(8734); +const reader_1 = __nccwpck_require__(6703); +class ReaderSync extends reader_1.default { + constructor() { + super(...arguments); + this._walkSync = fsWalk.walkSync; + this._statSync = fsStat.statSync; } - } - - try { - stats = options.statSync(p) - } catch (er3) { - if (er3.code === 'ENOENT') { - return - } else { - throw er + dynamic(root, options) { + return this._walkSync(root, options); } - } - - if (stats.isDirectory()) { - rmdirSync(p, options, er) - } else { - options.unlinkSync(p) - } -} - -function rmdir (p, options, originalEr, cb) { - assert(p) - assert(options) - if (originalEr) { - assert(originalEr instanceof Error) - } - assert(typeof cb === 'function') - - // try to rmdir first, and only readdir on ENOTEMPTY or EEXIST (SunOS) - // if we guessed wrong, and it's not a directory, then - // raise the original error. - options.rmdir(p, er => { - if (er && (er.code === 'ENOTEMPTY' || er.code === 'EEXIST' || er.code === 'EPERM')) { - rmkids(p, options, cb) - } else if (er && er.code === 'ENOTDIR') { - cb(originalEr) - } else { - cb(er) + static(patterns, options) { + const entries = []; + for (const pattern of patterns) { + const filepath = this._getFullEntryPath(pattern); + const entry = this._getEntry(filepath, pattern, options); + if (entry === null || !options.entryFilter(entry)) { + continue; + } + entries.push(entry); + } + return entries; + } + _getEntry(filepath, pattern, options) { + try { + const stats = this._getStat(filepath); + return this._makeEntry(stats, pattern); + } + catch (error) { + if (options.errorFilter(error)) { + return null; + } + throw error; + } + } + _getStat(filepath) { + return this._statSync(filepath, this._fsStatSettings); } - }) } +exports["default"] = ReaderSync; -function rmkids (p, options, cb) { - assert(p) - assert(options) - assert(typeof cb === 'function') - options.readdir(p, (er, files) => { - if (er) return cb(er) +/***/ }), - let n = files.length - let errState +/***/ 948: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - if (n === 0) return options.rmdir(p, cb) - files.forEach(f => { - rimraf(path.join(p, f), options, er => { - if (errState) { - return +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.DEFAULT_FILE_SYSTEM_ADAPTER = void 0; +const fs = __nccwpck_require__(9896); +const os = __nccwpck_require__(857); +/** + * The `os.cpus` method can return zero. We expect the number of cores to be greater than zero. + * https://github.com/nodejs/node/blob/7faeddf23a98c53896f8b574a6e66589e8fb1eb8/lib/os.js#L106-L107 + */ +const CPU_COUNT = Math.max(os.cpus().length, 1); +exports.DEFAULT_FILE_SYSTEM_ADAPTER = { + lstat: fs.lstat, + lstatSync: fs.lstatSync, + stat: fs.stat, + statSync: fs.statSync, + readdir: fs.readdir, + readdirSync: fs.readdirSync +}; +class Settings { + constructor(_options = {}) { + this._options = _options; + this.absolute = this._getValue(this._options.absolute, false); + this.baseNameMatch = this._getValue(this._options.baseNameMatch, false); + this.braceExpansion = this._getValue(this._options.braceExpansion, true); + this.caseSensitiveMatch = this._getValue(this._options.caseSensitiveMatch, true); + this.concurrency = this._getValue(this._options.concurrency, CPU_COUNT); + this.cwd = this._getValue(this._options.cwd, process.cwd()); + this.deep = this._getValue(this._options.deep, Infinity); + this.dot = this._getValue(this._options.dot, false); + this.extglob = this._getValue(this._options.extglob, true); + this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, true); + this.fs = this._getFileSystemMethods(this._options.fs); + this.globstar = this._getValue(this._options.globstar, true); + this.ignore = this._getValue(this._options.ignore, []); + this.markDirectories = this._getValue(this._options.markDirectories, false); + this.objectMode = this._getValue(this._options.objectMode, false); + this.onlyDirectories = this._getValue(this._options.onlyDirectories, false); + this.onlyFiles = this._getValue(this._options.onlyFiles, true); + this.stats = this._getValue(this._options.stats, false); + this.suppressErrors = this._getValue(this._options.suppressErrors, false); + this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, false); + this.unique = this._getValue(this._options.unique, true); + if (this.onlyDirectories) { + this.onlyFiles = false; } - if (er) return cb(errState = er) - if (--n === 0) { - options.rmdir(p, cb) + if (this.stats) { + this.objectMode = true; } - }) - }) - }) + // Remove the cast to the array in the next major (#404). + this.ignore = [].concat(this.ignore); + } + _getValue(option, value) { + return option === undefined ? value : option; + } + _getFileSystemMethods(methods = {}) { + return Object.assign(Object.assign({}, exports.DEFAULT_FILE_SYSTEM_ADAPTER), methods); + } } +exports["default"] = Settings; -// this looks simpler, and is strictly *faster*, but will -// tie up the JavaScript thread and fail on excessively -// deep directory trees. -function rimrafSync (p, options) { - let st - - options = options || {} - defaults(options) - assert(p, 'rimraf: missing path') - assert.strictEqual(typeof p, 'string', 'rimraf: path should be a string') - assert(options, 'rimraf: missing options') - assert.strictEqual(typeof options, 'object', 'rimraf: options should be object') +/***/ }), - try { - st = options.lstatSync(p) - } catch (er) { - if (er.code === 'ENOENT') { - return - } +/***/ 3614: +/***/ ((__unused_webpack_module, exports) => { - // Windows can EPERM on stat. Life is suffering. - if (er.code === 'EPERM' && isWindows) { - fixWinEPERMSync(p, options, er) - } - } - try { - // sunos lets the root user unlink directories, which is... weird. - if (st && st.isDirectory()) { - rmdirSync(p, options, null) - } else { - options.unlinkSync(p) - } - } catch (er) { - if (er.code === 'ENOENT') { - return - } else if (er.code === 'EPERM') { - return isWindows ? fixWinEPERMSync(p, options, er) : rmdirSync(p, options, er) - } else if (er.code !== 'EISDIR') { - throw er +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.splitWhen = exports.flatten = void 0; +function flatten(items) { + return items.reduce((collection, item) => [].concat(collection, item), []); +} +exports.flatten = flatten; +function splitWhen(items, predicate) { + const result = [[]]; + let groupIndex = 0; + for (const item of items) { + if (predicate(item)) { + groupIndex++; + result[groupIndex] = []; + } + else { + result[groupIndex].push(item); + } } - rmdirSync(p, options, er) - } + return result; } +exports.splitWhen = splitWhen; -function rmdirSync (p, options, originalEr) { - assert(p) - assert(options) - if (originalEr) { - assert(originalEr instanceof Error) - } - try { - options.rmdirSync(p) - } catch (er) { - if (er.code === 'ENOTDIR') { - throw originalEr - } else if (er.code === 'ENOTEMPTY' || er.code === 'EEXIST' || er.code === 'EPERM') { - rmkidsSync(p, options) - } else if (er.code !== 'ENOENT') { - throw er - } - } -} +/***/ }), -function rmkidsSync (p, options) { - assert(p) - assert(options) - options.readdirSync(p).forEach(f => rimrafSync(path.join(p, f), options)) +/***/ 163: +/***/ ((__unused_webpack_module, exports) => { - if (isWindows) { - // We only end up here once we got ENOTEMPTY at least once, and - // at this point, we are guaranteed to have removed all the kids. - // So, we know that it won't be ENOENT or ENOTDIR or anything else. - // try really hard to delete stuff on windows, because it has a - // PROFOUNDLY annoying habit of not closing handles promptly when - // files are deleted, resulting in spurious ENOTEMPTY errors. - const startTime = Date.now() - do { - try { - const ret = options.rmdirSync(p, options) - return ret - } catch (er) { } - } while (Date.now() - startTime < 500) // give up after 500ms - } else { - const ret = options.rmdirSync(p, options) - return ret - } -} -module.exports = rimraf -rimraf.sync = rimrafSync +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.isEnoentCodeError = void 0; +function isEnoentCodeError(error) { + return error.code === 'ENOENT'; +} +exports.isEnoentCodeError = isEnoentCodeError; /***/ }), -/***/ 44973: -/***/ ((module) => { +/***/ 9416: +/***/ ((__unused_webpack_module, exports) => { -/* eslint-disable node/no-deprecated-api */ -module.exports = function (size) { - if (typeof Buffer.allocUnsafe === 'function') { - try { - return Buffer.allocUnsafe(size) - } catch (e) { - return new Buffer(size) +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.createDirentFromStats = void 0; +class DirentFromStats { + constructor(name, stats) { + this.name = name; + this.isBlockDevice = stats.isBlockDevice.bind(stats); + this.isCharacterDevice = stats.isCharacterDevice.bind(stats); + this.isDirectory = stats.isDirectory.bind(stats); + this.isFIFO = stats.isFIFO.bind(stats); + this.isFile = stats.isFile.bind(stats); + this.isSocket = stats.isSocket.bind(stats); + this.isSymbolicLink = stats.isSymbolicLink.bind(stats); } - } - return new Buffer(size) } +function createDirentFromStats(name, stats) { + return new DirentFromStats(name, stats); +} +exports.createDirentFromStats = createDirentFromStats; /***/ }), -/***/ 91349: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +/***/ 123: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.string = exports.stream = exports.pattern = exports.path = exports.fs = exports.errno = exports.array = void 0; +const array = __nccwpck_require__(3614); +exports.array = array; +const errno = __nccwpck_require__(163); +exports.errno = errno; +const fs = __nccwpck_require__(9416); +exports.fs = fs; +const path = __nccwpck_require__(3930); +exports.path = path; +const pattern = __nccwpck_require__(5869); +exports.pattern = pattern; +const stream = __nccwpck_require__(9103); +exports.stream = stream; +const string = __nccwpck_require__(3682); +exports.string = string; -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const NODE_VERSION_MAJOR_WITH_BIGINT = 10 -const NODE_VERSION_MINOR_WITH_BIGINT = 5 -const NODE_VERSION_PATCH_WITH_BIGINT = 0 -const nodeVersion = process.versions.node.split('.') -const nodeVersionMajor = Number.parseInt(nodeVersion[0], 10) -const nodeVersionMinor = Number.parseInt(nodeVersion[1], 10) -const nodeVersionPatch = Number.parseInt(nodeVersion[2], 10) +/***/ }), -function nodeSupportsBigInt () { - if (nodeVersionMajor > NODE_VERSION_MAJOR_WITH_BIGINT) { - return true - } else if (nodeVersionMajor === NODE_VERSION_MAJOR_WITH_BIGINT) { - if (nodeVersionMinor > NODE_VERSION_MINOR_WITH_BIGINT) { - return true - } else if (nodeVersionMinor === NODE_VERSION_MINOR_WITH_BIGINT) { - if (nodeVersionPatch >= NODE_VERSION_PATCH_WITH_BIGINT) { - return true - } - } - } - return false -} - -function getStats (src, dest, cb) { - if (nodeSupportsBigInt()) { - fs.stat(src, { bigint: true }, (err, srcStat) => { - if (err) return cb(err) - fs.stat(dest, { bigint: true }, (err, destStat) => { - if (err) { - if (err.code === 'ENOENT') return cb(null, { srcStat, destStat: null }) - return cb(err) - } - return cb(null, { srcStat, destStat }) - }) - }) - } else { - fs.stat(src, (err, srcStat) => { - if (err) return cb(err) - fs.stat(dest, (err, destStat) => { - if (err) { - if (err.code === 'ENOENT') return cb(null, { srcStat, destStat: null }) - return cb(err) - } - return cb(null, { srcStat, destStat }) - }) - }) - } -} - -function getStatsSync (src, dest) { - let srcStat, destStat - if (nodeSupportsBigInt()) { - srcStat = fs.statSync(src, { bigint: true }) - } else { - srcStat = fs.statSync(src) - } - try { - if (nodeSupportsBigInt()) { - destStat = fs.statSync(dest, { bigint: true }) - } else { - destStat = fs.statSync(dest) - } - } catch (err) { - if (err.code === 'ENOENT') return { srcStat, destStat: null } - throw err - } - return { srcStat, destStat } -} +/***/ 3930: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -function checkPaths (src, dest, funcName, cb) { - getStats(src, dest, (err, stats) => { - if (err) return cb(err) - const { srcStat, destStat } = stats - if (destStat && destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev) { - return cb(new Error('Source and destination must not be the same.')) - } - if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { - return cb(new Error(errMsg(src, dest, funcName))) - } - return cb(null, { srcStat, destStat }) - }) -} -function checkPathsSync (src, dest, funcName) { - const { srcStat, destStat } = getStatsSync(src, dest) - if (destStat && destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev) { - throw new Error('Source and destination must not be the same.') - } - if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { - throw new Error(errMsg(src, dest, funcName)) - } - return { srcStat, destStat } +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.convertPosixPathToPattern = exports.convertWindowsPathToPattern = exports.convertPathToPattern = exports.escapePosixPath = exports.escapeWindowsPath = exports.escape = exports.removeLeadingDotSegment = exports.makeAbsolute = exports.unixify = void 0; +const os = __nccwpck_require__(857); +const path = __nccwpck_require__(6928); +const IS_WINDOWS_PLATFORM = os.platform() === 'win32'; +const LEADING_DOT_SEGMENT_CHARACTERS_COUNT = 2; // ./ or .\\ +/** + * All non-escaped special characters. + * Posix: ()*?[]{|}, !+@ before (, ! at the beginning, \\ before non-special characters. + * Windows: (){}[], !+@ before (, ! at the beginning. + */ +const POSIX_UNESCAPED_GLOB_SYMBOLS_RE = /(\\?)([()*?[\]{|}]|^!|[!+@](?=\()|\\(?![!()*+?@[\]{|}]))/g; +const WINDOWS_UNESCAPED_GLOB_SYMBOLS_RE = /(\\?)([()[\]{}]|^!|[!+@](?=\())/g; +/** + * The device path (\\.\ or \\?\). + * https://learn.microsoft.com/en-us/dotnet/standard/io/file-path-formats#dos-device-paths + */ +const DOS_DEVICE_PATH_RE = /^\\\\([.?])/; +/** + * All backslashes except those escaping special characters. + * Windows: !()+@{} + * https://learn.microsoft.com/en-us/windows/win32/fileio/naming-a-file#naming-conventions + */ +const WINDOWS_BACKSLASHES_RE = /\\(?![!()+@[\]{}])/g; +/** + * Designed to work only with simple paths: `dir\\file`. + */ +function unixify(filepath) { + return filepath.replace(/\\/g, '/'); } - -// recursively check if dest parent is a subdirectory of src. -// It works for all file types including symlinks since it -// checks the src and dest inodes. It starts from the deepest -// parent and stops once it reaches the src parent or the root path. -function checkParentPaths (src, srcStat, dest, funcName, cb) { - const srcParent = path.resolve(path.dirname(src)) - const destParent = path.resolve(path.dirname(dest)) - if (destParent === srcParent || destParent === path.parse(destParent).root) return cb() - if (nodeSupportsBigInt()) { - fs.stat(destParent, { bigint: true }, (err, destStat) => { - if (err) { - if (err.code === 'ENOENT') return cb() - return cb(err) - } - if (destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev) { - return cb(new Error(errMsg(src, dest, funcName))) - } - return checkParentPaths(src, srcStat, destParent, funcName, cb) - }) - } else { - fs.stat(destParent, (err, destStat) => { - if (err) { - if (err.code === 'ENOENT') return cb() - return cb(err) - } - if (destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev) { - return cb(new Error(errMsg(src, dest, funcName))) - } - return checkParentPaths(src, srcStat, destParent, funcName, cb) - }) - } +exports.unixify = unixify; +function makeAbsolute(cwd, filepath) { + return path.resolve(cwd, filepath); } - -function checkParentPathsSync (src, srcStat, dest, funcName) { - const srcParent = path.resolve(path.dirname(src)) - const destParent = path.resolve(path.dirname(dest)) - if (destParent === srcParent || destParent === path.parse(destParent).root) return - let destStat - try { - if (nodeSupportsBigInt()) { - destStat = fs.statSync(destParent, { bigint: true }) - } else { - destStat = fs.statSync(destParent) +exports.makeAbsolute = makeAbsolute; +function removeLeadingDotSegment(entry) { + // We do not use `startsWith` because this is 10x slower than current implementation for some cases. + // eslint-disable-next-line @typescript-eslint/prefer-string-starts-ends-with + if (entry.charAt(0) === '.') { + const secondCharactery = entry.charAt(1); + if (secondCharactery === '/' || secondCharactery === '\\') { + return entry.slice(LEADING_DOT_SEGMENT_CHARACTERS_COUNT); + } } - } catch (err) { - if (err.code === 'ENOENT') return - throw err - } - if (destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev) { - throw new Error(errMsg(src, dest, funcName)) - } - return checkParentPathsSync(src, srcStat, destParent, funcName) + return entry; } - -// return true if dest is a subdir of src, otherwise false. -// It only checks the path strings. -function isSrcSubdir (src, dest) { - const srcArr = path.resolve(src).split(path.sep).filter(i => i) - const destArr = path.resolve(dest).split(path.sep).filter(i => i) - return srcArr.reduce((acc, cur, i) => acc && destArr[i] === cur, true) +exports.removeLeadingDotSegment = removeLeadingDotSegment; +exports.escape = IS_WINDOWS_PLATFORM ? escapeWindowsPath : escapePosixPath; +function escapeWindowsPath(pattern) { + return pattern.replace(WINDOWS_UNESCAPED_GLOB_SYMBOLS_RE, '\\$2'); } - -function errMsg (src, dest, funcName) { - return `Cannot ${funcName} '${src}' to a subdirectory of itself, '${dest}'.` +exports.escapeWindowsPath = escapeWindowsPath; +function escapePosixPath(pattern) { + return pattern.replace(POSIX_UNESCAPED_GLOB_SYMBOLS_RE, '\\$2'); } - -module.exports = { - checkPaths, - checkPathsSync, - checkParentPaths, - checkParentPathsSync, - isSrcSubdir +exports.escapePosixPath = escapePosixPath; +exports.convertPathToPattern = IS_WINDOWS_PLATFORM ? convertWindowsPathToPattern : convertPosixPathToPattern; +function convertWindowsPathToPattern(filepath) { + return escapeWindowsPath(filepath) + .replace(DOS_DEVICE_PATH_RE, '//$1') + .replace(WINDOWS_BACKSLASHES_RE, '/'); } +exports.convertWindowsPathToPattern = convertWindowsPathToPattern; +function convertPosixPathToPattern(filepath) { + return escapePosixPath(filepath); +} +exports.convertPosixPathToPattern = convertPosixPathToPattern; /***/ }), -/***/ 12804: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -const fs = __nccwpck_require__(61404) -const os = __nccwpck_require__(70857) -const path = __nccwpck_require__(16928) +/***/ 5869: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -// HFS, ext{2,3}, FAT do not, Node.js v0.10 does not -function hasMillisResSync () { - let tmpfile = path.join('millis-test-sync' + Date.now().toString() + Math.random().toString().slice(2)) - tmpfile = path.join(os.tmpdir(), tmpfile) - // 550 millis past UNIX epoch - const d = new Date(1435410243862) - fs.writeFileSync(tmpfile, 'https://github.com/jprichardson/node-fs-extra/pull/141') - const fd = fs.openSync(tmpfile, 'r+') - fs.futimesSync(fd, d, d) - fs.closeSync(fd) - return fs.statSync(tmpfile).mtime > 1435410243000 +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.isAbsolute = exports.partitionAbsoluteAndRelative = exports.removeDuplicateSlashes = exports.matchAny = exports.convertPatternsToRe = exports.makeRe = exports.getPatternParts = exports.expandBraceExpansion = exports.expandPatternsWithBraceExpansion = exports.isAffectDepthOfReadingPattern = exports.endsWithSlashGlobStar = exports.hasGlobStar = exports.getBaseDirectory = exports.isPatternRelatedToParentDirectory = exports.getPatternsOutsideCurrentDirectory = exports.getPatternsInsideCurrentDirectory = exports.getPositivePatterns = exports.getNegativePatterns = exports.isPositivePattern = exports.isNegativePattern = exports.convertToNegativePattern = exports.convertToPositivePattern = exports.isDynamicPattern = exports.isStaticPattern = void 0; +const path = __nccwpck_require__(6928); +const globParent = __nccwpck_require__(2435); +const micromatch = __nccwpck_require__(9555); +const GLOBSTAR = '**'; +const ESCAPE_SYMBOL = '\\'; +const COMMON_GLOB_SYMBOLS_RE = /[*?]|^!/; +const REGEX_CHARACTER_CLASS_SYMBOLS_RE = /\[[^[]*]/; +const REGEX_GROUP_SYMBOLS_RE = /(?:^|[^!*+?@])\([^(]*\|[^|]*\)/; +const GLOB_EXTENSION_SYMBOLS_RE = /[!*+?@]\([^(]*\)/; +const BRACE_EXPANSION_SEPARATORS_RE = /,|\.\./; +/** + * Matches a sequence of two or more consecutive slashes, excluding the first two slashes at the beginning of the string. + * The latter is due to the presence of the device path at the beginning of the UNC path. + */ +const DOUBLE_SLASH_RE = /(?!^)\/{2,}/g; +function isStaticPattern(pattern, options = {}) { + return !isDynamicPattern(pattern, options); } - -function hasMillisRes (callback) { - let tmpfile = path.join('millis-test' + Date.now().toString() + Math.random().toString().slice(2)) - tmpfile = path.join(os.tmpdir(), tmpfile) - - // 550 millis past UNIX epoch - const d = new Date(1435410243862) - fs.writeFile(tmpfile, 'https://github.com/jprichardson/node-fs-extra/pull/141', err => { - if (err) return callback(err) - fs.open(tmpfile, 'r+', (err, fd) => { - if (err) return callback(err) - fs.futimes(fd, d, d, err => { - if (err) return callback(err) - fs.close(fd, err => { - if (err) return callback(err) - fs.stat(tmpfile, (err, stats) => { - if (err) return callback(err) - callback(null, stats.mtime > 1435410243000) - }) - }) - }) - }) - }) +exports.isStaticPattern = isStaticPattern; +function isDynamicPattern(pattern, options = {}) { + /** + * A special case with an empty string is necessary for matching patterns that start with a forward slash. + * An empty string cannot be a dynamic pattern. + * For example, the pattern `/lib/*` will be spread into parts: '', 'lib', '*'. + */ + if (pattern === '') { + return false; + } + /** + * When the `caseSensitiveMatch` option is disabled, all patterns must be marked as dynamic, because we cannot check + * filepath directly (without read directory). + */ + if (options.caseSensitiveMatch === false || pattern.includes(ESCAPE_SYMBOL)) { + return true; + } + if (COMMON_GLOB_SYMBOLS_RE.test(pattern) || REGEX_CHARACTER_CLASS_SYMBOLS_RE.test(pattern) || REGEX_GROUP_SYMBOLS_RE.test(pattern)) { + return true; + } + if (options.extglob !== false && GLOB_EXTENSION_SYMBOLS_RE.test(pattern)) { + return true; + } + if (options.braceExpansion !== false && hasBraceExpansion(pattern)) { + return true; + } + return false; } - -function timeRemoveMillis (timestamp) { - if (typeof timestamp === 'number') { - return Math.floor(timestamp / 1000) * 1000 - } else if (timestamp instanceof Date) { - return new Date(Math.floor(timestamp.getTime() / 1000) * 1000) - } else { - throw new Error('fs-extra: timeRemoveMillis() unknown parameter type') - } +exports.isDynamicPattern = isDynamicPattern; +function hasBraceExpansion(pattern) { + const openingBraceIndex = pattern.indexOf('{'); + if (openingBraceIndex === -1) { + return false; + } + const closingBraceIndex = pattern.indexOf('}', openingBraceIndex + 1); + if (closingBraceIndex === -1) { + return false; + } + const braceContent = pattern.slice(openingBraceIndex, closingBraceIndex); + return BRACE_EXPANSION_SEPARATORS_RE.test(braceContent); } - -function utimesMillis (path, atime, mtime, callback) { - // if (!HAS_MILLIS_RES) return fs.utimes(path, atime, mtime, callback) - fs.open(path, 'r+', (err, fd) => { - if (err) return callback(err) - fs.futimes(fd, atime, mtime, futimesErr => { - fs.close(fd, closeErr => { - if (callback) callback(futimesErr || closeErr) - }) - }) - }) +function convertToPositivePattern(pattern) { + return isNegativePattern(pattern) ? pattern.slice(1) : pattern; } - -function utimesMillisSync (path, atime, mtime) { - const fd = fs.openSync(path, 'r+') - fs.futimesSync(fd, atime, mtime) - return fs.closeSync(fd) +exports.convertToPositivePattern = convertToPositivePattern; +function convertToNegativePattern(pattern) { + return '!' + pattern; } - -module.exports = { - hasMillisRes, - hasMillisResSync, - timeRemoveMillis, - utimesMillis, - utimesMillisSync +exports.convertToNegativePattern = convertToNegativePattern; +function isNegativePattern(pattern) { + return pattern.startsWith('!') && pattern[1] !== '('; } - - -/***/ }), - -/***/ 69988: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.createFileSystemAdapter = exports.FILE_SYSTEM_ADAPTER = void 0; -const fs = __nccwpck_require__(79896); -exports.FILE_SYSTEM_ADAPTER = { - lstat: fs.lstat, - stat: fs.stat, - lstatSync: fs.lstatSync, - statSync: fs.statSync, - readdir: fs.readdir, - readdirSync: fs.readdirSync -}; -function createFileSystemAdapter(fsMethods) { - if (fsMethods === undefined) { - return exports.FILE_SYSTEM_ADAPTER; +exports.isNegativePattern = isNegativePattern; +function isPositivePattern(pattern) { + return !isNegativePattern(pattern); +} +exports.isPositivePattern = isPositivePattern; +function getNegativePatterns(patterns) { + return patterns.filter(isNegativePattern); +} +exports.getNegativePatterns = getNegativePatterns; +function getPositivePatterns(patterns) { + return patterns.filter(isPositivePattern); +} +exports.getPositivePatterns = getPositivePatterns; +/** + * Returns patterns that can be applied inside the current directory. + * + * @example + * // ['./*', '*', 'a/*'] + * getPatternsInsideCurrentDirectory(['./*', '*', 'a/*', '../*', './../*']) + */ +function getPatternsInsideCurrentDirectory(patterns) { + return patterns.filter((pattern) => !isPatternRelatedToParentDirectory(pattern)); +} +exports.getPatternsInsideCurrentDirectory = getPatternsInsideCurrentDirectory; +/** + * Returns patterns to be expanded relative to (outside) the current directory. + * + * @example + * // ['../*', './../*'] + * getPatternsInsideCurrentDirectory(['./*', '*', 'a/*', '../*', './../*']) + */ +function getPatternsOutsideCurrentDirectory(patterns) { + return patterns.filter(isPatternRelatedToParentDirectory); +} +exports.getPatternsOutsideCurrentDirectory = getPatternsOutsideCurrentDirectory; +function isPatternRelatedToParentDirectory(pattern) { + return pattern.startsWith('..') || pattern.startsWith('./..'); +} +exports.isPatternRelatedToParentDirectory = isPatternRelatedToParentDirectory; +function getBaseDirectory(pattern) { + return globParent(pattern, { flipBackslashes: false }); +} +exports.getBaseDirectory = getBaseDirectory; +function hasGlobStar(pattern) { + return pattern.includes(GLOBSTAR); +} +exports.hasGlobStar = hasGlobStar; +function endsWithSlashGlobStar(pattern) { + return pattern.endsWith('/' + GLOBSTAR); +} +exports.endsWithSlashGlobStar = endsWithSlashGlobStar; +function isAffectDepthOfReadingPattern(pattern) { + const basename = path.basename(pattern); + return endsWithSlashGlobStar(pattern) || isStaticPattern(basename); +} +exports.isAffectDepthOfReadingPattern = isAffectDepthOfReadingPattern; +function expandPatternsWithBraceExpansion(patterns) { + return patterns.reduce((collection, pattern) => { + return collection.concat(expandBraceExpansion(pattern)); + }, []); +} +exports.expandPatternsWithBraceExpansion = expandPatternsWithBraceExpansion; +function expandBraceExpansion(pattern) { + const patterns = micromatch.braces(pattern, { expand: true, nodupes: true, keepEscaping: true }); + /** + * Sort the patterns by length so that the same depth patterns are processed side by side. + * `a/{b,}/{c,}/*` – `['a///*', 'a/b//*', 'a//c/*', 'a/b/c/*']` + */ + patterns.sort((a, b) => a.length - b.length); + /** + * Micromatch can return an empty string in the case of patterns like `{a,}`. + */ + return patterns.filter((pattern) => pattern !== ''); +} +exports.expandBraceExpansion = expandBraceExpansion; +function getPatternParts(pattern, options) { + let { parts } = micromatch.scan(pattern, Object.assign(Object.assign({}, options), { parts: true })); + /** + * The scan method returns an empty array in some cases. + * See micromatch/picomatch#58 for more details. + */ + if (parts.length === 0) { + parts = [pattern]; } - return Object.assign(Object.assign({}, exports.FILE_SYSTEM_ADAPTER), fsMethods); + /** + * The scan method does not return an empty part for the pattern with a forward slash. + * This is another part of micromatch/picomatch#58. + */ + if (parts[0].startsWith('/')) { + parts[0] = parts[0].slice(1); + parts.unshift(''); + } + return parts; } -exports.createFileSystemAdapter = createFileSystemAdapter; - - -/***/ }), - -/***/ 9459: -/***/ ((__unused_webpack_module, exports) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.IS_SUPPORT_READDIR_WITH_FILE_TYPES = void 0; -const NODE_PROCESS_VERSION_PARTS = process.versions.node.split('.'); -if (NODE_PROCESS_VERSION_PARTS[0] === undefined || NODE_PROCESS_VERSION_PARTS[1] === undefined) { - throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`); +exports.getPatternParts = getPatternParts; +function makeRe(pattern, options) { + return micromatch.makeRe(pattern, options); } -const MAJOR_VERSION = Number.parseInt(NODE_PROCESS_VERSION_PARTS[0], 10); -const MINOR_VERSION = Number.parseInt(NODE_PROCESS_VERSION_PARTS[1], 10); -const SUPPORTED_MAJOR_VERSION = 10; -const SUPPORTED_MINOR_VERSION = 10; -const IS_MATCHED_BY_MAJOR = MAJOR_VERSION > SUPPORTED_MAJOR_VERSION; -const IS_MATCHED_BY_MAJOR_AND_MINOR = MAJOR_VERSION === SUPPORTED_MAJOR_VERSION && MINOR_VERSION >= SUPPORTED_MINOR_VERSION; +exports.makeRe = makeRe; +function convertPatternsToRe(patterns, options) { + return patterns.map((pattern) => makeRe(pattern, options)); +} +exports.convertPatternsToRe = convertPatternsToRe; +function matchAny(entry, patternsRe) { + return patternsRe.some((patternRe) => patternRe.test(entry)); +} +exports.matchAny = matchAny; /** - * IS `true` for Node.js 10.10 and greater. + * This package only works with forward slashes as a path separator. + * Because of this, we cannot use the standard `path.normalize` method, because on Windows platform it will use of backslashes. */ -exports.IS_SUPPORT_READDIR_WITH_FILE_TYPES = IS_MATCHED_BY_MAJOR || IS_MATCHED_BY_MAJOR_AND_MINOR; +function removeDuplicateSlashes(pattern) { + return pattern.replace(DOUBLE_SLASH_RE, '/'); +} +exports.removeDuplicateSlashes = removeDuplicateSlashes; +function partitionAbsoluteAndRelative(patterns) { + const absolute = []; + const relative = []; + for (const pattern of patterns) { + if (isAbsolute(pattern)) { + absolute.push(pattern); + } + else { + relative.push(pattern); + } + } + return [absolute, relative]; +} +exports.partitionAbsoluteAndRelative = partitionAbsoluteAndRelative; +function isAbsolute(pattern) { + return path.isAbsolute(pattern); +} +exports.isAbsolute = isAbsolute; /***/ }), -/***/ 44482: +/***/ 9103: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Settings = exports.scandirSync = exports.scandir = void 0; -const async = __nccwpck_require__(69359); -const sync = __nccwpck_require__(79588); -const settings_1 = __nccwpck_require__(42321); -exports.Settings = settings_1.default; -function scandir(path, optionsOrSettingsOrCallback, callback) { - if (typeof optionsOrSettingsOrCallback === 'function') { - async.read(path, getSettings(), optionsOrSettingsOrCallback); - return; - } - async.read(path, getSettings(optionsOrSettingsOrCallback), callback); -} -exports.scandir = scandir; -function scandirSync(path, optionsOrSettings) { - const settings = getSettings(optionsOrSettings); - return sync.read(path, settings); -} -exports.scandirSync = scandirSync; -function getSettings(settingsOrOptions = {}) { - if (settingsOrOptions instanceof settings_1.default) { - return settingsOrOptions; - } - return new settings_1.default(settingsOrOptions); -} - - -/***/ }), - -/***/ 69359: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.readdir = exports.readdirWithFileTypes = exports.read = void 0; -const fsStat = __nccwpck_require__(80794); -const rpl = __nccwpck_require__(90347); -const constants_1 = __nccwpck_require__(9459); -const utils = __nccwpck_require__(76556); -const common = __nccwpck_require__(7254); -function read(directory, settings, callback) { - if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) { - readdirWithFileTypes(directory, settings, callback); - return; - } - readdir(directory, settings, callback); -} -exports.read = read; -function readdirWithFileTypes(directory, settings, callback) { - settings.fs.readdir(directory, { withFileTypes: true }, (readdirError, dirents) => { - if (readdirError !== null) { - callFailureCallback(callback, readdirError); - return; - } - const entries = dirents.map((dirent) => ({ - dirent, - name: dirent.name, - path: common.joinPathSegments(directory, dirent.name, settings.pathSegmentSeparator) - })); - if (!settings.followSymbolicLinks) { - callSuccessCallback(callback, entries); - return; - } - const tasks = entries.map((entry) => makeRplTaskEntry(entry, settings)); - rpl(tasks, (rplError, rplEntries) => { - if (rplError !== null) { - callFailureCallback(callback, rplError); - return; - } - callSuccessCallback(callback, rplEntries); - }); - }); -} -exports.readdirWithFileTypes = readdirWithFileTypes; -function makeRplTaskEntry(entry, settings) { - return (done) => { - if (!entry.dirent.isSymbolicLink()) { - done(null, entry); - return; - } - settings.fs.stat(entry.path, (statError, stats) => { - if (statError !== null) { - if (settings.throwErrorOnBrokenSymbolicLink) { - done(statError); - return; - } - done(null, entry); - return; - } - entry.dirent = utils.fs.createDirentFromStats(entry.name, stats); - done(null, entry); - }); - }; -} -function readdir(directory, settings, callback) { - settings.fs.readdir(directory, (readdirError, names) => { - if (readdirError !== null) { - callFailureCallback(callback, readdirError); - return; - } - const tasks = names.map((name) => { - const path = common.joinPathSegments(directory, name, settings.pathSegmentSeparator); - return (done) => { - fsStat.stat(path, settings.fsStatSettings, (error, stats) => { - if (error !== null) { - done(error); - return; - } - const entry = { - name, - path, - dirent: utils.fs.createDirentFromStats(name, stats) - }; - if (settings.stats) { - entry.stats = stats; - } - done(null, entry); - }); - }; - }); - rpl(tasks, (rplError, entries) => { - if (rplError !== null) { - callFailureCallback(callback, rplError); - return; - } - callSuccessCallback(callback, entries); - }); - }); -} -exports.readdir = readdir; -function callFailureCallback(callback, error) { - callback(error); -} -function callSuccessCallback(callback, result) { - callback(null, result); -} - - -/***/ }), - -/***/ 7254: -/***/ ((__unused_webpack_module, exports) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.joinPathSegments = void 0; -function joinPathSegments(a, b, separator) { - /** - * The correct handling of cases when the first segment is a root (`/`, `C:/`) or UNC path (`//?/C:/`). - */ - if (a.endsWith(separator)) { - return a + b; - } - return a + separator + b; -} -exports.joinPathSegments = joinPathSegments; - - -/***/ }), - -/***/ 79588: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.readdir = exports.readdirWithFileTypes = exports.read = void 0; -const fsStat = __nccwpck_require__(80794); -const constants_1 = __nccwpck_require__(9459); -const utils = __nccwpck_require__(76556); -const common = __nccwpck_require__(7254); -function read(directory, settings) { - if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) { - return readdirWithFileTypes(directory, settings); - } - return readdir(directory, settings); -} -exports.read = read; -function readdirWithFileTypes(directory, settings) { - const dirents = settings.fs.readdirSync(directory, { withFileTypes: true }); - return dirents.map((dirent) => { - const entry = { - dirent, - name: dirent.name, - path: common.joinPathSegments(directory, dirent.name, settings.pathSegmentSeparator) - }; - if (entry.dirent.isSymbolicLink() && settings.followSymbolicLinks) { - try { - const stats = settings.fs.statSync(entry.path); - entry.dirent = utils.fs.createDirentFromStats(entry.name, stats); - } - catch (error) { - if (settings.throwErrorOnBrokenSymbolicLink) { - throw error; - } - } - } - return entry; - }); -} -exports.readdirWithFileTypes = readdirWithFileTypes; -function readdir(directory, settings) { - const names = settings.fs.readdirSync(directory); - return names.map((name) => { - const entryPath = common.joinPathSegments(directory, name, settings.pathSegmentSeparator); - const stats = fsStat.statSync(entryPath, settings.fsStatSettings); - const entry = { - name, - path: entryPath, - dirent: utils.fs.createDirentFromStats(name, stats) - }; - if (settings.stats) { - entry.stats = stats; - } - return entry; - }); -} -exports.readdir = readdir; - - -/***/ }), - -/***/ 42321: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -const path = __nccwpck_require__(16928); -const fsStat = __nccwpck_require__(80794); -const fs = __nccwpck_require__(69988); -class Settings { - constructor(_options = {}) { - this._options = _options; - this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, false); - this.fs = fs.createFileSystemAdapter(this._options.fs); - this.pathSegmentSeparator = this._getValue(this._options.pathSegmentSeparator, path.sep); - this.stats = this._getValue(this._options.stats, false); - this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, true); - this.fsStatSettings = new fsStat.Settings({ - followSymbolicLink: this.followSymbolicLinks, - fs: this.fs, - throwErrorOnBrokenSymbolicLink: this.throwErrorOnBrokenSymbolicLink - }); - } - _getValue(option, value) { - return option !== null && option !== void 0 ? option : value; - } -} -exports["default"] = Settings; - - -/***/ }), - -/***/ 52789: -/***/ ((__unused_webpack_module, exports) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.createDirentFromStats = void 0; -class DirentFromStats { - constructor(name, stats) { - this.name = name; - this.isBlockDevice = stats.isBlockDevice.bind(stats); - this.isCharacterDevice = stats.isCharacterDevice.bind(stats); - this.isDirectory = stats.isDirectory.bind(stats); - this.isFIFO = stats.isFIFO.bind(stats); - this.isFile = stats.isFile.bind(stats); - this.isSocket = stats.isSocket.bind(stats); - this.isSymbolicLink = stats.isSymbolicLink.bind(stats); - } -} -function createDirentFromStats(name, stats) { - return new DirentFromStats(name, stats); -} -exports.createDirentFromStats = createDirentFromStats; - - -/***/ }), - -/***/ 76556: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.fs = void 0; -const fs = __nccwpck_require__(52789); -exports.fs = fs; - - -/***/ }), - -/***/ 94076: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.createFileSystemAdapter = exports.FILE_SYSTEM_ADAPTER = void 0; -const fs = __nccwpck_require__(79896); -exports.FILE_SYSTEM_ADAPTER = { - lstat: fs.lstat, - stat: fs.stat, - lstatSync: fs.lstatSync, - statSync: fs.statSync -}; -function createFileSystemAdapter(fsMethods) { - if (fsMethods === undefined) { - return exports.FILE_SYSTEM_ADAPTER; - } - return Object.assign(Object.assign({}, exports.FILE_SYSTEM_ADAPTER), fsMethods); -} -exports.createFileSystemAdapter = createFileSystemAdapter; - - -/***/ }), - -/***/ 80794: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.statSync = exports.stat = exports.Settings = void 0; -const async = __nccwpck_require__(36103); -const sync = __nccwpck_require__(40652); -const settings_1 = __nccwpck_require__(65897); -exports.Settings = settings_1.default; -function stat(path, optionsOrSettingsOrCallback, callback) { - if (typeof optionsOrSettingsOrCallback === 'function') { - async.read(path, getSettings(), optionsOrSettingsOrCallback); - return; - } - async.read(path, getSettings(optionsOrSettingsOrCallback), callback); -} -exports.stat = stat; -function statSync(path, optionsOrSettings) { - const settings = getSettings(optionsOrSettings); - return sync.read(path, settings); -} -exports.statSync = statSync; -function getSettings(settingsOrOptions = {}) { - if (settingsOrOptions instanceof settings_1.default) { - return settingsOrOptions; - } - return new settings_1.default(settingsOrOptions); -} - - -/***/ }), - -/***/ 36103: -/***/ ((__unused_webpack_module, exports) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.read = void 0; -function read(path, settings, callback) { - settings.fs.lstat(path, (lstatError, lstat) => { - if (lstatError !== null) { - callFailureCallback(callback, lstatError); - return; - } - if (!lstat.isSymbolicLink() || !settings.followSymbolicLink) { - callSuccessCallback(callback, lstat); - return; - } - settings.fs.stat(path, (statError, stat) => { - if (statError !== null) { - if (settings.throwErrorOnBrokenSymbolicLink) { - callFailureCallback(callback, statError); - return; - } - callSuccessCallback(callback, lstat); - return; - } - if (settings.markSymbolicLink) { - stat.isSymbolicLink = () => true; - } - callSuccessCallback(callback, stat); - }); +exports.merge = void 0; +const merge2 = __nccwpck_require__(4031); +function merge(streams) { + const mergedStream = merge2(streams); + streams.forEach((stream) => { + stream.once('error', (error) => mergedStream.emit('error', error)); }); + mergedStream.once('close', () => propagateCloseEventToSources(streams)); + mergedStream.once('end', () => propagateCloseEventToSources(streams)); + return mergedStream; } -exports.read = read; -function callFailureCallback(callback, error) { - callback(error); -} -function callSuccessCallback(callback, result) { - callback(null, result); -} - - -/***/ }), - -/***/ 40652: -/***/ ((__unused_webpack_module, exports) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.read = void 0; -function read(path, settings) { - const lstat = settings.fs.lstatSync(path); - if (!lstat.isSymbolicLink() || !settings.followSymbolicLink) { - return lstat; - } - try { - const stat = settings.fs.statSync(path); - if (settings.markSymbolicLink) { - stat.isSymbolicLink = () => true; - } - return stat; - } - catch (error) { - if (!settings.throwErrorOnBrokenSymbolicLink) { - return lstat; - } - throw error; - } -} -exports.read = read; - - -/***/ }), - -/***/ 65897: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -const fs = __nccwpck_require__(94076); -class Settings { - constructor(_options = {}) { - this._options = _options; - this.followSymbolicLink = this._getValue(this._options.followSymbolicLink, true); - this.fs = fs.createFileSystemAdapter(this._options.fs); - this.markSymbolicLink = this._getValue(this._options.markSymbolicLink, false); - this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, true); - } - _getValue(option, value) { - return option !== null && option !== void 0 ? option : value; - } -} -exports["default"] = Settings; - - -/***/ }), - -/***/ 83989: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Settings = exports.walkStream = exports.walkSync = exports.walk = void 0; -const async_1 = __nccwpck_require__(51316); -const stream_1 = __nccwpck_require__(10390); -const sync_1 = __nccwpck_require__(37405); -const settings_1 = __nccwpck_require__(74520); -exports.Settings = settings_1.default; -function walk(directory, optionsOrSettingsOrCallback, callback) { - if (typeof optionsOrSettingsOrCallback === 'function') { - new async_1.default(directory, getSettings()).read(optionsOrSettingsOrCallback); - return; - } - new async_1.default(directory, getSettings(optionsOrSettingsOrCallback)).read(callback); -} -exports.walk = walk; -function walkSync(directory, optionsOrSettings) { - const settings = getSettings(optionsOrSettings); - const provider = new sync_1.default(directory, settings); - return provider.read(); -} -exports.walkSync = walkSync; -function walkStream(directory, optionsOrSettings) { - const settings = getSettings(optionsOrSettings); - const provider = new stream_1.default(directory, settings); - return provider.read(); -} -exports.walkStream = walkStream; -function getSettings(settingsOrOptions = {}) { - if (settingsOrOptions instanceof settings_1.default) { - return settingsOrOptions; - } - return new settings_1.default(settingsOrOptions); -} - - -/***/ }), - -/***/ 51316: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -const async_1 = __nccwpck_require__(59134); -class AsyncProvider { - constructor(_root, _settings) { - this._root = _root; - this._settings = _settings; - this._reader = new async_1.default(this._root, this._settings); - this._storage = []; - } - read(callback) { - this._reader.onError((error) => { - callFailureCallback(callback, error); - }); - this._reader.onEntry((entry) => { - this._storage.push(entry); - }); - this._reader.onEnd(() => { - callSuccessCallback(callback, this._storage); - }); - this._reader.read(); - } -} -exports["default"] = AsyncProvider; -function callFailureCallback(callback, error) { - callback(error); -} -function callSuccessCallback(callback, entries) { - callback(null, entries); -} - - -/***/ }), - -/***/ 10390: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -const stream_1 = __nccwpck_require__(2203); -const async_1 = __nccwpck_require__(59134); -class StreamProvider { - constructor(_root, _settings) { - this._root = _root; - this._settings = _settings; - this._reader = new async_1.default(this._root, this._settings); - this._stream = new stream_1.Readable({ - objectMode: true, - read: () => { }, - destroy: () => { - if (!this._reader.isDestroyed) { - this._reader.destroy(); - } - } - }); - } - read() { - this._reader.onError((error) => { - this._stream.emit('error', error); - }); - this._reader.onEntry((entry) => { - this._stream.push(entry); - }); - this._reader.onEnd(() => { - this._stream.push(null); - }); - this._reader.read(); - return this._stream; - } +exports.merge = merge; +function propagateCloseEventToSources(streams) { + streams.forEach((stream) => stream.emit('close')); } -exports["default"] = StreamProvider; - - -/***/ }), - -/***/ 37405: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -const sync_1 = __nccwpck_require__(63339); -class SyncProvider { - constructor(_root, _settings) { - this._root = _root; - this._settings = _settings; - this._reader = new sync_1.default(this._root, this._settings); - } - read() { - return this._reader.read(); - } -} -exports["default"] = SyncProvider; - - -/***/ }), - -/***/ 59134: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -const events_1 = __nccwpck_require__(24434); -const fsScandir = __nccwpck_require__(44482); -const fastq = __nccwpck_require__(64898); -const common = __nccwpck_require__(90757); -const reader_1 = __nccwpck_require__(94739); -class AsyncReader extends reader_1.default { - constructor(_root, _settings) { - super(_root, _settings); - this._settings = _settings; - this._scandir = fsScandir.scandir; - this._emitter = new events_1.EventEmitter(); - this._queue = fastq(this._worker.bind(this), this._settings.concurrency); - this._isFatalError = false; - this._isDestroyed = false; - this._queue.drain = () => { - if (!this._isFatalError) { - this._emitter.emit('end'); - } - }; - } - read() { - this._isFatalError = false; - this._isDestroyed = false; - setImmediate(() => { - this._pushToQueue(this._root, this._settings.basePath); - }); - return this._emitter; - } - get isDestroyed() { - return this._isDestroyed; - } - destroy() { - if (this._isDestroyed) { - throw new Error('The reader is already destroyed'); - } - this._isDestroyed = true; - this._queue.killAndDrain(); - } - onEntry(callback) { - this._emitter.on('entry', callback); - } - onError(callback) { - this._emitter.once('error', callback); - } - onEnd(callback) { - this._emitter.once('end', callback); - } - _pushToQueue(directory, base) { - const queueItem = { directory, base }; - this._queue.push(queueItem, (error) => { - if (error !== null) { - this._handleError(error); - } - }); - } - _worker(item, done) { - this._scandir(item.directory, this._settings.fsScandirSettings, (error, entries) => { - if (error !== null) { - done(error, undefined); - return; - } - for (const entry of entries) { - this._handleEntry(entry, item.base); - } - done(null, undefined); - }); - } - _handleError(error) { - if (this._isDestroyed || !common.isFatalError(this._settings, error)) { - return; - } - this._isFatalError = true; - this._isDestroyed = true; - this._emitter.emit('error', error); - } - _handleEntry(entry, base) { - if (this._isDestroyed || this._isFatalError) { - return; - } - const fullpath = entry.path; - if (base !== undefined) { - entry.path = common.joinPathSegments(base, entry.name, this._settings.pathSegmentSeparator); - } - if (common.isAppliedFilter(this._settings.entryFilter, entry)) { - this._emitEntry(entry); - } - if (entry.dirent.isDirectory() && common.isAppliedFilter(this._settings.deepFilter, entry)) { - this._pushToQueue(fullpath, base === undefined ? undefined : entry.path); - } - } - _emitEntry(entry) { - this._emitter.emit('entry', entry); - } -} -exports["default"] = AsyncReader; - - -/***/ }), - -/***/ 90757: -/***/ ((__unused_webpack_module, exports) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.joinPathSegments = exports.replacePathSegmentSeparator = exports.isAppliedFilter = exports.isFatalError = void 0; -function isFatalError(settings, error) { - if (settings.errorFilter === null) { - return true; - } - return !settings.errorFilter(error); -} -exports.isFatalError = isFatalError; -function isAppliedFilter(filter, value) { - return filter === null || filter(value); -} -exports.isAppliedFilter = isAppliedFilter; -function replacePathSegmentSeparator(filepath, separator) { - return filepath.split(/[/\\]/).join(separator); -} -exports.replacePathSegmentSeparator = replacePathSegmentSeparator; -function joinPathSegments(a, b, separator) { - if (a === '') { - return b; - } - /** - * The correct handling of cases when the first segment is a root (`/`, `C:/`) or UNC path (`//?/C:/`). - */ - if (a.endsWith(separator)) { - return a + b; - } - return a + separator + b; -} -exports.joinPathSegments = joinPathSegments; - - -/***/ }), - -/***/ 94739: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -const common = __nccwpck_require__(90757); -class Reader { - constructor(_root, _settings) { - this._root = _root; - this._settings = _settings; - this._root = common.replacePathSegmentSeparator(_root, _settings.pathSegmentSeparator); - } -} -exports["default"] = Reader; - - -/***/ }), - -/***/ 63339: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -const fsScandir = __nccwpck_require__(44482); -const common = __nccwpck_require__(90757); -const reader_1 = __nccwpck_require__(94739); -class SyncReader extends reader_1.default { - constructor() { - super(...arguments); - this._scandir = fsScandir.scandirSync; - this._storage = []; - this._queue = new Set(); - } - read() { - this._pushToQueue(this._root, this._settings.basePath); - this._handleQueue(); - return this._storage; - } - _pushToQueue(directory, base) { - this._queue.add({ directory, base }); - } - _handleQueue() { - for (const item of this._queue.values()) { - this._handleDirectory(item.directory, item.base); - } - } - _handleDirectory(directory, base) { - try { - const entries = this._scandir(directory, this._settings.fsScandirSettings); - for (const entry of entries) { - this._handleEntry(entry, base); - } - } - catch (error) { - this._handleError(error); - } - } - _handleError(error) { - if (!common.isFatalError(this._settings, error)) { - return; - } - throw error; - } - _handleEntry(entry, base) { - const fullpath = entry.path; - if (base !== undefined) { - entry.path = common.joinPathSegments(base, entry.name, this._settings.pathSegmentSeparator); - } - if (common.isAppliedFilter(this._settings.entryFilter, entry)) { - this._pushToStorage(entry); - } - if (entry.dirent.isDirectory() && common.isAppliedFilter(this._settings.deepFilter, entry)) { - this._pushToQueue(fullpath, base === undefined ? undefined : entry.path); - } - } - _pushToStorage(entry) { - this._storage.push(entry); - } -} -exports["default"] = SyncReader; - - -/***/ }), - -/***/ 74520: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -const path = __nccwpck_require__(16928); -const fsScandir = __nccwpck_require__(44482); -class Settings { - constructor(_options = {}) { - this._options = _options; - this.basePath = this._getValue(this._options.basePath, undefined); - this.concurrency = this._getValue(this._options.concurrency, Number.POSITIVE_INFINITY); - this.deepFilter = this._getValue(this._options.deepFilter, null); - this.entryFilter = this._getValue(this._options.entryFilter, null); - this.errorFilter = this._getValue(this._options.errorFilter, null); - this.pathSegmentSeparator = this._getValue(this._options.pathSegmentSeparator, path.sep); - this.fsScandirSettings = new fsScandir.Settings({ - followSymbolicLinks: this._options.followSymbolicLinks, - fs: this._options.fs, - pathSegmentSeparator: this._options.pathSegmentSeparator, - stats: this._options.stats, - throwErrorOnBrokenSymbolicLink: this._options.throwErrorOnBrokenSymbolicLink - }); - } - _getValue(option, value) { - return option !== null && option !== void 0 ? option : value; - } -} -exports["default"] = Settings; - - -/***/ }), - -/***/ 71187: -/***/ ((module) => { - - - -module.exports = (...arguments_) => { - return [...new Set([].concat(...arguments_))]; -}; - - -/***/ }), - -/***/ 88843: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - -const path = __nccwpck_require__(16928) -const isWindows = __nccwpck_require__(65196) - -module.exports = isWindows() ? winResolve : path.resolve - -function winResolve (p) { - if (arguments.length === 0) return path.resolve() - if (typeof p !== 'string') { - return path.resolve(p) - } - // c: => C: - if (p[1] === ':') { - const cc = p[0].charCodeAt() - if (cc < 65 || cc > 90) { - p = `${p[0].toUpperCase()}${p.substr(1)}` - } - } - // On Windows path.resolve('C:') returns C:\Users\ - // We resolve C: to C: - if (p.endsWith(':')) { - return p - } - return path.resolve(p) -} - - -/***/ }), - -/***/ 37120: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -const stringify = __nccwpck_require__(40641); -const compile = __nccwpck_require__(26453); -const expand = __nccwpck_require__(6374); -const parse = __nccwpck_require__(35583); - -/** - * Expand the given pattern or create a regex-compatible string. - * - * ```js - * const braces = require('braces'); - * console.log(braces('{a,b,c}', { compile: true })); //=> ['(a|b|c)'] - * console.log(braces('{a,b,c}')); //=> ['a', 'b', 'c'] - * ``` - * @param {String} `str` - * @param {Object} `options` - * @return {String} - * @api public - */ - -const braces = (input, options = {}) => { - let output = []; - - if (Array.isArray(input)) { - for (const pattern of input) { - const result = braces.create(pattern, options); - if (Array.isArray(result)) { - output.push(...result); - } else { - output.push(result); - } - } - } else { - output = [].concat(braces.create(input, options)); - } - - if (options && options.expand === true && options.nodupes === true) { - output = [...new Set(output)]; - } - return output; -}; - -/** - * Parse the given `str` with the given `options`. - * - * ```js - * // braces.parse(pattern, [, options]); - * const ast = braces.parse('a/{b,c}/d'); - * console.log(ast); - * ``` - * @param {String} pattern Brace pattern to parse - * @param {Object} options - * @return {Object} Returns an AST - * @api public - */ - -braces.parse = (input, options = {}) => parse(input, options); - -/** - * Creates a braces string from an AST, or an AST node. - * - * ```js - * const braces = require('braces'); - * let ast = braces.parse('foo/{a,b}/bar'); - * console.log(stringify(ast.nodes[2])); //=> '{a,b}' - * ``` - * @param {String} `input` Brace pattern or AST. - * @param {Object} `options` - * @return {Array} Returns an array of expanded values. - * @api public - */ - -braces.stringify = (input, options = {}) => { - if (typeof input === 'string') { - return stringify(braces.parse(input, options), options); - } - return stringify(input, options); -}; - -/** - * Compiles a brace pattern into a regex-compatible, optimized string. - * This method is called by the main [braces](#braces) function by default. - * - * ```js - * const braces = require('braces'); - * console.log(braces.compile('a/{b,c}/d')); - * //=> ['a/(b|c)/d'] - * ``` - * @param {String} `input` Brace pattern or AST. - * @param {Object} `options` - * @return {Array} Returns an array of expanded values. - * @api public - */ - -braces.compile = (input, options = {}) => { - if (typeof input === 'string') { - input = braces.parse(input, options); - } - return compile(input, options); -}; - -/** - * Expands a brace pattern into an array. This method is called by the - * main [braces](#braces) function when `options.expand` is true. Before - * using this method it's recommended that you read the [performance notes](#performance)) - * and advantages of using [.compile](#compile) instead. - * - * ```js - * const braces = require('braces'); - * console.log(braces.expand('a/{b,c}/d')); - * //=> ['a/b/d', 'a/c/d']; - * ``` - * @param {String} `pattern` Brace pattern - * @param {Object} `options` - * @return {Array} Returns an array of expanded values. - * @api public - */ - -braces.expand = (input, options = {}) => { - if (typeof input === 'string') { - input = braces.parse(input, options); - } - - let result = expand(input, options); - - // filter out empty strings if specified - if (options.noempty === true) { - result = result.filter(Boolean); - } - - // filter out duplicates if specified - if (options.nodupes === true) { - result = [...new Set(result)]; - } - - return result; -}; - -/** - * Processes a brace pattern and returns either an expanded array - * (if `options.expand` is true), a highly optimized regex-compatible string. - * This method is called by the main [braces](#braces) function. - * - * ```js - * const braces = require('braces'); - * console.log(braces.create('user-{200..300}/project-{a,b,c}-{1..10}')) - * //=> 'user-(20[0-9]|2[1-9][0-9]|300)/project-(a|b|c)-([1-9]|10)' - * ``` - * @param {String} `pattern` Brace pattern - * @param {Object} `options` - * @return {Array} Returns an array of expanded values. - * @api public - */ - -braces.create = (input, options = {}) => { - if (input === '' || input.length < 3) { - return [input]; - } - - return options.expand !== true - ? braces.compile(input, options) - : braces.expand(input, options); -}; - -/** - * Expose "braces" - */ - -module.exports = braces; - - -/***/ }), - -/***/ 26453: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -const fill = __nccwpck_require__(9073); -const utils = __nccwpck_require__(60837); - -const compile = (ast, options = {}) => { - const walk = (node, parent = {}) => { - const invalidBlock = utils.isInvalidBrace(parent); - const invalidNode = node.invalid === true && options.escapeInvalid === true; - const invalid = invalidBlock === true || invalidNode === true; - const prefix = options.escapeInvalid === true ? '\\' : ''; - let output = ''; - - if (node.isOpen === true) { - return prefix + node.value; - } - - if (node.isClose === true) { - console.log('node.isClose', prefix, node.value); - return prefix + node.value; - } - - if (node.type === 'open') { - return invalid ? prefix + node.value : '('; - } - - if (node.type === 'close') { - return invalid ? prefix + node.value : ')'; - } - - if (node.type === 'comma') { - return node.prev.type === 'comma' ? '' : invalid ? node.value : '|'; - } - - if (node.value) { - return node.value; - } - - if (node.nodes && node.ranges > 0) { - const args = utils.reduce(node.nodes); - const range = fill(...args, { ...options, wrap: false, toRegex: true, strictZeros: true }); - - if (range.length !== 0) { - return args.length > 1 && range.length > 1 ? `(${range})` : range; - } - } - - if (node.nodes) { - for (const child of node.nodes) { - output += walk(child, node); - } - } - - return output; - }; - - return walk(ast); -}; - -module.exports = compile; - - -/***/ }), - -/***/ 57201: -/***/ ((module) => { - - - -module.exports = { - MAX_LENGTH: 10000, - - // Digits - CHAR_0: '0', /* 0 */ - CHAR_9: '9', /* 9 */ - - // Alphabet chars. - CHAR_UPPERCASE_A: 'A', /* A */ - CHAR_LOWERCASE_A: 'a', /* a */ - CHAR_UPPERCASE_Z: 'Z', /* Z */ - CHAR_LOWERCASE_Z: 'z', /* z */ - - CHAR_LEFT_PARENTHESES: '(', /* ( */ - CHAR_RIGHT_PARENTHESES: ')', /* ) */ - - CHAR_ASTERISK: '*', /* * */ - - // Non-alphabetic chars. - CHAR_AMPERSAND: '&', /* & */ - CHAR_AT: '@', /* @ */ - CHAR_BACKSLASH: '\\', /* \ */ - CHAR_BACKTICK: '`', /* ` */ - CHAR_CARRIAGE_RETURN: '\r', /* \r */ - CHAR_CIRCUMFLEX_ACCENT: '^', /* ^ */ - CHAR_COLON: ':', /* : */ - CHAR_COMMA: ',', /* , */ - CHAR_DOLLAR: '$', /* . */ - CHAR_DOT: '.', /* . */ - CHAR_DOUBLE_QUOTE: '"', /* " */ - CHAR_EQUAL: '=', /* = */ - CHAR_EXCLAMATION_MARK: '!', /* ! */ - CHAR_FORM_FEED: '\f', /* \f */ - CHAR_FORWARD_SLASH: '/', /* / */ - CHAR_HASH: '#', /* # */ - CHAR_HYPHEN_MINUS: '-', /* - */ - CHAR_LEFT_ANGLE_BRACKET: '<', /* < */ - CHAR_LEFT_CURLY_BRACE: '{', /* { */ - CHAR_LEFT_SQUARE_BRACKET: '[', /* [ */ - CHAR_LINE_FEED: '\n', /* \n */ - CHAR_NO_BREAK_SPACE: '\u00A0', /* \u00A0 */ - CHAR_PERCENT: '%', /* % */ - CHAR_PLUS: '+', /* + */ - CHAR_QUESTION_MARK: '?', /* ? */ - CHAR_RIGHT_ANGLE_BRACKET: '>', /* > */ - CHAR_RIGHT_CURLY_BRACE: '}', /* } */ - CHAR_RIGHT_SQUARE_BRACKET: ']', /* ] */ - CHAR_SEMICOLON: ';', /* ; */ - CHAR_SINGLE_QUOTE: '\'', /* ' */ - CHAR_SPACE: ' ', /* */ - CHAR_TAB: '\t', /* \t */ - CHAR_UNDERSCORE: '_', /* _ */ - CHAR_VERTICAL_LINE: '|', /* | */ - CHAR_ZERO_WIDTH_NOBREAK_SPACE: '\uFEFF' /* \uFEFF */ -}; - - -/***/ }), - -/***/ 6374: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -const fill = __nccwpck_require__(9073); -const stringify = __nccwpck_require__(40641); -const utils = __nccwpck_require__(60837); - -const append = (queue = '', stash = '', enclose = false) => { - const result = []; - - queue = [].concat(queue); - stash = [].concat(stash); - - if (!stash.length) return queue; - if (!queue.length) { - return enclose ? utils.flatten(stash).map(ele => `{${ele}}`) : stash; - } - - for (const item of queue) { - if (Array.isArray(item)) { - for (const value of item) { - result.push(append(value, stash, enclose)); - } - } else { - for (let ele of stash) { - if (enclose === true && typeof ele === 'string') ele = `{${ele}}`; - result.push(Array.isArray(ele) ? append(item, ele, enclose) : item + ele); - } - } - } - return utils.flatten(result); -}; - -const expand = (ast, options = {}) => { - const rangeLimit = options.rangeLimit === undefined ? 1000 : options.rangeLimit; - - const walk = (node, parent = {}) => { - node.queue = []; - - let p = parent; - let q = parent.queue; - - while (p.type !== 'brace' && p.type !== 'root' && p.parent) { - p = p.parent; - q = p.queue; - } - - if (node.invalid || node.dollar) { - q.push(append(q.pop(), stringify(node, options))); - return; - } - - if (node.type === 'brace' && node.invalid !== true && node.nodes.length === 2) { - q.push(append(q.pop(), ['{}'])); - return; - } - - if (node.nodes && node.ranges > 0) { - const args = utils.reduce(node.nodes); - - if (utils.exceedsLimit(...args, options.step, rangeLimit)) { - throw new RangeError('expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.'); - } - - let range = fill(...args, options); - if (range.length === 0) { - range = stringify(node, options); - } - - q.push(append(q.pop(), range)); - node.nodes = []; - return; - } - - const enclose = utils.encloseBrace(node); - let queue = node.queue; - let block = node; - - while (block.type !== 'brace' && block.type !== 'root' && block.parent) { - block = block.parent; - queue = block.queue; - } - - for (let i = 0; i < node.nodes.length; i++) { - const child = node.nodes[i]; - - if (child.type === 'comma' && node.type === 'brace') { - if (i === 1) queue.push(''); - queue.push(''); - continue; - } - - if (child.type === 'close') { - q.push(append(q.pop(), queue, enclose)); - continue; - } - - if (child.value && child.type !== 'open') { - queue.push(append(queue.pop(), child.value)); - continue; - } - - if (child.nodes) { - walk(child, node); - } - } - - return queue; - }; - - return utils.flatten(walk(ast)); -}; - -module.exports = expand; - - -/***/ }), - -/***/ 35583: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -const stringify = __nccwpck_require__(40641); - -/** - * Constants - */ - -const { - MAX_LENGTH, - CHAR_BACKSLASH, /* \ */ - CHAR_BACKTICK, /* ` */ - CHAR_COMMA, /* , */ - CHAR_DOT, /* . */ - CHAR_LEFT_PARENTHESES, /* ( */ - CHAR_RIGHT_PARENTHESES, /* ) */ - CHAR_LEFT_CURLY_BRACE, /* { */ - CHAR_RIGHT_CURLY_BRACE, /* } */ - CHAR_LEFT_SQUARE_BRACKET, /* [ */ - CHAR_RIGHT_SQUARE_BRACKET, /* ] */ - CHAR_DOUBLE_QUOTE, /* " */ - CHAR_SINGLE_QUOTE, /* ' */ - CHAR_NO_BREAK_SPACE, - CHAR_ZERO_WIDTH_NOBREAK_SPACE -} = __nccwpck_require__(57201); - -/** - * parse - */ - -const parse = (input, options = {}) => { - if (typeof input !== 'string') { - throw new TypeError('Expected a string'); - } - - const opts = options || {}; - const max = typeof opts.maxLength === 'number' ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH; - if (input.length > max) { - throw new SyntaxError(`Input length (${input.length}), exceeds max characters (${max})`); - } - - const ast = { type: 'root', input, nodes: [] }; - const stack = [ast]; - let block = ast; - let prev = ast; - let brackets = 0; - const length = input.length; - let index = 0; - let depth = 0; - let value; - - /** - * Helpers - */ - - const advance = () => input[index++]; - const push = node => { - if (node.type === 'text' && prev.type === 'dot') { - prev.type = 'text'; - } - - if (prev && prev.type === 'text' && node.type === 'text') { - prev.value += node.value; - return; - } - - block.nodes.push(node); - node.parent = block; - node.prev = prev; - prev = node; - return node; - }; - - push({ type: 'bos' }); - - while (index < length) { - block = stack[stack.length - 1]; - value = advance(); - - /** - * Invalid chars - */ - - if (value === CHAR_ZERO_WIDTH_NOBREAK_SPACE || value === CHAR_NO_BREAK_SPACE) { - continue; - } - - /** - * Escaped chars - */ - - if (value === CHAR_BACKSLASH) { - push({ type: 'text', value: (options.keepEscaping ? value : '') + advance() }); - continue; - } - - /** - * Right square bracket (literal): ']' - */ - - if (value === CHAR_RIGHT_SQUARE_BRACKET) { - push({ type: 'text', value: '\\' + value }); - continue; - } - - /** - * Left square bracket: '[' - */ - - if (value === CHAR_LEFT_SQUARE_BRACKET) { - brackets++; - - let next; - - while (index < length && (next = advance())) { - value += next; - - if (next === CHAR_LEFT_SQUARE_BRACKET) { - brackets++; - continue; - } - - if (next === CHAR_BACKSLASH) { - value += advance(); - continue; - } - - if (next === CHAR_RIGHT_SQUARE_BRACKET) { - brackets--; - - if (brackets === 0) { - break; - } - } - } - - push({ type: 'text', value }); - continue; - } - - /** - * Parentheses - */ - - if (value === CHAR_LEFT_PARENTHESES) { - block = push({ type: 'paren', nodes: [] }); - stack.push(block); - push({ type: 'text', value }); - continue; - } - - if (value === CHAR_RIGHT_PARENTHESES) { - if (block.type !== 'paren') { - push({ type: 'text', value }); - continue; - } - block = stack.pop(); - push({ type: 'text', value }); - block = stack[stack.length - 1]; - continue; - } - - /** - * Quotes: '|"|` - */ - - if (value === CHAR_DOUBLE_QUOTE || value === CHAR_SINGLE_QUOTE || value === CHAR_BACKTICK) { - const open = value; - let next; - - if (options.keepQuotes !== true) { - value = ''; - } - - while (index < length && (next = advance())) { - if (next === CHAR_BACKSLASH) { - value += next + advance(); - continue; - } - - if (next === open) { - if (options.keepQuotes === true) value += next; - break; - } - - value += next; - } - - push({ type: 'text', value }); - continue; - } - - /** - * Left curly brace: '{' - */ - - if (value === CHAR_LEFT_CURLY_BRACE) { - depth++; - - const dollar = prev.value && prev.value.slice(-1) === '$' || block.dollar === true; - const brace = { - type: 'brace', - open: true, - close: false, - dollar, - depth, - commas: 0, - ranges: 0, - nodes: [] - }; - - block = push(brace); - stack.push(block); - push({ type: 'open', value }); - continue; - } - - /** - * Right curly brace: '}' - */ - - if (value === CHAR_RIGHT_CURLY_BRACE) { - if (block.type !== 'brace') { - push({ type: 'text', value }); - continue; - } - - const type = 'close'; - block = stack.pop(); - block.close = true; - - push({ type, value }); - depth--; - - block = stack[stack.length - 1]; - continue; - } - - /** - * Comma: ',' - */ - - if (value === CHAR_COMMA && depth > 0) { - if (block.ranges > 0) { - block.ranges = 0; - const open = block.nodes.shift(); - block.nodes = [open, { type: 'text', value: stringify(block) }]; - } - - push({ type: 'comma', value }); - block.commas++; - continue; - } - - /** - * Dot: '.' - */ - - if (value === CHAR_DOT && depth > 0 && block.commas === 0) { - const siblings = block.nodes; - - if (depth === 0 || siblings.length === 0) { - push({ type: 'text', value }); - continue; - } - - if (prev.type === 'dot') { - block.range = []; - prev.value += value; - prev.type = 'range'; - - if (block.nodes.length !== 3 && block.nodes.length !== 5) { - block.invalid = true; - block.ranges = 0; - prev.type = 'text'; - continue; - } - - block.ranges++; - block.args = []; - continue; - } - - if (prev.type === 'range') { - siblings.pop(); - - const before = siblings[siblings.length - 1]; - before.value += prev.value + value; - prev = before; - block.ranges--; - continue; - } - - push({ type: 'dot', value }); - continue; - } - - /** - * Text - */ - - push({ type: 'text', value }); - } - - // Mark imbalanced braces and brackets as invalid - do { - block = stack.pop(); - - if (block.type !== 'root') { - block.nodes.forEach(node => { - if (!node.nodes) { - if (node.type === 'open') node.isOpen = true; - if (node.type === 'close') node.isClose = true; - if (!node.nodes) node.type = 'text'; - node.invalid = true; - } - }); - - // get the location of the block on parent.nodes (block's siblings) - const parent = stack[stack.length - 1]; - const index = parent.nodes.indexOf(block); - // replace the (invalid) block with it's nodes - parent.nodes.splice(index, 1, ...block.nodes); - } - } while (stack.length > 0); - - push({ type: 'eos' }); - return ast; -}; - -module.exports = parse; - - -/***/ }), - -/***/ 40641: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -const utils = __nccwpck_require__(60837); - -module.exports = (ast, options = {}) => { - const stringify = (node, parent = {}) => { - const invalidBlock = options.escapeInvalid && utils.isInvalidBrace(parent); - const invalidNode = node.invalid === true && options.escapeInvalid === true; - let output = ''; - - if (node.value) { - if ((invalidBlock || invalidNode) && utils.isOpenOrClose(node)) { - return '\\' + node.value; - } - return node.value; - } - - if (node.value) { - return node.value; - } - - if (node.nodes) { - for (const child of node.nodes) { - output += stringify(child); - } - } - return output; - }; - - return stringify(ast); -}; - - - -/***/ }), - -/***/ 60837: -/***/ ((__unused_webpack_module, exports) => { - - - -exports.isInteger = num => { - if (typeof num === 'number') { - return Number.isInteger(num); - } - if (typeof num === 'string' && num.trim() !== '') { - return Number.isInteger(Number(num)); - } - return false; -}; - -/** - * Find a node of the given type - */ - -exports.find = (node, type) => node.nodes.find(node => node.type === type); - -/** - * Find a node of the given type - */ - -exports.exceedsLimit = (min, max, step = 1, limit) => { - if (limit === false) return false; - if (!exports.isInteger(min) || !exports.isInteger(max)) return false; - return ((Number(max) - Number(min)) / Number(step)) >= limit; -}; - -/** - * Escape the given node with '\\' before node.value - */ - -exports.escapeNode = (block, n = 0, type) => { - const node = block.nodes[n]; - if (!node) return; - - if ((type && node.type === type) || node.type === 'open' || node.type === 'close') { - if (node.escaped !== true) { - node.value = '\\' + node.value; - node.escaped = true; - } - } -}; - -/** - * Returns true if the given brace node should be enclosed in literal braces - */ - -exports.encloseBrace = node => { - if (node.type !== 'brace') return false; - if ((node.commas >> 0 + node.ranges >> 0) === 0) { - node.invalid = true; - return true; - } - return false; -}; - -/** - * Returns true if a brace node is invalid. - */ - -exports.isInvalidBrace = block => { - if (block.type !== 'brace') return false; - if (block.invalid === true || block.dollar) return true; - if ((block.commas >> 0 + block.ranges >> 0) === 0) { - block.invalid = true; - return true; - } - if (block.open !== true || block.close !== true) { - block.invalid = true; - return true; - } - return false; -}; - -/** - * Returns true if a node is an open or close node - */ - -exports.isOpenOrClose = node => { - if (node.type === 'open' || node.type === 'close') { - return true; - } - return node.open === true || node.close === true; -}; - -/** - * Reduce an array of text nodes. - */ - -exports.reduce = nodes => nodes.reduce((acc, node) => { - if (node.type === 'text') acc.push(node.value); - if (node.type === 'range') node.type = 'text'; - return acc; -}, []); - -/** - * Flatten an array - */ - -exports.flatten = (...args) => { - const result = []; - - const flat = arr => { - for (let i = 0; i < arr.length; i++) { - const ele = arr[i]; - - if (Array.isArray(ele)) { - flat(ele); - continue; - } - - if (ele !== undefined) { - result.push(ele); - } - } - return result; - }; - - flat(args); - return result; -}; - - -/***/ }), - -/***/ 24422: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -const cp = __nccwpck_require__(35317); -const parse = __nccwpck_require__(57641); -const enoent = __nccwpck_require__(43609); - -function spawn(command, args, options) { - // Parse the arguments - const parsed = parse(command, args, options); - - // Spawn the child process - const spawned = cp.spawn(parsed.command, parsed.args, parsed.options); - - // Hook into child process "exit" event to emit an error if the command - // does not exists, see: https://github.com/IndigoUnited/node-cross-spawn/issues/16 - enoent.hookChildProcess(spawned, parsed); - - return spawned; -} - -function spawnSync(command, args, options) { - // Parse the arguments - const parsed = parse(command, args, options); - - // Spawn the child process - const result = cp.spawnSync(parsed.command, parsed.args, parsed.options); - - // Analyze if the command does not exist, see: https://github.com/IndigoUnited/node-cross-spawn/issues/16 - result.error = result.error || enoent.verifyENOENTSync(result.status, parsed); - - return result; -} - -module.exports = spawn; -module.exports.spawn = spawn; -module.exports.sync = spawnSync; - -module.exports._parse = parse; -module.exports._enoent = enoent; - - -/***/ }), - -/***/ 43609: -/***/ ((module) => { - - - -const isWin = process.platform === 'win32'; - -function notFoundError(original, syscall) { - return Object.assign(new Error(`${syscall} ${original.command} ENOENT`), { - code: 'ENOENT', - errno: 'ENOENT', - syscall: `${syscall} ${original.command}`, - path: original.command, - spawnargs: original.args, - }); -} - -function hookChildProcess(cp, parsed) { - if (!isWin) { - return; - } - - const originalEmit = cp.emit; - - cp.emit = function (name, arg1) { - // If emitting "exit" event and exit code is 1, we need to check if - // the command exists and emit an "error" instead - // See https://github.com/IndigoUnited/node-cross-spawn/issues/16 - if (name === 'exit') { - const err = verifyENOENT(arg1, parsed); - - if (err) { - return originalEmit.call(cp, 'error', err); - } - } - - return originalEmit.apply(cp, arguments); // eslint-disable-line prefer-rest-params - }; -} - -function verifyENOENT(status, parsed) { - if (isWin && status === 1 && !parsed.file) { - return notFoundError(parsed.original, 'spawn'); - } - - return null; -} - -function verifyENOENTSync(status, parsed) { - if (isWin && status === 1 && !parsed.file) { - return notFoundError(parsed.original, 'spawnSync'); - } - - return null; -} - -module.exports = { - hookChildProcess, - verifyENOENT, - verifyENOENTSync, - notFoundError, -}; - - -/***/ }), - -/***/ 57641: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -const path = __nccwpck_require__(16928); -const resolveCommand = __nccwpck_require__(71998); -const escape = __nccwpck_require__(30528); -const readShebang = __nccwpck_require__(38115); - -const isWin = process.platform === 'win32'; -const isExecutableRegExp = /\.(?:com|exe)$/i; -const isCmdShimRegExp = /node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i; - -function detectShebang(parsed) { - parsed.file = resolveCommand(parsed); - - const shebang = parsed.file && readShebang(parsed.file); - - if (shebang) { - parsed.args.unshift(parsed.file); - parsed.command = shebang; - - return resolveCommand(parsed); - } - - return parsed.file; -} - -function parseNonShell(parsed) { - if (!isWin) { - return parsed; - } - - // Detect & add support for shebangs - const commandFile = detectShebang(parsed); - - // We don't need a shell if the command filename is an executable - const needsShell = !isExecutableRegExp.test(commandFile); - - // If a shell is required, use cmd.exe and take care of escaping everything correctly - // Note that `forceShell` is an hidden option used only in tests - if (parsed.options.forceShell || needsShell) { - // Need to double escape meta chars if the command is a cmd-shim located in `node_modules/.bin/` - // The cmd-shim simply calls execute the package bin file with NodeJS, proxying any argument - // Because the escape of metachars with ^ gets interpreted when the cmd.exe is first called, - // we need to double escape them - const needsDoubleEscapeMetaChars = isCmdShimRegExp.test(commandFile); - - // Normalize posix paths into OS compatible paths (e.g.: foo/bar -> foo\bar) - // This is necessary otherwise it will always fail with ENOENT in those cases - parsed.command = path.normalize(parsed.command); - - // Escape command & arguments - parsed.command = escape.command(parsed.command); - parsed.args = parsed.args.map((arg) => escape.argument(arg, needsDoubleEscapeMetaChars)); - - const shellCommand = [parsed.command].concat(parsed.args).join(' '); - - parsed.args = ['/d', '/s', '/c', `"${shellCommand}"`]; - parsed.command = process.env.comspec || 'cmd.exe'; - parsed.options.windowsVerbatimArguments = true; // Tell node's spawn that the arguments are already escaped - } - - return parsed; -} - -function parse(command, args, options) { - // Normalize arguments, similar to nodejs - if (args && !Array.isArray(args)) { - options = args; - args = null; - } - - args = args ? args.slice(0) : []; // Clone array to avoid changing the original - options = Object.assign({}, options); // Clone object to avoid changing the original - - // Build our parsed object - const parsed = { - command, - args, - options, - file: undefined, - original: { - command, - args, - }, - }; - - // Delegate further parsing to shell or non-shell - return options.shell ? parsed : parseNonShell(parsed); -} - -module.exports = parse; - - -/***/ }), - -/***/ 30528: -/***/ ((module) => { - - - -// See http://www.robvanderwoude.com/escapechars.php -const metaCharsRegExp = /([()\][%!^"`<>&|;, *?])/g; - -function escapeCommand(arg) { - // Escape meta chars - arg = arg.replace(metaCharsRegExp, '^$1'); - - return arg; -} - -function escapeArgument(arg, doubleEscapeMetaChars) { - // Convert to string - arg = `${arg}`; - - // Algorithm below is based on https://qntm.org/cmd - // It's slightly altered to disable JS backtracking to avoid hanging on specially crafted input - // Please see https://github.com/moxystudio/node-cross-spawn/pull/160 for more information - - // Sequence of backslashes followed by a double quote: - // double up all the backslashes and escape the double quote - arg = arg.replace(/(?=(\\+?)?)\1"/g, '$1$1\\"'); - - // Sequence of backslashes followed by the end of the string - // (which will become a double quote later): - // double up all the backslashes - arg = arg.replace(/(?=(\\+?)?)\1$/, '$1$1'); - - // All other backslashes occur literally - - // Quote the whole thing: - arg = `"${arg}"`; - - // Escape meta chars - arg = arg.replace(metaCharsRegExp, '^$1'); - - // Double escape meta chars if necessary - if (doubleEscapeMetaChars) { - arg = arg.replace(metaCharsRegExp, '^$1'); - } - - return arg; -} - -module.exports.command = escapeCommand; -module.exports.argument = escapeArgument; - - -/***/ }), - -/***/ 38115: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -const fs = __nccwpck_require__(79896); -const shebangCommand = __nccwpck_require__(72668); - -function readShebang(command) { - // Read the first 150 bytes from the file - const size = 150; - const buffer = Buffer.alloc(size); - - let fd; - - try { - fd = fs.openSync(command, 'r'); - fs.readSync(fd, buffer, 0, size, 0); - fs.closeSync(fd); - } catch (e) { /* Empty */ } - - // Attempt to extract shebang (null is returned if not a shebang) - return shebangCommand(buffer.toString()); -} - -module.exports = readShebang; - - -/***/ }), - -/***/ 71998: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -const path = __nccwpck_require__(16928); -const which = __nccwpck_require__(67514); -const getPathKey = __nccwpck_require__(50661); - -function resolveCommandAttempt(parsed, withoutPathExt) { - const env = parsed.options.env || process.env; - const cwd = process.cwd(); - const hasCustomCwd = parsed.options.cwd != null; - // Worker threads do not have process.chdir() - const shouldSwitchCwd = hasCustomCwd && process.chdir !== undefined && !process.chdir.disabled; - - // If a custom `cwd` was specified, we need to change the process cwd - // because `which` will do stat calls but does not support a custom cwd - if (shouldSwitchCwd) { - try { - process.chdir(parsed.options.cwd); - } catch (err) { - /* Empty */ - } - } - - let resolved; - - try { - resolved = which.sync(parsed.command, { - path: env[getPathKey({ env })], - pathExt: withoutPathExt ? path.delimiter : undefined, - }); - } catch (e) { - /* Empty */ - } finally { - if (shouldSwitchCwd) { - process.chdir(cwd); - } - } - - // If we successfully resolved, ensure that an absolute path is returned - // Note that when a custom `cwd` was used, we need to resolve to an absolute path based on it - if (resolved) { - resolved = path.resolve(hasCustomCwd ? parsed.options.cwd : '', resolved); - } - - return resolved; -} - -function resolveCommand(parsed) { - return resolveCommandAttempt(parsed) || resolveCommandAttempt(parsed, true); -} - -module.exports = resolveCommand; - - -/***/ }), - -/***/ 67514: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -const isWindows = process.platform === 'win32' || - process.env.OSTYPE === 'cygwin' || - process.env.OSTYPE === 'msys' - -const path = __nccwpck_require__(16928) -const COLON = isWindows ? ';' : ':' -const isexe = __nccwpck_require__(49648) - -const getNotFoundError = (cmd) => - Object.assign(new Error(`not found: ${cmd}`), { code: 'ENOENT' }) - -const getPathInfo = (cmd, opt) => { - const colon = opt.colon || COLON - - // If it has a slash, then we don't bother searching the pathenv. - // just check the file itself, and that's it. - const pathEnv = cmd.match(/\//) || isWindows && cmd.match(/\\/) ? [''] - : ( - [ - // windows always checks the cwd first - ...(isWindows ? [process.cwd()] : []), - ...(opt.path || process.env.PATH || - /* istanbul ignore next: very unusual */ '').split(colon), - ] - ) - const pathExtExe = isWindows - ? opt.pathExt || process.env.PATHEXT || '.EXE;.CMD;.BAT;.COM' - : '' - const pathExt = isWindows ? pathExtExe.split(colon) : [''] - - if (isWindows) { - if (cmd.indexOf('.') !== -1 && pathExt[0] !== '') - pathExt.unshift('') - } - - return { - pathEnv, - pathExt, - pathExtExe, - } -} - -const which = (cmd, opt, cb) => { - if (typeof opt === 'function') { - cb = opt - opt = {} - } - if (!opt) - opt = {} - - const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt) - const found = [] - - const step = i => new Promise((resolve, reject) => { - if (i === pathEnv.length) - return opt.all && found.length ? resolve(found) - : reject(getNotFoundError(cmd)) - - const ppRaw = pathEnv[i] - const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw - - const pCmd = path.join(pathPart, cmd) - const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd - : pCmd - - resolve(subStep(p, i, 0)) - }) - - const subStep = (p, i, ii) => new Promise((resolve, reject) => { - if (ii === pathExt.length) - return resolve(step(i + 1)) - const ext = pathExt[ii] - isexe(p + ext, { pathExt: pathExtExe }, (er, is) => { - if (!er && is) { - if (opt.all) - found.push(p + ext) - else - return resolve(p + ext) - } - return resolve(subStep(p, i, ii + 1)) - }) - }) - - return cb ? step(0).then(res => cb(null, res), cb) : step(0) -} - -const whichSync = (cmd, opt) => { - opt = opt || {} - - const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt) - const found = [] - - for (let i = 0; i < pathEnv.length; i ++) { - const ppRaw = pathEnv[i] - const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw - - const pCmd = path.join(pathPart, cmd) - const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd - : pCmd - - for (let j = 0; j < pathExt.length; j ++) { - const cur = p + pathExt[j] - try { - const is = isexe.sync(cur, { pathExt: pathExtExe }) - if (is) { - if (opt.all) - found.push(cur) - else - return cur - } - } catch (ex) {} - } - } - - if (opt.all && found.length) - return found - - if (opt.nothrow) - return null - - throw getNotFoundError(cmd) -} - -module.exports = which -which.sync = whichSync - - -/***/ }), - -/***/ 70804: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - -const path = __nccwpck_require__(16928); -const pathType = __nccwpck_require__(34754); - -const getExtensions = extensions => extensions.length > 1 ? `{${extensions.join(',')}}` : extensions[0]; - -const getPath = (filepath, cwd) => { - const pth = filepath[0] === '!' ? filepath.slice(1) : filepath; - return path.isAbsolute(pth) ? pth : path.join(cwd, pth); -}; - -const addExtensions = (file, extensions) => { - if (path.extname(file)) { - return `**/${file}`; - } - - return `**/${file}.${getExtensions(extensions)}`; -}; - -const getGlob = (directory, options) => { - if (options.files && !Array.isArray(options.files)) { - throw new TypeError(`Expected \`files\` to be of type \`Array\` but received type \`${typeof options.files}\``); - } - - if (options.extensions && !Array.isArray(options.extensions)) { - throw new TypeError(`Expected \`extensions\` to be of type \`Array\` but received type \`${typeof options.extensions}\``); - } - - if (options.files && options.extensions) { - return options.files.map(x => path.posix.join(directory, addExtensions(x, options.extensions))); - } - - if (options.files) { - return options.files.map(x => path.posix.join(directory, `**/${x}`)); - } - - if (options.extensions) { - return [path.posix.join(directory, `**/*.${getExtensions(options.extensions)}`)]; - } - - return [path.posix.join(directory, '**')]; -}; - -module.exports = async (input, options) => { - options = { - cwd: process.cwd(), - ...options - }; - - if (typeof options.cwd !== 'string') { - throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof options.cwd}\``); - } - - const globs = await Promise.all([].concat(input).map(async x => { - const isDirectory = await pathType.isDirectory(getPath(x, options.cwd)); - return isDirectory ? getGlob(x, options) : x; - })); - - return [].concat.apply([], globs); // eslint-disable-line prefer-spread -}; - -module.exports.sync = (input, options) => { - options = { - cwd: process.cwd(), - ...options - }; - - if (typeof options.cwd !== 'string') { - throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof options.cwd}\``); - } - - const globs = [].concat(input).map(x => pathType.isDirectorySync(getPath(x, options.cwd)) ? getGlob(x, options) : x); - - return [].concat.apply([], globs); // eslint-disable-line prefer-spread -}; - - -/***/ }), - -/***/ 66096: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - -const path = __nccwpck_require__(16928); -const childProcess = __nccwpck_require__(35317); -const crossSpawn = __nccwpck_require__(24422); -const stripFinalNewline = __nccwpck_require__(68282); -const npmRunPath = __nccwpck_require__(87079); -const onetime = __nccwpck_require__(82405); -const makeError = __nccwpck_require__(46406); -const normalizeStdio = __nccwpck_require__(58729); -const {spawnedKill, spawnedCancel, setupTimeout, validateTimeout, setExitHandler} = __nccwpck_require__(98638); -const {handleInput, getSpawnedResult, makeAllStream, validateInputSync} = __nccwpck_require__(41762); -const {mergePromise, getSpawnedPromise} = __nccwpck_require__(98529); -const {joinCommand, parseCommand, getEscapedCommand} = __nccwpck_require__(32849); - -const DEFAULT_MAX_BUFFER = 1000 * 1000 * 100; - -const getEnv = ({env: envOption, extendEnv, preferLocal, localDir, execPath}) => { - const env = extendEnv ? {...process.env, ...envOption} : envOption; - - if (preferLocal) { - return npmRunPath.env({env, cwd: localDir, execPath}); - } - - return env; -}; - -const handleArguments = (file, args, options = {}) => { - const parsed = crossSpawn._parse(file, args, options); - file = parsed.command; - args = parsed.args; - options = parsed.options; - - options = { - maxBuffer: DEFAULT_MAX_BUFFER, - buffer: true, - stripFinalNewline: true, - extendEnv: true, - preferLocal: false, - localDir: options.cwd || process.cwd(), - execPath: process.execPath, - encoding: 'utf8', - reject: true, - cleanup: true, - all: false, - windowsHide: true, - ...options - }; - - options.env = getEnv(options); - - options.stdio = normalizeStdio(options); - - if (process.platform === 'win32' && path.basename(file, '.exe') === 'cmd') { - // #116 - args.unshift('/q'); - } - - return {file, args, options, parsed}; -}; - -const handleOutput = (options, value, error) => { - if (typeof value !== 'string' && !Buffer.isBuffer(value)) { - // When `execa.sync()` errors, we normalize it to '' to mimic `execa()` - return error === undefined ? undefined : ''; - } - - if (options.stripFinalNewline) { - return stripFinalNewline(value); - } - - return value; -}; - -const execa = (file, args, options) => { - const parsed = handleArguments(file, args, options); - const command = joinCommand(file, args); - const escapedCommand = getEscapedCommand(file, args); - - validateTimeout(parsed.options); - - let spawned; - try { - spawned = childProcess.spawn(parsed.file, parsed.args, parsed.options); - } catch (error) { - // Ensure the returned error is always both a promise and a child process - const dummySpawned = new childProcess.ChildProcess(); - const errorPromise = Promise.reject(makeError({ - error, - stdout: '', - stderr: '', - all: '', - command, - escapedCommand, - parsed, - timedOut: false, - isCanceled: false, - killed: false - })); - return mergePromise(dummySpawned, errorPromise); - } - - const spawnedPromise = getSpawnedPromise(spawned); - const timedPromise = setupTimeout(spawned, parsed.options, spawnedPromise); - const processDone = setExitHandler(spawned, parsed.options, timedPromise); - - const context = {isCanceled: false}; - - spawned.kill = spawnedKill.bind(null, spawned.kill.bind(spawned)); - spawned.cancel = spawnedCancel.bind(null, spawned, context); - - const handlePromise = async () => { - const [{error, exitCode, signal, timedOut}, stdoutResult, stderrResult, allResult] = await getSpawnedResult(spawned, parsed.options, processDone); - const stdout = handleOutput(parsed.options, stdoutResult); - const stderr = handleOutput(parsed.options, stderrResult); - const all = handleOutput(parsed.options, allResult); - - if (error || exitCode !== 0 || signal !== null) { - const returnedError = makeError({ - error, - exitCode, - signal, - stdout, - stderr, - all, - command, - escapedCommand, - parsed, - timedOut, - isCanceled: context.isCanceled, - killed: spawned.killed - }); - - if (!parsed.options.reject) { - return returnedError; - } - - throw returnedError; - } - - return { - command, - escapedCommand, - exitCode: 0, - stdout, - stderr, - all, - failed: false, - timedOut: false, - isCanceled: false, - killed: false - }; - }; - - const handlePromiseOnce = onetime(handlePromise); - - handleInput(spawned, parsed.options.input); - - spawned.all = makeAllStream(spawned, parsed.options); - - return mergePromise(spawned, handlePromiseOnce); -}; - -module.exports = execa; - -module.exports.sync = (file, args, options) => { - const parsed = handleArguments(file, args, options); - const command = joinCommand(file, args); - const escapedCommand = getEscapedCommand(file, args); - - validateInputSync(parsed.options); - - let result; - try { - result = childProcess.spawnSync(parsed.file, parsed.args, parsed.options); - } catch (error) { - throw makeError({ - error, - stdout: '', - stderr: '', - all: '', - command, - escapedCommand, - parsed, - timedOut: false, - isCanceled: false, - killed: false - }); - } - - const stdout = handleOutput(parsed.options, result.stdout, result.error); - const stderr = handleOutput(parsed.options, result.stderr, result.error); - - if (result.error || result.status !== 0 || result.signal !== null) { - const error = makeError({ - stdout, - stderr, - error: result.error, - signal: result.signal, - exitCode: result.status, - command, - escapedCommand, - parsed, - timedOut: result.error && result.error.code === 'ETIMEDOUT', - isCanceled: false, - killed: result.signal !== null - }); - - if (!parsed.options.reject) { - return error; - } - throw error; - } - return { - command, - escapedCommand, - exitCode: 0, - stdout, - stderr, - failed: false, - timedOut: false, - isCanceled: false, - killed: false - }; -}; +/***/ }), -module.exports.command = (command, options) => { - const [file, ...args] = parseCommand(command); - return execa(file, args, options); -}; +/***/ 3682: +/***/ ((__unused_webpack_module, exports) => { -module.exports.commandSync = (command, options) => { - const [file, ...args] = parseCommand(command); - return execa.sync(file, args, options); -}; -module.exports.node = (scriptPath, args, options = {}) => { - if (args && !Array.isArray(args) && typeof args === 'object') { - options = args; - args = []; - } +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.isEmpty = exports.isString = void 0; +function isString(input) { + return typeof input === 'string'; +} +exports.isString = isString; +function isEmpty(input) { + return input === ''; +} +exports.isEmpty = isEmpty; - const stdio = normalizeStdio.node(options); - const defaultExecArgv = process.execArgv.filter(arg => !arg.startsWith('--inspect')); - const { - nodePath = process.execPath, - nodeOptions = defaultExecArgv - } = options; +/***/ }), - return execa( - nodePath, - [ - ...nodeOptions, - scriptPath, - ...(Array.isArray(args) ? args : []) - ], - { - ...options, - stdin: undefined, - stdout: undefined, - stderr: undefined, - stdio, - shell: false - } - ); -}; +/***/ 9730: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +/*! + * fill-range + * + * Copyright (c) 2014-present, Jon Schlinkert. + * Licensed under the MIT License. + */ -/***/ }), -/***/ 32849: -/***/ ((module) => { +const util = __nccwpck_require__(9023); +const toRegexRange = __nccwpck_require__(743); -const normalizeArgs = (file, args = []) => { - if (!Array.isArray(args)) { - return [file]; - } +const isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val); - return [file, ...args]; +const transform = toNumber => { + return value => toNumber === true ? Number(value) : String(value); }; -const NO_ESCAPE_REGEXP = /^[\w.-]+$/; -const DOUBLE_QUOTES_REGEXP = /"/g; +const isValidValue = value => { + return typeof value === 'number' || (typeof value === 'string' && value !== ''); +}; -const escapeArg = arg => { - if (typeof arg !== 'string' || NO_ESCAPE_REGEXP.test(arg)) { - return arg; - } +const isNumber = num => Number.isInteger(+num); - return `"${arg.replace(DOUBLE_QUOTES_REGEXP, '\\"')}"`; +const zeros = input => { + let value = `${input}`; + let index = -1; + if (value[0] === '-') value = value.slice(1); + if (value === '0') return false; + while (value[++index] === '0'); + return index > 0; }; -const joinCommand = (file, args) => { - return normalizeArgs(file, args).join(' '); +const stringify = (start, end, options) => { + if (typeof start === 'string' || typeof end === 'string') { + return true; + } + return options.stringify === true; }; -const getEscapedCommand = (file, args) => { - return normalizeArgs(file, args).map(arg => escapeArg(arg)).join(' '); +const pad = (input, maxLength, toNumber) => { + if (maxLength > 0) { + let dash = input[0] === '-' ? '-' : ''; + if (dash) input = input.slice(1); + input = (dash + input.padStart(dash ? maxLength - 1 : maxLength, '0')); + } + if (toNumber === false) { + return String(input); + } + return input; }; -const SPACES_REGEXP = / +/g; +const toMaxLen = (input, maxLength) => { + let negative = input[0] === '-' ? '-' : ''; + if (negative) { + input = input.slice(1); + maxLength--; + } + while (input.length < maxLength) input = '0' + input; + return negative ? ('-' + input) : input; +}; -// Handle `execa.command()` -const parseCommand = command => { - const tokens = []; - for (const token of command.trim().split(SPACES_REGEXP)) { - // Allow spaces to be escaped by a backslash if not meant as a delimiter - const previousToken = tokens[tokens.length - 1]; - if (previousToken && previousToken.endsWith('\\')) { - // Merge previous token with current one - tokens[tokens.length - 1] = `${previousToken.slice(0, -1)} ${token}`; - } else { - tokens.push(token); - } - } +const toSequence = (parts, options, maxLen) => { + parts.negatives.sort((a, b) => a < b ? -1 : a > b ? 1 : 0); + parts.positives.sort((a, b) => a < b ? -1 : a > b ? 1 : 0); - return tokens; -}; + let prefix = options.capture ? '' : '?:'; + let positives = ''; + let negatives = ''; + let result; -module.exports = { - joinCommand, - getEscapedCommand, - parseCommand -}; + if (parts.positives.length) { + positives = parts.positives.map(v => toMaxLen(String(v), maxLen)).join('|'); + } + if (parts.negatives.length) { + negatives = `-(${prefix}${parts.negatives.map(v => toMaxLen(String(v), maxLen)).join('|')})`; + } -/***/ }), + if (positives && negatives) { + result = `${positives}|${negatives}`; + } else { + result = positives || negatives; + } -/***/ 46406: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if (options.wrap) { + return `(${prefix}${result})`; + } + return result; +}; -const {signalsByName} = __nccwpck_require__(76594); +const toRange = (a, b, isNumbers, options) => { + if (isNumbers) { + return toRegexRange(a, b, { wrap: false, ...options }); + } -const getErrorPrefix = ({timedOut, timeout, errorCode, signal, signalDescription, exitCode, isCanceled}) => { - if (timedOut) { - return `timed out after ${timeout} milliseconds`; - } + let start = String.fromCharCode(a); + if (a === b) return start; - if (isCanceled) { - return 'was canceled'; - } + let stop = String.fromCharCode(b); + return `[${start}-${stop}]`; +}; - if (errorCode !== undefined) { - return `failed with ${errorCode}`; - } +const toRegex = (start, end, options) => { + if (Array.isArray(start)) { + let wrap = options.wrap === true; + let prefix = options.capture ? '' : '?:'; + return wrap ? `(${prefix}${start.join('|')})` : start.join('|'); + } + return toRegexRange(start, end, options); +}; - if (signal !== undefined) { - return `was killed with ${signal} (${signalDescription})`; - } +const rangeError = (...args) => { + return new RangeError('Invalid range arguments: ' + util.inspect(...args)); +}; - if (exitCode !== undefined) { - return `failed with exit code ${exitCode}`; - } +const invalidRange = (start, end, options) => { + if (options.strictRanges === true) throw rangeError([start, end]); + return []; +}; - return 'failed'; +const invalidStep = (step, options) => { + if (options.strictRanges === true) { + throw new TypeError(`Expected step "${step}" to be a number`); + } + return []; }; -const makeError = ({ - stdout, - stderr, - all, - error, - signal, - exitCode, - command, - escapedCommand, - timedOut, - isCanceled, - killed, - parsed: {options: {timeout}} -}) => { - // `signal` and `exitCode` emitted on `spawned.on('exit')` event can be `null`. - // We normalize them to `undefined` - exitCode = exitCode === null ? undefined : exitCode; - signal = signal === null ? undefined : signal; - const signalDescription = signal === undefined ? undefined : signalsByName[signal].description; +const fillNumbers = (start, end, step = 1, options = {}) => { + let a = Number(start); + let b = Number(end); - const errorCode = error && error.code; + if (!Number.isInteger(a) || !Number.isInteger(b)) { + if (options.strictRanges === true) throw rangeError([start, end]); + return []; + } - const prefix = getErrorPrefix({timedOut, timeout, errorCode, signal, signalDescription, exitCode, isCanceled}); - const execaMessage = `Command ${prefix}: ${command}`; - const isError = Object.prototype.toString.call(error) === '[object Error]'; - const shortMessage = isError ? `${execaMessage}\n${error.message}` : execaMessage; - const message = [shortMessage, stderr, stdout].filter(Boolean).join('\n'); + // fix negative zero + if (a === 0) a = 0; + if (b === 0) b = 0; - if (isError) { - error.originalMessage = error.message; - error.message = message; - } else { - error = new Error(message); - } + let descending = a > b; + let startString = String(start); + let endString = String(end); + let stepString = String(step); + step = Math.max(Math.abs(step), 1); - error.shortMessage = shortMessage; - error.command = command; - error.escapedCommand = escapedCommand; - error.exitCode = exitCode; - error.signal = signal; - error.signalDescription = signalDescription; - error.stdout = stdout; - error.stderr = stderr; + let padded = zeros(startString) || zeros(endString) || zeros(stepString); + let maxLen = padded ? Math.max(startString.length, endString.length, stepString.length) : 0; + let toNumber = padded === false && stringify(start, end, options) === false; + let format = options.transform || transform(toNumber); - if (all !== undefined) { - error.all = all; - } + if (options.toRegex && step === 1) { + return toRange(toMaxLen(start, maxLen), toMaxLen(end, maxLen), true, options); + } - if ('bufferedData' in error) { - delete error.bufferedData; - } + let parts = { negatives: [], positives: [] }; + let push = num => parts[num < 0 ? 'negatives' : 'positives'].push(Math.abs(num)); + let range = []; + let index = 0; - error.failed = true; - error.timedOut = Boolean(timedOut); - error.isCanceled = isCanceled; - error.killed = killed && !timedOut; + while (descending ? a >= b : a <= b) { + if (options.toRegex === true && step > 1) { + push(a); + } else { + range.push(pad(format(a, index), maxLen, toNumber)); + } + a = descending ? a - step : a + step; + index++; + } - return error; + if (options.toRegex === true) { + return step > 1 + ? toSequence(parts, options, maxLen) + : toRegex(range, null, { wrap: false, ...options }); + } + + return range; }; -module.exports = makeError; +const fillLetters = (start, end, step = 1, options = {}) => { + if ((!isNumber(start) && start.length > 1) || (!isNumber(end) && end.length > 1)) { + return invalidRange(start, end, options); + } + let format = options.transform || (val => String.fromCharCode(val)); + let a = `${start}`.charCodeAt(0); + let b = `${end}`.charCodeAt(0); -/***/ }), + let descending = a > b; + let min = Math.min(a, b); + let max = Math.max(a, b); -/***/ 98638: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if (options.toRegex && step === 1) { + return toRange(min, max, false, options); + } + let range = []; + let index = 0; -const os = __nccwpck_require__(70857); -const onExit = __nccwpck_require__(71947); + while (descending ? a >= b : a <= b) { + range.push(format(a, index)); + a = descending ? a - step : a + step; + index++; + } -const DEFAULT_FORCE_KILL_TIMEOUT = 1000 * 5; + if (options.toRegex === true) { + return toRegex(range, null, { wrap: false, options }); + } -// Monkey-patches `childProcess.kill()` to add `forceKillAfterTimeout` behavior -const spawnedKill = (kill, signal = 'SIGTERM', options = {}) => { - const killResult = kill(signal); - setKillTimeout(kill, signal, options, killResult); - return killResult; + return range; }; -const setKillTimeout = (kill, signal, options, killResult) => { - if (!shouldForceKill(signal, options, killResult)) { - return; - } +const fill = (start, end, step, options = {}) => { + if (end == null && isValidValue(start)) { + return [start]; + } - const timeout = getForceKillAfterTimeout(options); - const t = setTimeout(() => { - kill('SIGKILL'); - }, timeout); + if (!isValidValue(start) || !isValidValue(end)) { + return invalidRange(start, end, options); + } - // Guarded because there's no `.unref()` when `execa` is used in the renderer - // process in Electron. This cannot be tested since we don't run tests in - // Electron. - // istanbul ignore else - if (t.unref) { - t.unref(); - } -}; + if (typeof step === 'function') { + return fill(start, end, 1, { transform: step }); + } -const shouldForceKill = (signal, {forceKillAfterTimeout}, killResult) => { - return isSigterm(signal) && forceKillAfterTimeout !== false && killResult; -}; + if (isObject(step)) { + return fill(start, end, 0, step); + } -const isSigterm = signal => { - return signal === os.constants.signals.SIGTERM || - (typeof signal === 'string' && signal.toUpperCase() === 'SIGTERM'); -}; + let opts = { ...options }; + if (opts.capture === true) opts.wrap = true; + step = step || opts.step || 1; -const getForceKillAfterTimeout = ({forceKillAfterTimeout = true}) => { - if (forceKillAfterTimeout === true) { - return DEFAULT_FORCE_KILL_TIMEOUT; - } + if (!isNumber(step)) { + if (step != null && !isObject(step)) return invalidStep(step, opts); + return fill(start, end, 1, step); + } - if (!Number.isFinite(forceKillAfterTimeout) || forceKillAfterTimeout < 0) { - throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${forceKillAfterTimeout}\` (${typeof forceKillAfterTimeout})`); - } + if (isNumber(start) && isNumber(end)) { + return fillNumbers(start, end, step, opts); + } - return forceKillAfterTimeout; + return fillLetters(start, end, Math.max(Math.abs(step), 1), opts); }; -// `childProcess.cancel()` -const spawnedCancel = (spawned, context) => { - const killResult = spawned.kill(); - - if (killResult) { - context.isCanceled = true; - } -}; +module.exports = fill; -const timeoutKill = (spawned, signal, reject) => { - spawned.kill(signal); - reject(Object.assign(new Error('Timed out'), {timedOut: true, signal})); -}; -// `timeout` option handling -const setupTimeout = (spawned, {timeout, killSignal = 'SIGTERM'}, spawnedPromise) => { - if (timeout === 0 || timeout === undefined) { - return spawnedPromise; - } +/***/ }), - let timeoutId; - const timeoutPromise = new Promise((resolve, reject) => { - timeoutId = setTimeout(() => { - timeoutKill(spawned, killSignal, reject); - }, timeout); - }); +/***/ 9116: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - const safeSpawnedPromise = spawnedPromise.finally(() => { - clearTimeout(timeoutId); - }); - return Promise.race([timeoutPromise, safeSpawnedPromise]); -}; +const path = __nccwpck_require__(6928); +const locatePath = __nccwpck_require__(7738); +const pathExists = __nccwpck_require__(4219); -const validateTimeout = ({timeout}) => { - if (timeout !== undefined && (!Number.isFinite(timeout) || timeout < 0)) { - throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${timeout}\` (${typeof timeout})`); - } -}; +const stop = Symbol('findUp.stop'); -// `cleanup` option handling -const setExitHandler = async (spawned, {cleanup, detached}, timedPromise) => { - if (!cleanup || detached) { - return timedPromise; - } +module.exports = async (name, options = {}) => { + let directory = path.resolve(options.cwd || ''); + const {root} = path.parse(directory); + const paths = [].concat(name); - const removeExitHandler = onExit(() => { - spawned.kill(); - }); + const runMatcher = async locateOptions => { + if (typeof name !== 'function') { + return locatePath(paths, locateOptions); + } - return timedPromise.finally(() => { - removeExitHandler(); - }); -}; + const foundPath = await name(locateOptions.cwd); + if (typeof foundPath === 'string') { + return locatePath([foundPath], locateOptions); + } -module.exports = { - spawnedKill, - spawnedCancel, - setupTimeout, - validateTimeout, - setExitHandler -}; + return foundPath; + }; + // eslint-disable-next-line no-constant-condition + while (true) { + // eslint-disable-next-line no-await-in-loop + const foundPath = await runMatcher({...options, cwd: directory}); -/***/ }), + if (foundPath === stop) { + return; + } -/***/ 98529: -/***/ ((module) => { + if (foundPath) { + return path.resolve(directory, foundPath); + } + if (directory === root) { + return; + } + directory = path.dirname(directory); + } +}; -const nativePromisePrototype = (async () => {})().constructor.prototype; -const descriptors = ['then', 'catch', 'finally'].map(property => [ - property, - Reflect.getOwnPropertyDescriptor(nativePromisePrototype, property) -]); +module.exports.sync = (name, options = {}) => { + let directory = path.resolve(options.cwd || ''); + const {root} = path.parse(directory); + const paths = [].concat(name); -// The return value is a mixin of `childProcess` and `Promise` -const mergePromise = (spawned, promise) => { - for (const [property, descriptor] of descriptors) { - // Starting the main `promise` is deferred to avoid consuming streams - const value = typeof promise === 'function' ? - (...args) => Reflect.apply(descriptor.value, promise(), args) : - descriptor.value.bind(promise); + const runMatcher = locateOptions => { + if (typeof name !== 'function') { + return locatePath.sync(paths, locateOptions); + } - Reflect.defineProperty(spawned, property, {...descriptor, value}); - } + const foundPath = name(locateOptions.cwd); + if (typeof foundPath === 'string') { + return locatePath.sync([foundPath], locateOptions); + } - return spawned; -}; + return foundPath; + }; -// Use promises instead of `child_process` events -const getSpawnedPromise = spawned => { - return new Promise((resolve, reject) => { - spawned.on('exit', (exitCode, signal) => { - resolve({exitCode, signal}); - }); + // eslint-disable-next-line no-constant-condition + while (true) { + const foundPath = runMatcher({...options, cwd: directory}); - spawned.on('error', error => { - reject(error); - }); + if (foundPath === stop) { + return; + } - if (spawned.stdin) { - spawned.stdin.on('error', error => { - reject(error); - }); + if (foundPath) { + return path.resolve(directory, foundPath); } - }); -}; -module.exports = { - mergePromise, - getSpawnedPromise + if (directory === root) { + return; + } + + directory = path.dirname(directory); + } }; +module.exports.exists = pathExists; + +module.exports.sync.exists = pathExists.sync; + +module.exports.stop = stop; /***/ }), -/***/ 58729: -/***/ ((module) => { +/***/ 8998: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const aliases = ['stdin', 'stdout', 'stderr']; -const hasAlias = options => aliases.some(alias => options[alias] !== undefined); +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) +const mkdirpSync = (__nccwpck_require__(4846).mkdirsSync) +const utimesSync = (__nccwpck_require__(2707).utimesMillisSync) -const normalizeStdio = options => { - if (!options) { - return; - } +const notExist = Symbol('notExist') - const {stdio} = options; +function copySync (src, dest, opts) { + if (typeof opts === 'function') { + opts = {filter: opts} + } - if (stdio === undefined) { - return aliases.map(alias => options[alias]); - } + opts = opts || {} + opts.clobber = 'clobber' in opts ? !!opts.clobber : true // default to true for now + opts.overwrite = 'overwrite' in opts ? !!opts.overwrite : opts.clobber // overwrite falls back to clobber - if (hasAlias(options)) { - throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${aliases.map(alias => `\`${alias}\``).join(', ')}`); - } + // Warn about using preserveTimestamps on 32-bit node + if (opts.preserveTimestamps && process.arch === 'ia32') { + console.warn(`fs-extra: Using the preserveTimestamps option in 32-bit node is not recommended;\n + see https://github.com/jprichardson/node-fs-extra/issues/269`) + } - if (typeof stdio === 'string') { - return stdio; - } + const destStat = checkPaths(src, dest) - if (!Array.isArray(stdio)) { - throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof stdio}\``); - } + if (opts.filter && !opts.filter(src, dest)) return - const length = Math.max(stdio.length, aliases.length); - return Array.from({length}, (value, index) => stdio[index]); -}; + const destParent = path.dirname(dest) + if (!fs.existsSync(destParent)) mkdirpSync(destParent) + return startCopy(destStat, src, dest, opts) +} -module.exports = normalizeStdio; +function startCopy (destStat, src, dest, opts) { + if (opts.filter && !opts.filter(src, dest)) return + return getStats(destStat, src, dest, opts) +} -// `ipc` is pushed unless it is already present -module.exports.node = options => { - const stdio = normalizeStdio(options); +function getStats (destStat, src, dest, opts) { + const statSync = opts.dereference ? fs.statSync : fs.lstatSync + const srcStat = statSync(src) - if (stdio === 'ipc') { - return 'ipc'; - } + if (srcStat.isDirectory()) return onDir(srcStat, destStat, src, dest, opts) + else if (srcStat.isFile() || + srcStat.isCharacterDevice() || + srcStat.isBlockDevice()) return onFile(srcStat, destStat, src, dest, opts) + else if (srcStat.isSymbolicLink()) return onLink(destStat, src, dest, opts) +} - if (stdio === undefined || typeof stdio === 'string') { - return [stdio, stdio, stdio, 'ipc']; - } +function onFile (srcStat, destStat, src, dest, opts) { + if (destStat === notExist) return copyFile(srcStat, src, dest, opts) + return mayCopyFile(srcStat, src, dest, opts) +} - if (stdio.includes('ipc')) { - return stdio; - } +function mayCopyFile (srcStat, src, dest, opts) { + if (opts.overwrite) { + fs.unlinkSync(dest) + return copyFile(srcStat, src, dest, opts) + } else if (opts.errorOnExist) { + throw new Error(`'${dest}' already exists`) + } +} - return [...stdio, 'ipc']; -}; +function copyFile (srcStat, src, dest, opts) { + if (typeof fs.copyFileSync === 'function') { + fs.copyFileSync(src, dest) + fs.chmodSync(dest, srcStat.mode) + if (opts.preserveTimestamps) { + return utimesSync(dest, srcStat.atime, srcStat.mtime) + } + return + } + return copyFileFallback(srcStat, src, dest, opts) +} +function copyFileFallback (srcStat, src, dest, opts) { + const BUF_LENGTH = 64 * 1024 + const _buff = __nccwpck_require__(4390)(BUF_LENGTH) -/***/ }), + const fdr = fs.openSync(src, 'r') + const fdw = fs.openSync(dest, 'w', srcStat.mode) + let pos = 0 -/***/ 41762: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + while (pos < srcStat.size) { + const bytesRead = fs.readSync(fdr, _buff, 0, BUF_LENGTH, pos) + fs.writeSync(fdw, _buff, 0, bytesRead) + pos += bytesRead + } + if (opts.preserveTimestamps) fs.futimesSync(fdw, srcStat.atime, srcStat.mtime) -const isStream = __nccwpck_require__(81011); -const getStream = __nccwpck_require__(91559); -const mergeStream = __nccwpck_require__(22655); + fs.closeSync(fdr) + fs.closeSync(fdw) +} -// `input` option -const handleInput = (spawned, input) => { - // Checking for stdin is workaround for https://github.com/nodejs/node/issues/26852 - // @todo remove `|| spawned.stdin === undefined` once we drop support for Node.js <=12.2.0 - if (input === undefined || spawned.stdin === undefined) { - return; - } +function onDir (srcStat, destStat, src, dest, opts) { + if (destStat === notExist) return mkDirAndCopy(srcStat, src, dest, opts) + if (destStat && !destStat.isDirectory()) { + throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`) + } + return copyDir(src, dest, opts) +} - if (isStream(input)) { - input.pipe(spawned.stdin); - } else { - spawned.stdin.end(input); - } -}; +function mkDirAndCopy (srcStat, src, dest, opts) { + fs.mkdirSync(dest) + copyDir(src, dest, opts) + return fs.chmodSync(dest, srcStat.mode) +} -// `all` interleaves `stdout` and `stderr` -const makeAllStream = (spawned, {all}) => { - if (!all || (!spawned.stdout && !spawned.stderr)) { - return; - } +function copyDir (src, dest, opts) { + fs.readdirSync(src).forEach(item => copyDirItem(item, src, dest, opts)) +} - const mixed = mergeStream(); +function copyDirItem (item, src, dest, opts) { + const srcItem = path.join(src, item) + const destItem = path.join(dest, item) + const destStat = checkPaths(srcItem, destItem) + return startCopy(destStat, srcItem, destItem, opts) +} - if (spawned.stdout) { - mixed.add(spawned.stdout); - } +function onLink (destStat, src, dest, opts) { + let resolvedSrc = fs.readlinkSync(src) - if (spawned.stderr) { - mixed.add(spawned.stderr); - } + if (opts.dereference) { + resolvedSrc = path.resolve(process.cwd(), resolvedSrc) + } - return mixed; -}; + if (destStat === notExist) { + return fs.symlinkSync(resolvedSrc, dest) + } else { + let resolvedDest + try { + resolvedDest = fs.readlinkSync(dest) + } catch (err) { + // dest exists and is a regular file or directory, + // Windows may throw UNKNOWN error. If dest already exists, + // fs throws error anyway, so no need to guard against it here. + if (err.code === 'EINVAL' || err.code === 'UNKNOWN') return fs.symlinkSync(resolvedSrc, dest) + throw err + } + if (opts.dereference) { + resolvedDest = path.resolve(process.cwd(), resolvedDest) + } + if (isSrcSubdir(resolvedSrc, resolvedDest)) { + throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`) + } -// On failure, `result.stdout|stderr|all` should contain the currently buffered stream -const getBufferedData = async (stream, streamPromise) => { - if (!stream) { - return; - } + // prevent copy if src is a subdir of dest since unlinking + // dest in this case would result in removing src contents + // and therefore a broken symlink would be created. + if (fs.statSync(dest).isDirectory() && isSrcSubdir(resolvedDest, resolvedSrc)) { + throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`) + } + return copyLink(resolvedSrc, dest) + } +} - stream.destroy(); +function copyLink (resolvedSrc, dest) { + fs.unlinkSync(dest) + return fs.symlinkSync(resolvedSrc, dest) +} - try { - return await streamPromise; - } catch (error) { - return error.bufferedData; - } -}; +// return true if dest is a subdir of src, otherwise false. +function isSrcSubdir (src, dest) { + const srcArray = path.resolve(src).split(path.sep) + const destArray = path.resolve(dest).split(path.sep) + return srcArray.reduce((acc, current, i) => acc && destArray[i] === current, true) +} -const getStreamPromise = (stream, {encoding, buffer, maxBuffer}) => { - if (!stream || !buffer) { - return; - } +function checkStats (src, dest) { + const srcStat = fs.statSync(src) + let destStat + try { + destStat = fs.statSync(dest) + } catch (err) { + if (err.code === 'ENOENT') return {srcStat, destStat: notExist} + throw err + } + return {srcStat, destStat} +} - if (encoding) { - return getStream(stream, {encoding, maxBuffer}); - } +function checkPaths (src, dest) { + const {srcStat, destStat} = checkStats(src, dest) + if (destStat.ino && destStat.ino === srcStat.ino) { + throw new Error('Source and destination must not be the same.') + } + if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { + throw new Error(`Cannot copy '${src}' to a subdirectory of itself, '${dest}'.`) + } + return destStat +} - return getStream.buffer(stream, {maxBuffer}); -}; +module.exports = copySync -// Retrieve result of child process: exit code, signal, error, streams (stdout/stderr/all) -const getSpawnedResult = async ({stdout, stderr, all}, {encoding, buffer, maxBuffer}, processDone) => { - const stdoutPromise = getStreamPromise(stdout, {encoding, buffer, maxBuffer}); - const stderrPromise = getStreamPromise(stderr, {encoding, buffer, maxBuffer}); - const allPromise = getStreamPromise(all, {encoding, buffer, maxBuffer: maxBuffer * 2}); - try { - return await Promise.all([processDone, stdoutPromise, stderrPromise, allPromise]); - } catch (error) { - return Promise.all([ - {error, signal: error.signal, timedOut: error.timedOut}, - getBufferedData(stdout, stdoutPromise), - getBufferedData(stderr, stderrPromise), - getBufferedData(all, allPromise) - ]); - } -}; +/***/ }), -const validateInputSync = ({input}) => { - if (isStream(input)) { - throw new TypeError('The `input` option cannot be a stream in sync mode'); - } -}; +/***/ 1617: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -module.exports = { - handleInput, - makeAllStream, - getSpawnedResult, - validateInputSync -}; +module.exports = { + copySync: __nccwpck_require__(8998) +} + /***/ }), -/***/ 71947: +/***/ 138: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -// Note: since nyc uses this module to output coverage, any lines -// that are in the direct sync flow of nyc's outputCoverage are -// ignored, since we can never get coverage for them. -// grab a reference to node's real process object right away -var process = global.process -const processOk = function (process) { - return process && - typeof process === 'object' && - typeof process.removeListener === 'function' && - typeof process.emit === 'function' && - typeof process.reallyExit === 'function' && - typeof process.listeners === 'function' && - typeof process.kill === 'function' && - typeof process.pid === 'number' && - typeof process.on === 'function' -} -// some kind of non-node environment, just no-op -/* istanbul ignore if */ -if (!processOk(process)) { - module.exports = function () { - return function () {} - } -} else { - var assert = __nccwpck_require__(42613) - var signals = __nccwpck_require__(38910) - var isWin = /^win/i.test(process.platform) +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) +const mkdirp = (__nccwpck_require__(4846).mkdirs) +const pathExists = (__nccwpck_require__(1216).pathExists) +const utimes = (__nccwpck_require__(2707).utimesMillis) - var EE = __nccwpck_require__(24434) - /* istanbul ignore if */ - if (typeof EE !== 'function') { - EE = EE.EventEmitter - } +const notExist = Symbol('notExist') - var emitter - if (process.__signal_exit_emitter__) { - emitter = process.__signal_exit_emitter__ - } else { - emitter = process.__signal_exit_emitter__ = new EE() - emitter.count = 0 - emitter.emitted = {} +function copy (src, dest, opts, cb) { + if (typeof opts === 'function' && !cb) { + cb = opts + opts = {} + } else if (typeof opts === 'function') { + opts = {filter: opts} } - // Because this emitter is a global, we have to check to see if a - // previous version of this library failed to enable infinite listeners. - // I know what you're about to say. But literally everything about - // signal-exit is a compromise with evil. Get used to it. - if (!emitter.infinite) { - emitter.setMaxListeners(Infinity) - emitter.infinite = true + cb = cb || function () {} + opts = opts || {} + + opts.clobber = 'clobber' in opts ? !!opts.clobber : true // default to true for now + opts.overwrite = 'overwrite' in opts ? !!opts.overwrite : opts.clobber // overwrite falls back to clobber + + // Warn about using preserveTimestamps on 32-bit node + if (opts.preserveTimestamps && process.arch === 'ia32') { + console.warn(`fs-extra: Using the preserveTimestamps option in 32-bit node is not recommended;\n + see https://github.com/jprichardson/node-fs-extra/issues/269`) } - module.exports = function (cb, opts) { - /* istanbul ignore if */ - if (!processOk(global.process)) { - return function () {} - } - assert.equal(typeof cb, 'function', 'a callback must be provided for exit handler') + checkPaths(src, dest, (err, destStat) => { + if (err) return cb(err) + if (opts.filter) return handleFilter(checkParentDir, destStat, src, dest, opts, cb) + return checkParentDir(destStat, src, dest, opts, cb) + }) +} - if (loaded === false) { - load() - } +function checkParentDir (destStat, src, dest, opts, cb) { + const destParent = path.dirname(dest) + pathExists(destParent, (err, dirExists) => { + if (err) return cb(err) + if (dirExists) return startCopy(destStat, src, dest, opts, cb) + mkdirp(destParent, err => { + if (err) return cb(err) + return startCopy(destStat, src, dest, opts, cb) + }) + }) +} - var ev = 'exit' - if (opts && opts.alwaysLast) { - ev = 'afterexit' +function handleFilter (onInclude, destStat, src, dest, opts, cb) { + Promise.resolve(opts.filter(src, dest)).then(include => { + if (include) { + if (destStat) return onInclude(destStat, src, dest, opts, cb) + return onInclude(src, dest, opts, cb) } + return cb() + }, error => cb(error)) +} - var remove = function () { - emitter.removeListener(ev, cb) - if (emitter.listeners('exit').length === 0 && - emitter.listeners('afterexit').length === 0) { - unload() - } - } - emitter.on(ev, cb) +function startCopy (destStat, src, dest, opts, cb) { + if (opts.filter) return handleFilter(getStats, destStat, src, dest, opts, cb) + return getStats(destStat, src, dest, opts, cb) +} - return remove - } +function getStats (destStat, src, dest, opts, cb) { + const stat = opts.dereference ? fs.stat : fs.lstat + stat(src, (err, srcStat) => { + if (err) return cb(err) - var unload = function unload () { - if (!loaded || !processOk(global.process)) { - return - } - loaded = false + if (srcStat.isDirectory()) return onDir(srcStat, destStat, src, dest, opts, cb) + else if (srcStat.isFile() || + srcStat.isCharacterDevice() || + srcStat.isBlockDevice()) return onFile(srcStat, destStat, src, dest, opts, cb) + else if (srcStat.isSymbolicLink()) return onLink(destStat, src, dest, opts, cb) + }) +} - signals.forEach(function (sig) { - try { - process.removeListener(sig, sigListeners[sig]) - } catch (er) {} +function onFile (srcStat, destStat, src, dest, opts, cb) { + if (destStat === notExist) return copyFile(srcStat, src, dest, opts, cb) + return mayCopyFile(srcStat, src, dest, opts, cb) +} + +function mayCopyFile (srcStat, src, dest, opts, cb) { + if (opts.overwrite) { + fs.unlink(dest, err => { + if (err) return cb(err) + return copyFile(srcStat, src, dest, opts, cb) }) - process.emit = originalProcessEmit - process.reallyExit = originalProcessReallyExit - emitter.count -= 1 - } - module.exports.unload = unload + } else if (opts.errorOnExist) { + return cb(new Error(`'${dest}' already exists`)) + } else return cb() +} - var emit = function emit (event, code, signal) { - /* istanbul ignore if */ - if (emitter.emitted[event]) { - return - } - emitter.emitted[event] = true - emitter.emit(event, code, signal) +function copyFile (srcStat, src, dest, opts, cb) { + if (typeof fs.copyFile === 'function') { + return fs.copyFile(src, dest, err => { + if (err) return cb(err) + return setDestModeAndTimestamps(srcStat, dest, opts, cb) + }) } + return copyFileFallback(srcStat, src, dest, opts, cb) +} - // { : , ... } - var sigListeners = {} - signals.forEach(function (sig) { - sigListeners[sig] = function listener () { - /* istanbul ignore if */ - if (!processOk(global.process)) { - return - } - // If there are no other listeners, an exit is coming! - // Simplest way: remove us and then re-send the signal. - // We know that this will kill the process, so we can - // safely emit now. - var listeners = process.listeners(sig) - if (listeners.length === emitter.count) { - unload() - emit('exit', null, sig) - /* istanbul ignore next */ - emit('afterexit', null, sig) - /* istanbul ignore next */ - if (isWin && sig === 'SIGHUP') { - // "SIGHUP" throws an `ENOSYS` error on Windows, - // so use a supported signal instead - sig = 'SIGINT' - } - /* istanbul ignore next */ - process.kill(process.pid, sig) - } +function copyFileFallback (srcStat, src, dest, opts, cb) { + const rs = fs.createReadStream(src) + rs.on('error', err => cb(err)).once('open', () => { + const ws = fs.createWriteStream(dest, { mode: srcStat.mode }) + ws.on('error', err => cb(err)) + .on('open', () => rs.pipe(ws)) + .once('close', () => setDestModeAndTimestamps(srcStat, dest, opts, cb)) + }) +} + +function setDestModeAndTimestamps (srcStat, dest, opts, cb) { + fs.chmod(dest, srcStat.mode, err => { + if (err) return cb(err) + if (opts.preserveTimestamps) { + return utimes(dest, srcStat.atime, srcStat.mtime, cb) } + return cb() }) +} - module.exports.signals = function () { - return signals +function onDir (srcStat, destStat, src, dest, opts, cb) { + if (destStat === notExist) return mkDirAndCopy(srcStat, src, dest, opts, cb) + if (destStat && !destStat.isDirectory()) { + return cb(new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`)) } + return copyDir(src, dest, opts, cb) +} - var loaded = false +function mkDirAndCopy (srcStat, src, dest, opts, cb) { + fs.mkdir(dest, err => { + if (err) return cb(err) + copyDir(src, dest, opts, err => { + if (err) return cb(err) + return fs.chmod(dest, srcStat.mode, cb) + }) + }) +} - var load = function load () { - if (loaded || !processOk(global.process)) { - return - } - loaded = true +function copyDir (src, dest, opts, cb) { + fs.readdir(src, (err, items) => { + if (err) return cb(err) + return copyDirItems(items, src, dest, opts, cb) + }) +} - // This is the number of onSignalExit's that are in play. - // It's important so that we can count the correct number of - // listeners on signals, and don't wait for the other one to - // handle it instead of us. - emitter.count += 1 +function copyDirItems (items, src, dest, opts, cb) { + const item = items.pop() + if (!item) return cb() + return copyDirItem(items, item, src, dest, opts, cb) +} - signals = signals.filter(function (sig) { - try { - process.on(sig, sigListeners[sig]) - return true - } catch (er) { - return false - } +function copyDirItem (items, item, src, dest, opts, cb) { + const srcItem = path.join(src, item) + const destItem = path.join(dest, item) + checkPaths(srcItem, destItem, (err, destStat) => { + if (err) return cb(err) + startCopy(destStat, srcItem, destItem, opts, err => { + if (err) return cb(err) + return copyDirItems(items, src, dest, opts, cb) }) + }) +} - process.emit = processEmit - process.reallyExit = processReallyExit - } - module.exports.load = load +function onLink (destStat, src, dest, opts, cb) { + fs.readlink(src, (err, resolvedSrc) => { + if (err) return cb(err) - var originalProcessReallyExit = process.reallyExit - var processReallyExit = function processReallyExit (code) { - /* istanbul ignore if */ - if (!processOk(global.process)) { - return + if (opts.dereference) { + resolvedSrc = path.resolve(process.cwd(), resolvedSrc) } - process.exitCode = code || /* istanbul ignore next */ 0 - emit('exit', process.exitCode, null) - /* istanbul ignore next */ - emit('afterexit', process.exitCode, null) - /* istanbul ignore next */ - originalProcessReallyExit.call(process, process.exitCode) - } - var originalProcessEmit = process.emit - var processEmit = function processEmit (ev, arg) { - if (ev === 'exit' && processOk(global.process)) { - /* istanbul ignore else */ - if (arg !== undefined) { - process.exitCode = arg - } - var ret = originalProcessEmit.apply(this, arguments) - /* istanbul ignore next */ - emit('exit', process.exitCode, null) - /* istanbul ignore next */ - emit('afterexit', process.exitCode, null) - /* istanbul ignore next */ - return ret + if (destStat === notExist) { + return fs.symlink(resolvedSrc, dest, cb) } else { - return originalProcessEmit.apply(this, arguments) + fs.readlink(dest, (err, resolvedDest) => { + if (err) { + // dest exists and is a regular file or directory, + // Windows may throw UNKNOWN error. If dest already exists, + // fs throws error anyway, so no need to guard against it here. + if (err.code === 'EINVAL' || err.code === 'UNKNOWN') return fs.symlink(resolvedSrc, dest, cb) + return cb(err) + } + if (opts.dereference) { + resolvedDest = path.resolve(process.cwd(), resolvedDest) + } + if (isSrcSubdir(resolvedSrc, resolvedDest)) { + return cb(new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`)) + } + + // do not copy if src is a subdir of dest since unlinking + // dest in this case would result in removing src contents + // and therefore a broken symlink would be created. + if (destStat.isDirectory() && isSrcSubdir(resolvedDest, resolvedSrc)) { + return cb(new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`)) + } + return copyLink(resolvedSrc, dest, cb) + }) } - } + }) } +function copyLink (resolvedSrc, dest, cb) { + fs.unlink(dest, err => { + if (err) return cb(err) + return fs.symlink(resolvedSrc, dest, cb) + }) +} -/***/ }), - -/***/ 38910: -/***/ ((module) => { - -// This is not the set of all possible signals. -// -// It IS, however, the set of all signals that trigger -// an exit on either Linux or BSD systems. Linux is a -// superset of the signal names supported on BSD, and -// the unknown signals just fail to register, so we can -// catch that easily enough. -// -// Don't bother with SIGKILL. It's uncatchable, which -// means that we can't fire any callbacks anyway. -// -// If a user does happen to register a handler on a non- -// fatal signal like SIGWINCH or something, and then -// exit, it'll end up firing `process.emit('exit')`, so -// the handler will be fired anyway. -// -// SIGBUS, SIGFPE, SIGSEGV and SIGILL, when not raised -// artificially, inherently leave the process in a -// state from which it is not safe to try and enter JS -// listeners. -module.exports = [ - 'SIGABRT', - 'SIGALRM', - 'SIGHUP', - 'SIGINT', - 'SIGTERM' -] +// return true if dest is a subdir of src, otherwise false. +function isSrcSubdir (src, dest) { + const srcArray = path.resolve(src).split(path.sep) + const destArray = path.resolve(dest).split(path.sep) + return srcArray.reduce((acc, current, i) => acc && destArray[i] === current, true) +} -if (process.platform !== 'win32') { - module.exports.push( - 'SIGVTALRM', - 'SIGXCPU', - 'SIGXFSZ', - 'SIGUSR2', - 'SIGTRAP', - 'SIGSYS', - 'SIGQUIT', - 'SIGIOT' - // should detect profiler and enable/disable accordingly. - // see #21 - // 'SIGPROF' - ) +function checkStats (src, dest, cb) { + fs.stat(src, (err, srcStat) => { + if (err) return cb(err) + fs.stat(dest, (err, destStat) => { + if (err) { + if (err.code === 'ENOENT') return cb(null, {srcStat, destStat: notExist}) + return cb(err) + } + return cb(null, {srcStat, destStat}) + }) + }) } -if (process.platform === 'linux') { - module.exports.push( - 'SIGIO', - 'SIGPOLL', - 'SIGPWR', - 'SIGSTKFLT', - 'SIGUNUSED' - ) +function checkPaths (src, dest, cb) { + checkStats(src, dest, (err, stats) => { + if (err) return cb(err) + const {srcStat, destStat} = stats + if (destStat.ino && destStat.ino === srcStat.ino) { + return cb(new Error('Source and destination must not be the same.')) + } + if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { + return cb(new Error(`Cannot copy '${src}' to a subdirectory of itself, '${dest}'.`)) + } + return cb(null, destStat) + }) } +module.exports = copy + /***/ }), -/***/ 75522: -/***/ (function(__unused_webpack_module, exports) { +/***/ 4735: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var __extends = (this && this.__extends) || (function () { - var extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; - return function (d, b) { - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -var ExtendableError = /** @class */ (function (_super) { - __extends(ExtendableError, _super); - function ExtendableError(message) { - var _newTarget = this.constructor; - if (message === void 0) { message = ''; } - var _this = _super.call(this, message) || this; - _this.message = message; - Object.setPrototypeOf(_this, _newTarget.prototype); - delete _this.stack; - _this.name = _newTarget.name; - _this._error = new Error(); - return _this; - } - Object.defineProperty(ExtendableError.prototype, "stack", { - get: function () { - if (this._stack) { - return this._stack; - } - var prototype = Object.getPrototypeOf(this); - var depth = 1; - loop: while (prototype) { - switch (prototype) { - case ExtendableError.prototype: - break loop; - case Object.prototype: - depth = 1; - break loop; - default: - depth++; - break; - } - prototype = Object.getPrototypeOf(prototype); - } - var stackLines = (this._error.stack || '').match(/.+/g) || []; - var nameLine = this.name; - if (this.message) { - nameLine += ": " + this.message; - } - stackLines.splice(0, depth + 1, nameLine); - return this._stack = stackLines.join('\n'); - }, - enumerable: true, - configurable: true - }); - return ExtendableError; -}(Error)); -exports.ExtendableError = ExtendableError; -exports["default"] = ExtendableError; -//# sourceMappingURL=index.js.map + +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +module.exports = { + copy: u(__nccwpck_require__(138)) +} + /***/ }), -/***/ 10484: +/***/ 7559: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const taskManager = __nccwpck_require__(12123); -const async_1 = __nccwpck_require__(95649); -const stream_1 = __nccwpck_require__(80613); -const sync_1 = __nccwpck_require__(81850); -const settings_1 = __nccwpck_require__(34763); -const utils = __nccwpck_require__(1062); -async function FastGlob(source, options) { - assertPatternsInput(source); - const works = getWorks(source, async_1.default, options); - const result = await Promise.all(works); - return utils.array.flatten(result); -} -// https://github.com/typescript-eslint/typescript-eslint/issues/60 -// eslint-disable-next-line no-redeclare -(function (FastGlob) { - FastGlob.glob = FastGlob; - FastGlob.globSync = sync; - FastGlob.globStream = stream; - FastGlob.async = FastGlob; - function sync(source, options) { - assertPatternsInput(source); - const works = getWorks(source, sync_1.default, options); - return utils.array.flatten(works); - } - FastGlob.sync = sync; - function stream(source, options) { - assertPatternsInput(source); - const works = getWorks(source, stream_1.default, options); - /** - * The stream returned by the provider cannot work with an asynchronous iterator. - * To support asynchronous iterators, regardless of the number of tasks, we always multiplex streams. - * This affects performance (+25%). I don't see best solution right now. - */ - return utils.stream.merge(works); - } - FastGlob.stream = stream; - function generateTasks(source, options) { - assertPatternsInput(source); - const patterns = [].concat(source); - const settings = new settings_1.default(options); - return taskManager.generate(patterns, settings); - } - FastGlob.generateTasks = generateTasks; - function isDynamicPattern(source, options) { - assertPatternsInput(source); - const settings = new settings_1.default(options); - return utils.pattern.isDynamicPattern(source, settings); - } - FastGlob.isDynamicPattern = isDynamicPattern; - function escapePath(source) { - assertPatternsInput(source); - return utils.path.escape(source); - } - FastGlob.escapePath = escapePath; - function convertPathToPattern(source) { - assertPatternsInput(source); - return utils.path.convertPathToPattern(source); - } - FastGlob.convertPathToPattern = convertPathToPattern; - let posix; - (function (posix) { - function escapePath(source) { - assertPatternsInput(source); - return utils.path.escapePosixPath(source); - } - posix.escapePath = escapePath; - function convertPathToPattern(source) { - assertPatternsInput(source); - return utils.path.convertPosixPathToPattern(source); - } - posix.convertPathToPattern = convertPathToPattern; - })(posix = FastGlob.posix || (FastGlob.posix = {})); - let win32; - (function (win32) { - function escapePath(source) { - assertPatternsInput(source); - return utils.path.escapeWindowsPath(source); - } - win32.escapePath = escapePath; - function convertPathToPattern(source) { - assertPatternsInput(source); - return utils.path.convertWindowsPathToPattern(source); - } - win32.convertPathToPattern = convertPathToPattern; - })(win32 = FastGlob.win32 || (FastGlob.win32 = {})); -})(FastGlob || (FastGlob = {})); -function getWorks(source, _Provider, options) { - const patterns = [].concat(source); - const settings = new settings_1.default(options); - const tasks = taskManager.generate(patterns, settings); - const provider = new _Provider(settings); - return tasks.map(provider.read, provider); -} -function assertPatternsInput(input) { - const source = [].concat(input); - const isValidSource = source.every((item) => utils.string.isString(item) && !utils.string.isEmpty(item)); - if (!isValidSource) { - throw new TypeError('Patterns must be a string (non empty) or an array of strings'); - } -} -module.exports = FastGlob; +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const fs = __nccwpck_require__(9896) +const path = __nccwpck_require__(6928) +const mkdir = __nccwpck_require__(4846) +const remove = __nccwpck_require__(550) -/***/ }), +const emptyDir = u(function emptyDir (dir, callback) { + callback = callback || function () {} + fs.readdir(dir, (err, items) => { + if (err) return mkdir.mkdirs(dir, callback) -/***/ 12123: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { + items = items.map(item => path.join(dir, item)) + deleteItem() -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.convertPatternGroupToTask = exports.convertPatternGroupsToTasks = exports.groupPatternsByBaseDirectory = exports.getNegativePatternsAsPositive = exports.getPositivePatterns = exports.convertPatternsToTasks = exports.generate = void 0; -const utils = __nccwpck_require__(1062); -function generate(input, settings) { - const patterns = processPatterns(input, settings); - const ignore = processPatterns(settings.ignore, settings); - const positivePatterns = getPositivePatterns(patterns); - const negativePatterns = getNegativePatternsAsPositive(patterns, ignore); - const staticPatterns = positivePatterns.filter((pattern) => utils.pattern.isStaticPattern(pattern, settings)); - const dynamicPatterns = positivePatterns.filter((pattern) => utils.pattern.isDynamicPattern(pattern, settings)); - const staticTasks = convertPatternsToTasks(staticPatterns, negativePatterns, /* dynamic */ false); - const dynamicTasks = convertPatternsToTasks(dynamicPatterns, negativePatterns, /* dynamic */ true); - return staticTasks.concat(dynamicTasks); -} -exports.generate = generate; -function processPatterns(input, settings) { - let patterns = input; - /** - * The original pattern like `{,*,**,a/*}` can lead to problems checking the depth when matching entry - * and some problems with the micromatch package (see fast-glob issues: #365, #394). - * - * To solve this problem, we expand all patterns containing brace expansion. This can lead to a slight slowdown - * in matching in the case of a large set of patterns after expansion. - */ - if (settings.braceExpansion) { - patterns = utils.pattern.expandPatternsWithBraceExpansion(patterns); - } - /** - * If the `baseNameMatch` option is enabled, we must add globstar to patterns, so that they can be used - * at any nesting level. - * - * We do this here, because otherwise we have to complicate the filtering logic. For example, we need to change - * the pattern in the filter before creating a regular expression. There is no need to change the patterns - * in the application. Only on the input. - */ - if (settings.baseNameMatch) { - patterns = patterns.map((pattern) => pattern.includes('/') ? pattern : `**/${pattern}`); - } - /** - * This method also removes duplicate slashes that may have been in the pattern or formed as a result of expansion. - */ - return patterns.map((pattern) => utils.pattern.removeDuplicateSlashes(pattern)); -} -/** - * Returns tasks grouped by basic pattern directories. - * - * Patterns that can be found inside (`./`) and outside (`../`) the current directory are handled separately. - * This is necessary because directory traversal starts at the base directory and goes deeper. - */ -function convertPatternsToTasks(positive, negative, dynamic) { - const tasks = []; - const patternsOutsideCurrentDirectory = utils.pattern.getPatternsOutsideCurrentDirectory(positive); - const patternsInsideCurrentDirectory = utils.pattern.getPatternsInsideCurrentDirectory(positive); - const outsideCurrentDirectoryGroup = groupPatternsByBaseDirectory(patternsOutsideCurrentDirectory); - const insideCurrentDirectoryGroup = groupPatternsByBaseDirectory(patternsInsideCurrentDirectory); - tasks.push(...convertPatternGroupsToTasks(outsideCurrentDirectoryGroup, negative, dynamic)); - /* - * For the sake of reducing future accesses to the file system, we merge all tasks within the current directory - * into a global task, if at least one pattern refers to the root (`.`). In this case, the global task covers the rest. - */ - if ('.' in insideCurrentDirectoryGroup) { - tasks.push(convertPatternGroupToTask('.', patternsInsideCurrentDirectory, negative, dynamic)); - } - else { - tasks.push(...convertPatternGroupsToTasks(insideCurrentDirectoryGroup, negative, dynamic)); + function deleteItem () { + const item = items.pop() + if (!item) return callback() + remove.remove(item, err => { + if (err) return callback(err) + deleteItem() + }) } - return tasks; -} -exports.convertPatternsToTasks = convertPatternsToTasks; -function getPositivePatterns(patterns) { - return utils.pattern.getPositivePatterns(patterns); -} -exports.getPositivePatterns = getPositivePatterns; -function getNegativePatternsAsPositive(patterns, ignore) { - const negative = utils.pattern.getNegativePatterns(patterns).concat(ignore); - const positive = negative.map(utils.pattern.convertToPositivePattern); - return positive; -} -exports.getNegativePatternsAsPositive = getNegativePatternsAsPositive; -function groupPatternsByBaseDirectory(patterns) { - const group = {}; - return patterns.reduce((collection, pattern) => { - const base = utils.pattern.getBaseDirectory(pattern); - if (base in collection) { - collection[base].push(pattern); - } - else { - collection[base] = [pattern]; - } - return collection; - }, group); -} -exports.groupPatternsByBaseDirectory = groupPatternsByBaseDirectory; -function convertPatternGroupsToTasks(positive, negative, dynamic) { - return Object.keys(positive).map((base) => { - return convertPatternGroupToTask(base, positive[base], negative, dynamic); - }); -} -exports.convertPatternGroupsToTasks = convertPatternGroupsToTasks; -function convertPatternGroupToTask(base, positive, negative, dynamic) { - return { - dynamic, - positive, - negative, - base, - patterns: [].concat(positive, negative.map(utils.pattern.convertToNegativePattern)) - }; + }) +}) + +function emptyDirSync (dir) { + let items + try { + items = fs.readdirSync(dir) + } catch (err) { + return mkdir.mkdirsSync(dir) + } + + items.forEach(item => { + item = path.join(dir, item) + remove.removeSync(item) + }) +} + +module.exports = { + emptyDirSync, + emptydirSync: emptyDirSync, + emptyDir, + emptydir: emptyDir } -exports.convertPatternGroupToTask = convertPatternGroupToTask; /***/ }), -/***/ 95649: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +/***/ 312: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -Object.defineProperty(exports, "__esModule", ({ value: true })); -const async_1 = __nccwpck_require__(79439); -const provider_1 = __nccwpck_require__(5420); -class ProviderAsync extends provider_1.default { - constructor() { - super(...arguments); - this._reader = new async_1.default(this._settings); - } - async read(task) { - const root = this._getRootDirectory(task); - const options = this._getReaderOptions(task); - const entries = await this.api(root, task, options); - return entries.map((entry) => options.transform(entry)); - } - api(root, task, options) { - if (task.dynamic) { - return this._reader.dynamic(root, options); - } - return this._reader.static(task.patterns, options); - } -} -exports["default"] = ProviderAsync; +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const path = __nccwpck_require__(6928) +const fs = __nccwpck_require__(8692) +const mkdir = __nccwpck_require__(4846) +const pathExists = (__nccwpck_require__(1216).pathExists) -/***/ }), +function createFile (file, callback) { + function makeFile () { + fs.writeFile(file, '', err => { + if (err) return callback(err) + callback() + }) + } -/***/ 26595: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { + fs.stat(file, (err, stats) => { // eslint-disable-line handle-callback-err + if (!err && stats.isFile()) return callback() + const dir = path.dirname(file) + pathExists(dir, (err, dirExists) => { + if (err) return callback(err) + if (dirExists) return makeFile() + mkdir.mkdirs(dir, err => { + if (err) return callback(err) + makeFile() + }) + }) + }) +} + +function createFileSync (file) { + let stats + try { + stats = fs.statSync(file) + } catch (e) {} + if (stats && stats.isFile()) return + const dir = path.dirname(file) + if (!fs.existsSync(dir)) { + mkdir.mkdirsSync(dir) + } -Object.defineProperty(exports, "__esModule", ({ value: true })); -const utils = __nccwpck_require__(1062); -const partial_1 = __nccwpck_require__(62600); -class DeepFilter { - constructor(_settings, _micromatchOptions) { - this._settings = _settings; - this._micromatchOptions = _micromatchOptions; - } - getFilter(basePath, positive, negative) { - const matcher = this._getMatcher(positive); - const negativeRe = this._getNegativePatternsRe(negative); - return (entry) => this._filter(basePath, entry, matcher, negativeRe); - } - _getMatcher(patterns) { - return new partial_1.default(patterns, this._settings, this._micromatchOptions); - } - _getNegativePatternsRe(patterns) { - const affectDepthOfReadingPatterns = patterns.filter(utils.pattern.isAffectDepthOfReadingPattern); - return utils.pattern.convertPatternsToRe(affectDepthOfReadingPatterns, this._micromatchOptions); - } - _filter(basePath, entry, matcher, negativeRe) { - if (this._isSkippedByDeep(basePath, entry.path)) { - return false; - } - if (this._isSkippedSymbolicLink(entry)) { - return false; - } - const filepath = utils.path.removeLeadingDotSegment(entry.path); - if (this._isSkippedByPositivePatterns(filepath, matcher)) { - return false; - } - return this._isSkippedByNegativePatterns(filepath, negativeRe); - } - _isSkippedByDeep(basePath, entryPath) { - /** - * Avoid unnecessary depth calculations when it doesn't matter. - */ - if (this._settings.deep === Infinity) { - return false; - } - return this._getEntryLevel(basePath, entryPath) >= this._settings.deep; - } - _getEntryLevel(basePath, entryPath) { - const entryPathDepth = entryPath.split('/').length; - if (basePath === '') { - return entryPathDepth; - } - const basePathDepth = basePath.split('/').length; - return entryPathDepth - basePathDepth; - } - _isSkippedSymbolicLink(entry) { - return !this._settings.followSymbolicLinks && entry.dirent.isSymbolicLink(); - } - _isSkippedByPositivePatterns(entryPath, matcher) { - return !this._settings.baseNameMatch && !matcher.match(entryPath); - } - _isSkippedByNegativePatterns(entryPath, patternsRe) { - return !utils.pattern.matchAny(entryPath, patternsRe); - } + fs.writeFileSync(file, '') +} + +module.exports = { + createFile: u(createFile), + createFileSync } -exports["default"] = DeepFilter; /***/ }), -/***/ 94193: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +/***/ 168: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -Object.defineProperty(exports, "__esModule", ({ value: true })); -const utils = __nccwpck_require__(1062); -class EntryFilter { - constructor(_settings, _micromatchOptions) { - this._settings = _settings; - this._micromatchOptions = _micromatchOptions; - this.index = new Map(); - } - getFilter(positive, negative) { - const [absoluteNegative, relativeNegative] = utils.pattern.partitionAbsoluteAndRelative(negative); - const patterns = { - positive: { - all: utils.pattern.convertPatternsToRe(positive, this._micromatchOptions) - }, - negative: { - absolute: utils.pattern.convertPatternsToRe(absoluteNegative, Object.assign(Object.assign({}, this._micromatchOptions), { dot: true })), - relative: utils.pattern.convertPatternsToRe(relativeNegative, Object.assign(Object.assign({}, this._micromatchOptions), { dot: true })) - } - }; - return (entry) => this._filter(entry, patterns); - } - _filter(entry, patterns) { - const filepath = utils.path.removeLeadingDotSegment(entry.path); - if (this._settings.unique && this._isDuplicateEntry(filepath)) { - return false; - } - if (this._onlyFileFilter(entry) || this._onlyDirectoryFilter(entry)) { - return false; - } - const isMatched = this._isMatchToPatternsSet(filepath, patterns, entry.dirent.isDirectory()); - if (this._settings.unique && isMatched) { - this._createIndexRecord(filepath); - } - return isMatched; - } - _isDuplicateEntry(filepath) { - return this.index.has(filepath); - } - _createIndexRecord(filepath) { - this.index.set(filepath, undefined); - } - _onlyFileFilter(entry) { - return this._settings.onlyFiles && !entry.dirent.isFile(); - } - _onlyDirectoryFilter(entry) { - return this._settings.onlyDirectories && !entry.dirent.isDirectory(); - } - _isMatchToPatternsSet(filepath, patterns, isDirectory) { - const isMatched = this._isMatchToPatterns(filepath, patterns.positive.all, isDirectory); - if (!isMatched) { - return false; - } - const isMatchedByRelativeNegative = this._isMatchToPatterns(filepath, patterns.negative.relative, isDirectory); - if (isMatchedByRelativeNegative) { - return false; - } - const isMatchedByAbsoluteNegative = this._isMatchToAbsoluteNegative(filepath, patterns.negative.absolute, isDirectory); - if (isMatchedByAbsoluteNegative) { - return false; - } - return true; - } - _isMatchToAbsoluteNegative(filepath, patternsRe, isDirectory) { - if (patternsRe.length === 0) { - return false; - } - const fullpath = utils.path.makeAbsolute(this._settings.cwd, filepath); - return this._isMatchToPatterns(fullpath, patternsRe, isDirectory); - } - _isMatchToPatterns(filepath, patternsRe, isDirectory) { - if (patternsRe.length === 0) { - return false; - } - // Trying to match files and directories by patterns. - const isMatched = utils.pattern.matchAny(filepath, patternsRe); - // A pattern with a trailling slash can be used for directory matching. - // To apply such pattern, we need to add a tralling slash to the path. - if (!isMatched && isDirectory) { - return utils.pattern.matchAny(filepath + '/', patternsRe); - } - return isMatched; - } + +const file = __nccwpck_require__(312) +const link = __nccwpck_require__(8682) +const symlink = __nccwpck_require__(5059) + +module.exports = { + // file + createFile: file.createFile, + createFileSync: file.createFileSync, + ensureFile: file.createFile, + ensureFileSync: file.createFileSync, + // link + createLink: link.createLink, + createLinkSync: link.createLinkSync, + ensureLink: link.createLink, + ensureLinkSync: link.createLinkSync, + // symlink + createSymlink: symlink.createSymlink, + createSymlinkSync: symlink.createSymlinkSync, + ensureSymlink: symlink.createSymlink, + ensureSymlinkSync: symlink.createSymlinkSync } -exports["default"] = EntryFilter; /***/ }), -/***/ 94591: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - +/***/ 8682: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -Object.defineProperty(exports, "__esModule", ({ value: true })); -const utils = __nccwpck_require__(1062); -class ErrorFilter { - constructor(_settings) { - this._settings = _settings; - } - getFilter() { - return (error) => this._isNonFatalError(error); - } - _isNonFatalError(error) { - return utils.errno.isEnoentCodeError(error) || this._settings.suppressErrors; - } -} -exports["default"] = ErrorFilter; -/***/ }), +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const path = __nccwpck_require__(6928) +const fs = __nccwpck_require__(8692) +const mkdir = __nccwpck_require__(4846) +const pathExists = (__nccwpck_require__(1216).pathExists) -/***/ 61703: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +function createLink (srcpath, dstpath, callback) { + function makeLink (srcpath, dstpath) { + fs.link(srcpath, dstpath, err => { + if (err) return callback(err) + callback(null) + }) + } + pathExists(dstpath, (err, destinationExists) => { + if (err) return callback(err) + if (destinationExists) return callback(null) + fs.lstat(srcpath, (err) => { + if (err) { + err.message = err.message.replace('lstat', 'ensureLink') + return callback(err) + } -Object.defineProperty(exports, "__esModule", ({ value: true })); -const utils = __nccwpck_require__(1062); -class Matcher { - constructor(_patterns, _settings, _micromatchOptions) { - this._patterns = _patterns; - this._settings = _settings; - this._micromatchOptions = _micromatchOptions; - this._storage = []; - this._fillStorage(); - } - _fillStorage() { - for (const pattern of this._patterns) { - const segments = this._getPatternSegments(pattern); - const sections = this._splitSegmentsIntoSections(segments); - this._storage.push({ - complete: sections.length <= 1, - pattern, - segments, - sections - }); - } - } - _getPatternSegments(pattern) { - const parts = utils.pattern.getPatternParts(pattern, this._micromatchOptions); - return parts.map((part) => { - const dynamic = utils.pattern.isDynamicPattern(part, this._settings); - if (!dynamic) { - return { - dynamic: false, - pattern: part - }; - } - return { - dynamic: true, - pattern: part, - patternRe: utils.pattern.makeRe(part, this._micromatchOptions) - }; - }); - } - _splitSegmentsIntoSections(segments) { - return utils.array.splitWhen(segments, (segment) => segment.dynamic && utils.pattern.hasGlobStar(segment.pattern)); - } + const dir = path.dirname(dstpath) + pathExists(dir, (err, dirExists) => { + if (err) return callback(err) + if (dirExists) return makeLink(srcpath, dstpath) + mkdir.mkdirs(dir, err => { + if (err) return callback(err) + makeLink(srcpath, dstpath) + }) + }) + }) + }) } -exports["default"] = Matcher; +function createLinkSync (srcpath, dstpath) { + const destinationExists = fs.existsSync(dstpath) + if (destinationExists) return undefined -/***/ }), + try { + fs.lstatSync(srcpath) + } catch (err) { + err.message = err.message.replace('lstat', 'ensureLink') + throw err + } -/***/ 62600: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { + const dir = path.dirname(dstpath) + const dirExists = fs.existsSync(dir) + if (dirExists) return fs.linkSync(srcpath, dstpath) + mkdir.mkdirsSync(dir) + return fs.linkSync(srcpath, dstpath) +} -Object.defineProperty(exports, "__esModule", ({ value: true })); -const matcher_1 = __nccwpck_require__(61703); -class PartialMatcher extends matcher_1.default { - match(filepath) { - const parts = filepath.split('/'); - const levels = parts.length; - const patterns = this._storage.filter((info) => !info.complete || info.segments.length > levels); - for (const pattern of patterns) { - const section = pattern.sections[0]; - /** - * In this case, the pattern has a globstar and we must read all directories unconditionally, - * but only if the level has reached the end of the first group. - * - * fixtures/{a,b}/** - * ^ true/false ^ always true - */ - if (!pattern.complete && levels > section.length) { - return true; - } - const match = parts.every((part, index) => { - const segment = pattern.segments[index]; - if (segment.dynamic && segment.patternRe.test(part)) { - return true; - } - if (!segment.dynamic && segment.pattern === part) { - return true; - } - return false; - }); - if (match) { - return true; - } - } - return false; - } +module.exports = { + createLink: u(createLink), + createLinkSync } -exports["default"] = PartialMatcher; /***/ }), -/***/ 5420: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - +/***/ 3926: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -Object.defineProperty(exports, "__esModule", ({ value: true })); -const path = __nccwpck_require__(16928); -const deep_1 = __nccwpck_require__(26595); -const entry_1 = __nccwpck_require__(94193); -const error_1 = __nccwpck_require__(94591); -const entry_2 = __nccwpck_require__(33826); -class Provider { - constructor(_settings) { - this._settings = _settings; - this.errorFilter = new error_1.default(this._settings); - this.entryFilter = new entry_1.default(this._settings, this._getMicromatchOptions()); - this.deepFilter = new deep_1.default(this._settings, this._getMicromatchOptions()); - this.entryTransformer = new entry_2.default(this._settings); - } - _getRootDirectory(task) { - return path.resolve(this._settings.cwd, task.base); - } - _getReaderOptions(task) { - const basePath = task.base === '.' ? '' : task.base; - return { - basePath, - pathSegmentSeparator: '/', - concurrency: this._settings.concurrency, - deepFilter: this.deepFilter.getFilter(basePath, task.positive, task.negative), - entryFilter: this.entryFilter.getFilter(task.positive, task.negative), - errorFilter: this.errorFilter.getFilter(), - followSymbolicLinks: this._settings.followSymbolicLinks, - fs: this._settings.fs, - stats: this._settings.stats, - throwErrorOnBrokenSymbolicLink: this._settings.throwErrorOnBrokenSymbolicLink, - transform: this.entryTransformer.getTransformer() - }; - } - _getMicromatchOptions() { - return { - dot: this._settings.dot, - matchBase: this._settings.baseNameMatch, - nobrace: !this._settings.braceExpansion, - nocase: !this._settings.caseSensitiveMatch, - noext: !this._settings.extglob, - noglobstar: !this._settings.globstar, - posix: true, - strictSlashes: false - }; - } -} -exports["default"] = Provider; -/***/ }), +const path = __nccwpck_require__(6928) +const fs = __nccwpck_require__(8692) +const pathExists = (__nccwpck_require__(1216).pathExists) -/***/ 80613: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +/** + * Function that returns two types of paths, one relative to symlink, and one + * relative to the current working directory. Checks if path is absolute or + * relative. If the path is relative, this function checks if the path is + * relative to symlink or relative to current working directory. This is an + * initiative to find a smarter `srcpath` to supply when building symlinks. + * This allows you to determine which path to use out of one of three possible + * types of source paths. The first is an absolute path. This is detected by + * `path.isAbsolute()`. When an absolute path is provided, it is checked to + * see if it exists. If it does it's used, if not an error is returned + * (callback)/ thrown (sync). The other two options for `srcpath` are a + * relative url. By default Node's `fs.symlink` works by creating a symlink + * using `dstpath` and expects the `srcpath` to be relative to the newly + * created symlink. If you provide a `srcpath` that does not exist on the file + * system it results in a broken symlink. To minimize this, the function + * checks to see if the 'relative to symlink' source file exists, and if it + * does it will use it. If it does not, it checks if there's a file that + * exists that is relative to the current working directory, if does its used. + * This preserves the expectations of the original fs.symlink spec and adds + * the ability to pass in `relative to current working direcotry` paths. + */ +function symlinkPaths (srcpath, dstpath, callback) { + if (path.isAbsolute(srcpath)) { + return fs.lstat(srcpath, (err) => { + if (err) { + err.message = err.message.replace('lstat', 'ensureSymlink') + return callback(err) + } + return callback(null, { + 'toCwd': srcpath, + 'toDst': srcpath + }) + }) + } else { + const dstdir = path.dirname(dstpath) + const relativeToDst = path.join(dstdir, srcpath) + return pathExists(relativeToDst, (err, exists) => { + if (err) return callback(err) + if (exists) { + return callback(null, { + 'toCwd': relativeToDst, + 'toDst': srcpath + }) + } else { + return fs.lstat(srcpath, (err) => { + if (err) { + err.message = err.message.replace('lstat', 'ensureSymlink') + return callback(err) + } + return callback(null, { + 'toCwd': srcpath, + 'toDst': path.relative(dstdir, srcpath) + }) + }) + } + }) + } +} -Object.defineProperty(exports, "__esModule", ({ value: true })); -const stream_1 = __nccwpck_require__(2203); -const stream_2 = __nccwpck_require__(89491); -const provider_1 = __nccwpck_require__(5420); -class ProviderStream extends provider_1.default { - constructor() { - super(...arguments); - this._reader = new stream_2.default(this._settings); - } - read(task) { - const root = this._getRootDirectory(task); - const options = this._getReaderOptions(task); - const source = this.api(root, task, options); - const destination = new stream_1.Readable({ objectMode: true, read: () => { } }); - source - .once('error', (error) => destination.emit('error', error)) - .on('data', (entry) => destination.emit('data', options.transform(entry))) - .once('end', () => destination.emit('end')); - destination - .once('close', () => source.destroy()); - return destination; - } - api(root, task, options) { - if (task.dynamic) { - return this._reader.dynamic(root, options); - } - return this._reader.static(task.patterns, options); +function symlinkPathsSync (srcpath, dstpath) { + let exists + if (path.isAbsolute(srcpath)) { + exists = fs.existsSync(srcpath) + if (!exists) throw new Error('absolute srcpath does not exist') + return { + 'toCwd': srcpath, + 'toDst': srcpath + } + } else { + const dstdir = path.dirname(dstpath) + const relativeToDst = path.join(dstdir, srcpath) + exists = fs.existsSync(relativeToDst) + if (exists) { + return { + 'toCwd': relativeToDst, + 'toDst': srcpath + } + } else { + exists = fs.existsSync(srcpath) + if (!exists) throw new Error('relative srcpath does not exist') + return { + 'toCwd': srcpath, + 'toDst': path.relative(dstdir, srcpath) + } } + } +} + +module.exports = { + symlinkPaths, + symlinkPathsSync } -exports["default"] = ProviderStream; /***/ }), -/***/ 81850: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +/***/ 2416: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -Object.defineProperty(exports, "__esModule", ({ value: true })); -const sync_1 = __nccwpck_require__(95908); -const provider_1 = __nccwpck_require__(5420); -class ProviderSync extends provider_1.default { - constructor() { - super(...arguments); - this._reader = new sync_1.default(this._settings); - } - read(task) { - const root = this._getRootDirectory(task); - const options = this._getReaderOptions(task); - const entries = this.api(root, task, options); - return entries.map(options.transform); - } - api(root, task, options) { - if (task.dynamic) { - return this._reader.dynamic(root, options); - } - return this._reader.static(task.patterns, options); - } -} -exports["default"] = ProviderSync; +const fs = __nccwpck_require__(8692) -/***/ }), +function symlinkType (srcpath, type, callback) { + callback = (typeof type === 'function') ? type : callback + type = (typeof type === 'function') ? false : type + if (type) return callback(null, type) + fs.lstat(srcpath, (err, stats) => { + if (err) return callback(null, 'file') + type = (stats && stats.isDirectory()) ? 'dir' : 'file' + callback(null, type) + }) +} -/***/ 33826: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +function symlinkTypeSync (srcpath, type) { + let stats + if (type) return type + try { + stats = fs.lstatSync(srcpath) + } catch (e) { + return 'file' + } + return (stats && stats.isDirectory()) ? 'dir' : 'file' +} -Object.defineProperty(exports, "__esModule", ({ value: true })); -const utils = __nccwpck_require__(1062); -class EntryTransformer { - constructor(_settings) { - this._settings = _settings; - } - getTransformer() { - return (entry) => this._transform(entry); - } - _transform(entry) { - let filepath = entry.path; - if (this._settings.absolute) { - filepath = utils.path.makeAbsolute(this._settings.cwd, filepath); - filepath = utils.path.unixify(filepath); - } - if (this._settings.markDirectories && entry.dirent.isDirectory()) { - filepath += '/'; - } - if (!this._settings.objectMode) { - return filepath; - } - return Object.assign(Object.assign({}, entry), { path: filepath }); - } +module.exports = { + symlinkType, + symlinkTypeSync } -exports["default"] = EntryTransformer; /***/ }), -/***/ 79439: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +/***/ 5059: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -Object.defineProperty(exports, "__esModule", ({ value: true })); -const fsWalk = __nccwpck_require__(83989); -const reader_1 = __nccwpck_require__(79692); -const stream_1 = __nccwpck_require__(89491); -class ReaderAsync extends reader_1.default { - constructor() { - super(...arguments); - this._walkAsync = fsWalk.walk; - this._readerStream = new stream_1.default(this._settings); - } - dynamic(root, options) { - return new Promise((resolve, reject) => { - this._walkAsync(root, options, (error, entries) => { - if (error === null) { - resolve(entries); - } - else { - reject(error); - } - }); - }); - } - async static(patterns, options) { - const entries = []; - const stream = this._readerStream.static(patterns, options); - // After #235, replace it with an asynchronous iterator. - return new Promise((resolve, reject) => { - stream.once('error', reject); - stream.on('data', (entry) => entries.push(entry)); - stream.once('end', () => resolve(entries)); - }); - } -} -exports["default"] = ReaderAsync; +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const path = __nccwpck_require__(6928) +const fs = __nccwpck_require__(8692) +const _mkdirs = __nccwpck_require__(4846) +const mkdirs = _mkdirs.mkdirs +const mkdirsSync = _mkdirs.mkdirsSync -/***/ }), +const _symlinkPaths = __nccwpck_require__(3926) +const symlinkPaths = _symlinkPaths.symlinkPaths +const symlinkPathsSync = _symlinkPaths.symlinkPathsSync -/***/ 79692: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +const _symlinkType = __nccwpck_require__(2416) +const symlinkType = _symlinkType.symlinkType +const symlinkTypeSync = _symlinkType.symlinkTypeSync +const pathExists = (__nccwpck_require__(1216).pathExists) -Object.defineProperty(exports, "__esModule", ({ value: true })); -const path = __nccwpck_require__(16928); -const fsStat = __nccwpck_require__(80794); -const utils = __nccwpck_require__(1062); -class Reader { - constructor(_settings) { - this._settings = _settings; - this._fsStatSettings = new fsStat.Settings({ - followSymbolicLink: this._settings.followSymbolicLinks, - fs: this._settings.fs, - throwErrorOnBrokenSymbolicLink: this._settings.followSymbolicLinks - }); - } - _getFullEntryPath(filepath) { - return path.resolve(this._settings.cwd, filepath); - } - _makeEntry(stats, pattern) { - const entry = { - name: pattern, - path: pattern, - dirent: utils.fs.createDirentFromStats(pattern, stats) - }; - if (this._settings.stats) { - entry.stats = stats; - } - return entry; - } - _isFatalError(error) { - return !utils.errno.isEnoentCodeError(error) && !this._settings.suppressErrors; - } +function createSymlink (srcpath, dstpath, type, callback) { + callback = (typeof type === 'function') ? type : callback + type = (typeof type === 'function') ? false : type + + pathExists(dstpath, (err, destinationExists) => { + if (err) return callback(err) + if (destinationExists) return callback(null) + symlinkPaths(srcpath, dstpath, (err, relative) => { + if (err) return callback(err) + srcpath = relative.toDst + symlinkType(relative.toCwd, type, (err, type) => { + if (err) return callback(err) + const dir = path.dirname(dstpath) + pathExists(dir, (err, dirExists) => { + if (err) return callback(err) + if (dirExists) return fs.symlink(srcpath, dstpath, type, callback) + mkdirs(dir, err => { + if (err) return callback(err) + fs.symlink(srcpath, dstpath, type, callback) + }) + }) + }) + }) + }) +} + +function createSymlinkSync (srcpath, dstpath, type) { + const destinationExists = fs.existsSync(dstpath) + if (destinationExists) return undefined + + const relative = symlinkPathsSync(srcpath, dstpath) + srcpath = relative.toDst + type = symlinkTypeSync(relative.toCwd, type) + const dir = path.dirname(dstpath) + const exists = fs.existsSync(dir) + if (exists) return fs.symlinkSync(srcpath, dstpath, type) + mkdirsSync(dir) + return fs.symlinkSync(srcpath, dstpath, type) +} + +module.exports = { + createSymlink: u(createSymlink), + createSymlinkSync } -exports["default"] = Reader; /***/ }), -/***/ 89491: +/***/ 9161: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -Object.defineProperty(exports, "__esModule", ({ value: true })); -const stream_1 = __nccwpck_require__(2203); -const fsStat = __nccwpck_require__(80794); -const fsWalk = __nccwpck_require__(83989); -const reader_1 = __nccwpck_require__(79692); -class ReaderStream extends reader_1.default { - constructor() { - super(...arguments); - this._walkStream = fsWalk.walkStream; - this._stat = fsStat.stat; - } - dynamic(root, options) { - return this._walkStream(root, options); - } - static(patterns, options) { - const filepaths = patterns.map(this._getFullEntryPath, this); - const stream = new stream_1.PassThrough({ objectMode: true }); - stream._write = (index, _enc, done) => { - return this._getEntry(filepaths[index], patterns[index], options) - .then((entry) => { - if (entry !== null && options.entryFilter(entry)) { - stream.push(entry); - } - if (index === filepaths.length - 1) { - stream.end(); - } - done(); - }) - .catch(done); - }; - for (let i = 0; i < filepaths.length; i++) { - stream.write(i); - } - return stream; - } - _getEntry(filepath, pattern, options) { - return this._getStat(filepath) - .then((stats) => this._makeEntry(stats, pattern)) - .catch((error) => { - if (options.errorFilter(error)) { - return null; - } - throw error; - }); - } - _getStat(filepath) { - return new Promise((resolve, reject) => { - this._stat(filepath, this._fsStatSettings, (error, stats) => { - return error === null ? resolve(stats) : reject(error); - }); - }); - } -} -exports["default"] = ReaderStream; +// This is adapted from https://github.com/normalize/mz +// Copyright (c) 2014-2016 Jonathan Ong me@jongleberry.com and Contributors +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const fs = __nccwpck_require__(8692) + +const api = [ + 'access', + 'appendFile', + 'chmod', + 'chown', + 'close', + 'copyFile', + 'fchmod', + 'fchown', + 'fdatasync', + 'fstat', + 'fsync', + 'ftruncate', + 'futimes', + 'lchown', + 'lchmod', + 'link', + 'lstat', + 'mkdir', + 'mkdtemp', + 'open', + 'readFile', + 'readdir', + 'readlink', + 'realpath', + 'rename', + 'rmdir', + 'stat', + 'symlink', + 'truncate', + 'unlink', + 'utimes', + 'writeFile' +].filter(key => { + // Some commands are not available on some systems. Ex: + // fs.copyFile was added in Node.js v8.5.0 + // fs.mkdtemp was added in Node.js v5.10.0 + // fs.lchown is not available on at least some Linux + return typeof fs[key] === 'function' +}) +// Export all keys: +Object.keys(fs).forEach(key => { + if (key === 'promises') { + // fs.promises is a getter property that triggers ExperimentalWarning + // Don't re-export it here, the getter is defined in "lib/index.js" + return + } + exports[key] = fs[key] +}) -/***/ }), +// Universalify async methods: +api.forEach(method => { + exports[method] = u(fs[method]) +}) -/***/ 95908: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +// We differ from mz/fs in that we still ship the old, broken, fs.exists() +// since we are a drop-in replacement for the native module +exports.exists = function (filename, callback) { + if (typeof callback === 'function') { + return fs.exists(filename, callback) + } + return new Promise(resolve => { + return fs.exists(filename, resolve) + }) +} +// fs.read() & fs.write need special treatment due to multiple callback args -Object.defineProperty(exports, "__esModule", ({ value: true })); -const fsStat = __nccwpck_require__(80794); -const fsWalk = __nccwpck_require__(83989); -const reader_1 = __nccwpck_require__(79692); -class ReaderSync extends reader_1.default { - constructor() { - super(...arguments); - this._walkSync = fsWalk.walkSync; - this._statSync = fsStat.statSync; - } - dynamic(root, options) { - return this._walkSync(root, options); - } - static(patterns, options) { - const entries = []; - for (const pattern of patterns) { - const filepath = this._getFullEntryPath(pattern); - const entry = this._getEntry(filepath, pattern, options); - if (entry === null || !options.entryFilter(entry)) { - continue; - } - entries.push(entry); - } - return entries; - } - _getEntry(filepath, pattern, options) { - try { - const stats = this._getStat(filepath); - return this._makeEntry(stats, pattern); - } - catch (error) { - if (options.errorFilter(error)) { - return null; - } - throw error; - } - } - _getStat(filepath) { - return this._statSync(filepath, this._fsStatSettings); - } +exports.read = function (fd, buffer, offset, length, position, callback) { + if (typeof callback === 'function') { + return fs.read(fd, buffer, offset, length, position, callback) + } + return new Promise((resolve, reject) => { + fs.read(fd, buffer, offset, length, position, (err, bytesRead, buffer) => { + if (err) return reject(err) + resolve({ bytesRead, buffer }) + }) + }) +} + +// Function signature can be +// fs.write(fd, buffer[, offset[, length[, position]]], callback) +// OR +// fs.write(fd, string[, position[, encoding]], callback) +// We need to handle both cases, so we use ...args +exports.write = function (fd, buffer, ...args) { + if (typeof args[args.length - 1] === 'function') { + return fs.write(fd, buffer, ...args) + } + + return new Promise((resolve, reject) => { + fs.write(fd, buffer, ...args, (err, bytesWritten, buffer) => { + if (err) return reject(err) + resolve({ bytesWritten, buffer }) + }) + }) } -exports["default"] = ReaderSync; /***/ }), -/***/ 34763: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +/***/ 925: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.DEFAULT_FILE_SYSTEM_ADAPTER = void 0; -const fs = __nccwpck_require__(79896); -const os = __nccwpck_require__(70857); -/** - * The `os.cpus` method can return zero. We expect the number of cores to be greater than zero. - * https://github.com/nodejs/node/blob/7faeddf23a98c53896f8b574a6e66589e8fb1eb8/lib/os.js#L106-L107 - */ -const CPU_COUNT = Math.max(os.cpus().length, 1); -exports.DEFAULT_FILE_SYSTEM_ADAPTER = { - lstat: fs.lstat, - lstatSync: fs.lstatSync, - stat: fs.stat, - statSync: fs.statSync, - readdir: fs.readdir, - readdirSync: fs.readdirSync -}; -class Settings { - constructor(_options = {}) { - this._options = _options; - this.absolute = this._getValue(this._options.absolute, false); - this.baseNameMatch = this._getValue(this._options.baseNameMatch, false); - this.braceExpansion = this._getValue(this._options.braceExpansion, true); - this.caseSensitiveMatch = this._getValue(this._options.caseSensitiveMatch, true); - this.concurrency = this._getValue(this._options.concurrency, CPU_COUNT); - this.cwd = this._getValue(this._options.cwd, process.cwd()); - this.deep = this._getValue(this._options.deep, Infinity); - this.dot = this._getValue(this._options.dot, false); - this.extglob = this._getValue(this._options.extglob, true); - this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, true); - this.fs = this._getFileSystemMethods(this._options.fs); - this.globstar = this._getValue(this._options.globstar, true); - this.ignore = this._getValue(this._options.ignore, []); - this.markDirectories = this._getValue(this._options.markDirectories, false); - this.objectMode = this._getValue(this._options.objectMode, false); - this.onlyDirectories = this._getValue(this._options.onlyDirectories, false); - this.onlyFiles = this._getValue(this._options.onlyFiles, true); - this.stats = this._getValue(this._options.stats, false); - this.suppressErrors = this._getValue(this._options.suppressErrors, false); - this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, false); - this.unique = this._getValue(this._options.unique, true); - if (this.onlyDirectories) { - this.onlyFiles = false; - } - if (this.stats) { - this.objectMode = true; - } - // Remove the cast to the array in the next major (#404). - this.ignore = [].concat(this.ignore); - } - _getValue(option, value) { - return option === undefined ? value : option; - } - _getFileSystemMethods(methods = {}) { - return Object.assign(Object.assign({}, exports.DEFAULT_FILE_SYSTEM_ADAPTER), methods); - } + +module.exports = Object.assign( + {}, + // Export promiseified graceful-fs: + __nccwpck_require__(9161), + // Export extra methods: + __nccwpck_require__(1617), + __nccwpck_require__(4735), + __nccwpck_require__(7559), + __nccwpck_require__(168), + __nccwpck_require__(4280), + __nccwpck_require__(4846), + __nccwpck_require__(5073), + __nccwpck_require__(6031), + __nccwpck_require__(9867), + __nccwpck_require__(1216), + __nccwpck_require__(550) +) + +// Export fs.promises as a getter property so that we don't trigger +// ExperimentalWarning before fs.promises is actually accessed. +const fs = __nccwpck_require__(9896) +if (Object.getOwnPropertyDescriptor(fs, 'promises')) { + Object.defineProperty(module.exports, "promises", ({ + get () { return fs.promises } + })) } -exports["default"] = Settings; /***/ }), -/***/ 14811: -/***/ ((__unused_webpack_module, exports) => { +/***/ 4280: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.splitWhen = exports.flatten = void 0; -function flatten(items) { - return items.reduce((collection, item) => [].concat(collection, item), []); -} -exports.flatten = flatten; -function splitWhen(items, predicate) { - const result = [[]]; - let groupIndex = 0; - for (const item of items) { - if (predicate(item)) { - groupIndex++; - result[groupIndex] = []; - } - else { - result[groupIndex].push(item); - } - } - return result; -} -exports.splitWhen = splitWhen; + +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const jsonFile = __nccwpck_require__(14) + +jsonFile.outputJson = u(__nccwpck_require__(706)) +jsonFile.outputJsonSync = __nccwpck_require__(3732) +// aliases +jsonFile.outputJSON = jsonFile.outputJson +jsonFile.outputJSONSync = jsonFile.outputJsonSync +jsonFile.writeJSON = jsonFile.writeJson +jsonFile.writeJSONSync = jsonFile.writeJsonSync +jsonFile.readJSON = jsonFile.readJson +jsonFile.readJSONSync = jsonFile.readJsonSync + +module.exports = jsonFile /***/ }), -/***/ 49738: -/***/ ((__unused_webpack_module, exports) => { +/***/ 14: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.isEnoentCodeError = void 0; -function isEnoentCodeError(error) { - return error.code === 'ENOENT'; + +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const jsonFile = __nccwpck_require__(6155) + +module.exports = { + // jsonfile exports + readJson: u(jsonFile.readFile), + readJsonSync: jsonFile.readFileSync, + writeJson: u(jsonFile.writeFile), + writeJsonSync: jsonFile.writeFileSync } -exports.isEnoentCodeError = isEnoentCodeError; /***/ }), -/***/ 70271: -/***/ ((__unused_webpack_module, exports) => { +/***/ 3732: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.createDirentFromStats = void 0; -class DirentFromStats { - constructor(name, stats) { - this.name = name; - this.isBlockDevice = stats.isBlockDevice.bind(stats); - this.isCharacterDevice = stats.isCharacterDevice.bind(stats); - this.isDirectory = stats.isDirectory.bind(stats); - this.isFIFO = stats.isFIFO.bind(stats); - this.isFile = stats.isFile.bind(stats); - this.isSocket = stats.isSocket.bind(stats); - this.isSymbolicLink = stats.isSymbolicLink.bind(stats); - } -} -function createDirentFromStats(name, stats) { - return new DirentFromStats(name, stats); + +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) +const mkdir = __nccwpck_require__(4846) +const jsonFile = __nccwpck_require__(14) + +function outputJsonSync (file, data, options) { + const dir = path.dirname(file) + + if (!fs.existsSync(dir)) { + mkdir.mkdirsSync(dir) + } + + jsonFile.writeJsonSync(file, data, options) } -exports.createDirentFromStats = createDirentFromStats; + +module.exports = outputJsonSync /***/ }), -/***/ 1062: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +/***/ 706: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.string = exports.stream = exports.pattern = exports.path = exports.fs = exports.errno = exports.array = void 0; -const array = __nccwpck_require__(14811); -exports.array = array; -const errno = __nccwpck_require__(49738); -exports.errno = errno; -const fs = __nccwpck_require__(70271); -exports.fs = fs; -const path = __nccwpck_require__(9519); -exports.path = path; -const pattern = __nccwpck_require__(37044); -exports.pattern = pattern; -const stream = __nccwpck_require__(13732); -exports.stream = stream; -const string = __nccwpck_require__(55589); -exports.string = string; +const path = __nccwpck_require__(6928) +const mkdir = __nccwpck_require__(4846) +const pathExists = (__nccwpck_require__(1216).pathExists) +const jsonFile = __nccwpck_require__(14) -/***/ }), +function outputJson (file, data, options, callback) { + if (typeof options === 'function') { + callback = options + options = {} + } -/***/ 9519: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { + const dir = path.dirname(file) + pathExists(dir, (err, itDoes) => { + if (err) return callback(err) + if (itDoes) return jsonFile.writeJson(file, data, options, callback) -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.convertPosixPathToPattern = exports.convertWindowsPathToPattern = exports.convertPathToPattern = exports.escapePosixPath = exports.escapeWindowsPath = exports.escape = exports.removeLeadingDotSegment = exports.makeAbsolute = exports.unixify = void 0; -const os = __nccwpck_require__(70857); -const path = __nccwpck_require__(16928); -const IS_WINDOWS_PLATFORM = os.platform() === 'win32'; -const LEADING_DOT_SEGMENT_CHARACTERS_COUNT = 2; // ./ or .\\ -/** - * All non-escaped special characters. - * Posix: ()*?[]{|}, !+@ before (, ! at the beginning, \\ before non-special characters. - * Windows: (){}[], !+@ before (, ! at the beginning. - */ -const POSIX_UNESCAPED_GLOB_SYMBOLS_RE = /(\\?)([()*?[\]{|}]|^!|[!+@](?=\()|\\(?![!()*+?@[\]{|}]))/g; -const WINDOWS_UNESCAPED_GLOB_SYMBOLS_RE = /(\\?)([()[\]{}]|^!|[!+@](?=\())/g; -/** - * The device path (\\.\ or \\?\). - * https://learn.microsoft.com/en-us/dotnet/standard/io/file-path-formats#dos-device-paths - */ -const DOS_DEVICE_PATH_RE = /^\\\\([.?])/; -/** - * All backslashes except those escaping special characters. - * Windows: !()+@{} - * https://learn.microsoft.com/en-us/windows/win32/fileio/naming-a-file#naming-conventions - */ -const WINDOWS_BACKSLASHES_RE = /\\(?![!()+@[\]{}])/g; -/** - * Designed to work only with simple paths: `dir\\file`. - */ -function unixify(filepath) { - return filepath.replace(/\\/g, '/'); -} -exports.unixify = unixify; -function makeAbsolute(cwd, filepath) { - return path.resolve(cwd, filepath); -} -exports.makeAbsolute = makeAbsolute; -function removeLeadingDotSegment(entry) { - // We do not use `startsWith` because this is 10x slower than current implementation for some cases. - // eslint-disable-next-line @typescript-eslint/prefer-string-starts-ends-with - if (entry.charAt(0) === '.') { - const secondCharactery = entry.charAt(1); - if (secondCharactery === '/' || secondCharactery === '\\') { - return entry.slice(LEADING_DOT_SEGMENT_CHARACTERS_COUNT); - } - } - return entry; -} -exports.removeLeadingDotSegment = removeLeadingDotSegment; -exports.escape = IS_WINDOWS_PLATFORM ? escapeWindowsPath : escapePosixPath; -function escapeWindowsPath(pattern) { - return pattern.replace(WINDOWS_UNESCAPED_GLOB_SYMBOLS_RE, '\\$2'); -} -exports.escapeWindowsPath = escapeWindowsPath; -function escapePosixPath(pattern) { - return pattern.replace(POSIX_UNESCAPED_GLOB_SYMBOLS_RE, '\\$2'); -} -exports.escapePosixPath = escapePosixPath; -exports.convertPathToPattern = IS_WINDOWS_PLATFORM ? convertWindowsPathToPattern : convertPosixPathToPattern; -function convertWindowsPathToPattern(filepath) { - return escapeWindowsPath(filepath) - .replace(DOS_DEVICE_PATH_RE, '//$1') - .replace(WINDOWS_BACKSLASHES_RE, '/'); -} -exports.convertWindowsPathToPattern = convertWindowsPathToPattern; -function convertPosixPathToPattern(filepath) { - return escapePosixPath(filepath); + mkdir.mkdirs(dir, err => { + if (err) return callback(err) + jsonFile.writeJson(file, data, options, callback) + }) + }) } -exports.convertPosixPathToPattern = convertPosixPathToPattern; + +module.exports = outputJson /***/ }), -/***/ 37044: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +/***/ 4846: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.isAbsolute = exports.partitionAbsoluteAndRelative = exports.removeDuplicateSlashes = exports.matchAny = exports.convertPatternsToRe = exports.makeRe = exports.getPatternParts = exports.expandBraceExpansion = exports.expandPatternsWithBraceExpansion = exports.isAffectDepthOfReadingPattern = exports.endsWithSlashGlobStar = exports.hasGlobStar = exports.getBaseDirectory = exports.isPatternRelatedToParentDirectory = exports.getPatternsOutsideCurrentDirectory = exports.getPatternsInsideCurrentDirectory = exports.getPositivePatterns = exports.getNegativePatterns = exports.isPositivePattern = exports.isNegativePattern = exports.convertToNegativePattern = exports.convertToPositivePattern = exports.isDynamicPattern = exports.isStaticPattern = void 0; -const path = __nccwpck_require__(16928); -const globParent = __nccwpck_require__(62437); -const micromatch = __nccwpck_require__(77805); -const GLOBSTAR = '**'; -const ESCAPE_SYMBOL = '\\'; -const COMMON_GLOB_SYMBOLS_RE = /[*?]|^!/; -const REGEX_CHARACTER_CLASS_SYMBOLS_RE = /\[[^[]*]/; -const REGEX_GROUP_SYMBOLS_RE = /(?:^|[^!*+?@])\([^(]*\|[^|]*\)/; -const GLOB_EXTENSION_SYMBOLS_RE = /[!*+?@]\([^(]*\)/; -const BRACE_EXPANSION_SEPARATORS_RE = /,|\.\./; -/** - * Matches a sequence of two or more consecutive slashes, excluding the first two slashes at the beginning of the string. - * The latter is due to the presence of the device path at the beginning of the UNC path. - */ -const DOUBLE_SLASH_RE = /(?!^)\/{2,}/g; -function isStaticPattern(pattern, options = {}) { - return !isDynamicPattern(pattern, options); -} -exports.isStaticPattern = isStaticPattern; -function isDynamicPattern(pattern, options = {}) { - /** - * A special case with an empty string is necessary for matching patterns that start with a forward slash. - * An empty string cannot be a dynamic pattern. - * For example, the pattern `/lib/*` will be spread into parts: '', 'lib', '*'. - */ - if (pattern === '') { - return false; - } - /** - * When the `caseSensitiveMatch` option is disabled, all patterns must be marked as dynamic, because we cannot check - * filepath directly (without read directory). - */ - if (options.caseSensitiveMatch === false || pattern.includes(ESCAPE_SYMBOL)) { - return true; - } - if (COMMON_GLOB_SYMBOLS_RE.test(pattern) || REGEX_CHARACTER_CLASS_SYMBOLS_RE.test(pattern) || REGEX_GROUP_SYMBOLS_RE.test(pattern)) { - return true; - } - if (options.extglob !== false && GLOB_EXTENSION_SYMBOLS_RE.test(pattern)) { - return true; - } - if (options.braceExpansion !== false && hasBraceExpansion(pattern)) { - return true; - } - return false; -} -exports.isDynamicPattern = isDynamicPattern; -function hasBraceExpansion(pattern) { - const openingBraceIndex = pattern.indexOf('{'); - if (openingBraceIndex === -1) { - return false; - } - const closingBraceIndex = pattern.indexOf('}', openingBraceIndex + 1); - if (closingBraceIndex === -1) { - return false; - } - const braceContent = pattern.slice(openingBraceIndex, closingBraceIndex); - return BRACE_EXPANSION_SEPARATORS_RE.test(braceContent); -} -function convertToPositivePattern(pattern) { - return isNegativePattern(pattern) ? pattern.slice(1) : pattern; -} -exports.convertToPositivePattern = convertToPositivePattern; -function convertToNegativePattern(pattern) { - return '!' + pattern; -} -exports.convertToNegativePattern = convertToNegativePattern; -function isNegativePattern(pattern) { - return pattern.startsWith('!') && pattern[1] !== '('; -} -exports.isNegativePattern = isNegativePattern; -function isPositivePattern(pattern) { - return !isNegativePattern(pattern); -} -exports.isPositivePattern = isPositivePattern; -function getNegativePatterns(patterns) { - return patterns.filter(isNegativePattern); -} -exports.getNegativePatterns = getNegativePatterns; -function getPositivePatterns(patterns) { - return patterns.filter(isPositivePattern); -} -exports.getPositivePatterns = getPositivePatterns; -/** - * Returns patterns that can be applied inside the current directory. - * - * @example - * // ['./*', '*', 'a/*'] - * getPatternsInsideCurrentDirectory(['./*', '*', 'a/*', '../*', './../*']) - */ -function getPatternsInsideCurrentDirectory(patterns) { - return patterns.filter((pattern) => !isPatternRelatedToParentDirectory(pattern)); -} -exports.getPatternsInsideCurrentDirectory = getPatternsInsideCurrentDirectory; -/** - * Returns patterns to be expanded relative to (outside) the current directory. - * - * @example - * // ['../*', './../*'] - * getPatternsInsideCurrentDirectory(['./*', '*', 'a/*', '../*', './../*']) - */ -function getPatternsOutsideCurrentDirectory(patterns) { - return patterns.filter(isPatternRelatedToParentDirectory); -} -exports.getPatternsOutsideCurrentDirectory = getPatternsOutsideCurrentDirectory; -function isPatternRelatedToParentDirectory(pattern) { - return pattern.startsWith('..') || pattern.startsWith('./..'); -} -exports.isPatternRelatedToParentDirectory = isPatternRelatedToParentDirectory; -function getBaseDirectory(pattern) { - return globParent(pattern, { flipBackslashes: false }); -} -exports.getBaseDirectory = getBaseDirectory; -function hasGlobStar(pattern) { - return pattern.includes(GLOBSTAR); -} -exports.hasGlobStar = hasGlobStar; -function endsWithSlashGlobStar(pattern) { - return pattern.endsWith('/' + GLOBSTAR); -} -exports.endsWithSlashGlobStar = endsWithSlashGlobStar; -function isAffectDepthOfReadingPattern(pattern) { - const basename = path.basename(pattern); - return endsWithSlashGlobStar(pattern) || isStaticPattern(basename); -} -exports.isAffectDepthOfReadingPattern = isAffectDepthOfReadingPattern; -function expandPatternsWithBraceExpansion(patterns) { - return patterns.reduce((collection, pattern) => { - return collection.concat(expandBraceExpansion(pattern)); - }, []); -} -exports.expandPatternsWithBraceExpansion = expandPatternsWithBraceExpansion; -function expandBraceExpansion(pattern) { - const patterns = micromatch.braces(pattern, { expand: true, nodupes: true, keepEscaping: true }); - /** - * Sort the patterns by length so that the same depth patterns are processed side by side. - * `a/{b,}/{c,}/*` – `['a///*', 'a/b//*', 'a//c/*', 'a/b/c/*']` - */ - patterns.sort((a, b) => a.length - b.length); - /** - * Micromatch can return an empty string in the case of patterns like `{a,}`. - */ - return patterns.filter((pattern) => pattern !== ''); -} -exports.expandBraceExpansion = expandBraceExpansion; -function getPatternParts(pattern, options) { - let { parts } = micromatch.scan(pattern, Object.assign(Object.assign({}, options), { parts: true })); - /** - * The scan method returns an empty array in some cases. - * See micromatch/picomatch#58 for more details. - */ - if (parts.length === 0) { - parts = [pattern]; - } - /** - * The scan method does not return an empty part for the pattern with a forward slash. - * This is another part of micromatch/picomatch#58. - */ - if (parts[0].startsWith('/')) { - parts[0] = parts[0].slice(1); - parts.unshift(''); - } - return parts; -} -exports.getPatternParts = getPatternParts; -function makeRe(pattern, options) { - return micromatch.makeRe(pattern, options); -} -exports.makeRe = makeRe; -function convertPatternsToRe(patterns, options) { - return patterns.map((pattern) => makeRe(pattern, options)); -} -exports.convertPatternsToRe = convertPatternsToRe; -function matchAny(entry, patternsRe) { - return patternsRe.some((patternRe) => patternRe.test(entry)); -} -exports.matchAny = matchAny; -/** - * This package only works with forward slashes as a path separator. - * Because of this, we cannot use the standard `path.normalize` method, because on Windows platform it will use of backslashes. - */ -function removeDuplicateSlashes(pattern) { - return pattern.replace(DOUBLE_SLASH_RE, '/'); -} -exports.removeDuplicateSlashes = removeDuplicateSlashes; -function partitionAbsoluteAndRelative(patterns) { - const absolute = []; - const relative = []; - for (const pattern of patterns) { - if (isAbsolute(pattern)) { - absolute.push(pattern); - } - else { - relative.push(pattern); - } - } - return [absolute, relative]; -} -exports.partitionAbsoluteAndRelative = partitionAbsoluteAndRelative; -function isAbsolute(pattern) { - return path.isAbsolute(pattern); +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const mkdirs = u(__nccwpck_require__(4004)) +const mkdirsSync = __nccwpck_require__(6358) + +module.exports = { + mkdirs, + mkdirsSync, + // alias + mkdirp: mkdirs, + mkdirpSync: mkdirsSync, + ensureDir: mkdirs, + ensureDirSync: mkdirsSync } -exports.isAbsolute = isAbsolute; /***/ }), -/***/ 13732: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +/***/ 6358: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.merge = void 0; -const merge2 = __nccwpck_require__(26606); -function merge(streams) { - const mergedStream = merge2(streams); - streams.forEach((stream) => { - stream.once('error', (error) => mergedStream.emit('error', error)); - }); - mergedStream.once('close', () => propagateCloseEventToSources(streams)); - mergedStream.once('end', () => propagateCloseEventToSources(streams)); - return mergedStream; -} -exports.merge = merge; -function propagateCloseEventToSources(streams) { - streams.forEach((stream) => stream.emit('close')); -} +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) +const invalidWin32Path = (__nccwpck_require__(7533).invalidWin32Path) -/***/ }), +const o777 = parseInt('0777', 8) -/***/ 55589: -/***/ ((__unused_webpack_module, exports) => { +function mkdirsSync (p, opts, made) { + if (!opts || typeof opts !== 'object') { + opts = { mode: opts } + } + let mode = opts.mode + const xfs = opts.fs || fs -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.isEmpty = exports.isString = void 0; -function isString(input) { - return typeof input === 'string'; -} -exports.isString = isString; -function isEmpty(input) { - return input === ''; + if (process.platform === 'win32' && invalidWin32Path(p)) { + const errInval = new Error(p + ' contains invalid WIN32 path characters.') + errInval.code = 'EINVAL' + throw errInval + } + + if (mode === undefined) { + mode = o777 & (~process.umask()) + } + if (!made) made = null + + p = path.resolve(p) + + try { + xfs.mkdirSync(p, mode) + made = made || p + } catch (err0) { + if (err0.code === 'ENOENT') { + if (path.dirname(p) === p) throw err0 + made = mkdirsSync(path.dirname(p), opts, made) + mkdirsSync(p, opts, made) + } else { + // In the case of any other error, just see if there's a dir there + // already. If so, then hooray! If not, then something is borked. + let stat + try { + stat = xfs.statSync(p) + } catch (err1) { + throw err0 + } + if (!stat.isDirectory()) throw err0 + } + } + + return made } -exports.isEmpty = isEmpty; + +module.exports = mkdirsSync /***/ }), -/***/ 64898: +/***/ 4004: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -/* eslint-disable no-var */ +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) +const invalidWin32Path = (__nccwpck_require__(7533).invalidWin32Path) -var reusify = __nccwpck_require__(14088) +const o777 = parseInt('0777', 8) -function fastqueue (context, worker, _concurrency) { - if (typeof context === 'function') { - _concurrency = worker - worker = context - context = null +function mkdirs (p, opts, callback, made) { + if (typeof opts === 'function') { + callback = opts + opts = {} + } else if (!opts || typeof opts !== 'object') { + opts = { mode: opts } } - if (!(_concurrency >= 1)) { - throw new Error('fastqueue concurrency must be equal to or greater than 1') + if (process.platform === 'win32' && invalidWin32Path(p)) { + const errInval = new Error(p + ' contains invalid WIN32 path characters.') + errInval.code = 'EINVAL' + return callback(errInval) } - var cache = reusify(Task) - var queueHead = null - var queueTail = null - var _running = 0 - var errorHandler = null + let mode = opts.mode + const xfs = opts.fs || fs - var self = { - push: push, - drain: noop, - saturated: noop, - pause: pause, - paused: false, + if (mode === undefined) { + mode = o777 & (~process.umask()) + } + if (!made) made = null - get concurrency () { - return _concurrency - }, - set concurrency (value) { - if (!(value >= 1)) { - throw new Error('fastqueue concurrency must be equal to or greater than 1') - } - _concurrency = value + callback = callback || function () {} + p = path.resolve(p) - if (self.paused) return - for (; queueHead && _running < _concurrency;) { - _running++ - release() - } - }, + xfs.mkdir(p, mode, er => { + if (!er) { + made = made || p + return callback(null, made) + } + switch (er.code) { + case 'ENOENT': + if (path.dirname(p) === p) return callback(er) + mkdirs(path.dirname(p), opts, (er, made) => { + if (er) callback(er, made) + else mkdirs(p, opts, callback, made) + }) + break - running: running, - resume: resume, - idle: idle, - length: length, - getQueue: getQueue, - unshift: unshift, - empty: noop, - kill: kill, - killAndDrain: killAndDrain, - error: error - } + // In the case of any other error, just see if there's a dir + // there already. If so, then hooray! If not, then something + // is borked. + default: + xfs.stat(p, (er2, stat) => { + // if the stat fails, then that's super weird. + // let the original error be the failure reason. + if (er2 || !stat.isDirectory()) callback(er, made) + else callback(null, made) + }) + break + } + }) +} + +module.exports = mkdirs + + +/***/ }), + +/***/ 7533: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + + + +const path = __nccwpck_require__(6928) + +// get drive on windows +function getRootPath (p) { + p = path.normalize(path.resolve(p)).split(path.sep) + if (p.length > 0) return p[0] + return null +} - return self +// http://stackoverflow.com/a/62888/10333 contains more accurate +// TODO: expand to include the rest +const INVALID_PATH_CHARS = /[<>:"|?*]/ - function running () { - return _running - } +function invalidWin32Path (p) { + const rp = getRootPath(p) + p = p.replace(rp, '') + return INVALID_PATH_CHARS.test(p) +} - function pause () { - self.paused = true - } +module.exports = { + getRootPath, + invalidWin32Path +} - function length () { - var current = queueHead - var counter = 0 - while (current) { - current = current.next - counter++ - } +/***/ }), - return counter - } +/***/ 5073: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - function getQueue () { - var current = queueHead - var tasks = [] - while (current) { - tasks.push(current.value) - current = current.next - } - return tasks - } +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) +const copySync = (__nccwpck_require__(1617).copySync) +const removeSync = (__nccwpck_require__(550).removeSync) +const mkdirpSync = (__nccwpck_require__(4846).mkdirsSync) +const buffer = __nccwpck_require__(4390) - function resume () { - if (!self.paused) return - self.paused = false - if (queueHead === null) { - _running++ - release() - return - } - for (; queueHead && _running < _concurrency;) { - _running++ - release() - } - } +function moveSync (src, dest, options) { + options = options || {} + const overwrite = options.overwrite || options.clobber || false - function idle () { - return _running === 0 && self.length() === 0 - } + src = path.resolve(src) + dest = path.resolve(dest) - function push (value, done) { - var current = cache.get() + if (src === dest) return fs.accessSync(src) - current.context = context - current.release = release - current.value = value - current.callback = done || noop - current.errorHandler = errorHandler + if (isSrcSubdir(src, dest)) throw new Error(`Cannot move '${src}' into itself '${dest}'.`) - if (_running >= _concurrency || self.paused) { - if (queueTail) { - queueTail.next = current - queueTail = current - } else { - queueHead = current - queueTail = current - self.saturated() + mkdirpSync(path.dirname(dest)) + tryRenameSync() + + function tryRenameSync () { + if (overwrite) { + try { + return fs.renameSync(src, dest) + } catch (err) { + if (err.code === 'ENOTEMPTY' || err.code === 'EEXIST' || err.code === 'EPERM') { + removeSync(dest) + options.overwrite = false // just overwriteed it, no need to do it again + return moveSync(src, dest, options) + } + + if (err.code !== 'EXDEV') throw err + return moveSyncAcrossDevice(src, dest, overwrite) } } else { - _running++ - worker.call(context, current.value, current.worked) + try { + fs.linkSync(src, dest) + return fs.unlinkSync(src) + } catch (err) { + if (err.code === 'EXDEV' || err.code === 'EISDIR' || err.code === 'EPERM' || err.code === 'ENOTSUP') { + return moveSyncAcrossDevice(src, dest, overwrite) + } + throw err + } } } +} - function unshift (value, done) { - var current = cache.get() +function moveSyncAcrossDevice (src, dest, overwrite) { + const stat = fs.statSync(src) - current.context = context - current.release = release - current.value = value - current.callback = done || noop - current.errorHandler = errorHandler + if (stat.isDirectory()) { + return moveDirSyncAcrossDevice(src, dest, overwrite) + } else { + return moveFileSyncAcrossDevice(src, dest, overwrite) + } +} - if (_running >= _concurrency || self.paused) { - if (queueHead) { - current.next = queueHead - queueHead = current - } else { - queueHead = current - queueTail = current - self.saturated() - } - } else { - _running++ - worker.call(context, current.value, current.worked) - } +function moveFileSyncAcrossDevice (src, dest, overwrite) { + const BUF_LENGTH = 64 * 1024 + const _buff = buffer(BUF_LENGTH) + + const flags = overwrite ? 'w' : 'wx' + + const fdr = fs.openSync(src, 'r') + const stat = fs.fstatSync(fdr) + const fdw = fs.openSync(dest, flags, stat.mode) + let pos = 0 + + while (pos < stat.size) { + const bytesRead = fs.readSync(fdr, _buff, 0, BUF_LENGTH, pos) + fs.writeSync(fdw, _buff, 0, bytesRead) + pos += bytesRead } - function release (holder) { - if (holder) { - cache.release(holder) - } - var next = queueHead - if (next && _running <= _concurrency) { - if (!self.paused) { - if (queueTail === queueHead) { - queueTail = null - } - queueHead = next.next - next.next = null - worker.call(context, next.value, next.worked) - if (queueTail === null) { - self.empty() - } - } else { - _running-- - } - } else if (--_running === 0) { - self.drain() - } + fs.closeSync(fdr) + fs.closeSync(fdw) + return fs.unlinkSync(src) +} + +function moveDirSyncAcrossDevice (src, dest, overwrite) { + const options = { + overwrite: false } - function kill () { - queueHead = null - queueTail = null - self.drain = noop + if (overwrite) { + removeSync(dest) + tryCopySync() + } else { + tryCopySync() } - function killAndDrain () { - queueHead = null - queueTail = null - self.drain() - self.drain = noop + function tryCopySync () { + copySync(src, dest, options) + return removeSync(src) } +} - function error (handler) { - errorHandler = handler +// return true if dest is a subdir of src, otherwise false. +// extract dest base dir and check if that is the same as src basename +function isSrcSubdir (src, dest) { + try { + return fs.statSync(src).isDirectory() && + src !== dest && + dest.indexOf(src) > -1 && + dest.split(path.dirname(src) + path.sep)[1].split(path.sep)[0] === path.basename(src) + } catch (e) { + return false } } -function noop () {} +module.exports = { + moveSync +} -function Task () { - this.value = null - this.callback = noop - this.next = null - this.release = noop - this.context = null - this.errorHandler = null - var self = this +/***/ }), - this.worked = function worked (err, result) { - var callback = self.callback - var errorHandler = self.errorHandler - var val = self.value - self.value = null - self.callback = noop - if (self.errorHandler) { - errorHandler(err, val) - } - callback.call(self.context, err, result) - self.release(self) +/***/ 6031: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + + + +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) +const copy = (__nccwpck_require__(4735).copy) +const remove = (__nccwpck_require__(550).remove) +const mkdirp = (__nccwpck_require__(4846).mkdirp) +const pathExists = (__nccwpck_require__(1216).pathExists) + +function move (src, dest, opts, cb) { + if (typeof opts === 'function') { + cb = opts + opts = {} } + + const overwrite = opts.overwrite || opts.clobber || false + + src = path.resolve(src) + dest = path.resolve(dest) + + if (src === dest) return fs.access(src, cb) + + fs.stat(src, (err, st) => { + if (err) return cb(err) + + if (st.isDirectory() && isSrcSubdir(src, dest)) { + return cb(new Error(`Cannot move '${src}' to a subdirectory of itself, '${dest}'.`)) + } + mkdirp(path.dirname(dest), err => { + if (err) return cb(err) + return doRename(src, dest, overwrite, cb) + }) + }) } -function queueAsPromised (context, worker, _concurrency) { - if (typeof context === 'function') { - _concurrency = worker - worker = context - context = null +function doRename (src, dest, overwrite, cb) { + if (overwrite) { + return remove(dest, err => { + if (err) return cb(err) + return rename(src, dest, overwrite, cb) + }) } + pathExists(dest, (err, destExists) => { + if (err) return cb(err) + if (destExists) return cb(new Error('dest already exists.')) + return rename(src, dest, overwrite, cb) + }) +} - function asyncWrapper (arg, cb) { - worker.call(this, arg) - .then(function (res) { - cb(null, res) - }, cb) +function rename (src, dest, overwrite, cb) { + fs.rename(src, dest, err => { + if (!err) return cb() + if (err.code !== 'EXDEV') return cb(err) + return moveAcrossDevice(src, dest, overwrite, cb) + }) +} + +function moveAcrossDevice (src, dest, overwrite, cb) { + const opts = { + overwrite, + errorOnExist: true } - var queue = fastqueue(context, asyncWrapper, _concurrency) + copy(src, dest, opts, err => { + if (err) return cb(err) + return remove(src, cb) + }) +} - var pushCb = queue.push - var unshiftCb = queue.unshift +function isSrcSubdir (src, dest) { + const srcArray = src.split(path.sep) + const destArray = dest.split(path.sep) - queue.push = push - queue.unshift = unshift - queue.drained = drained + return srcArray.reduce((acc, current, i) => { + return acc && destArray[i] === current + }, true) +} - return queue +module.exports = { + move: u(move) +} - function push (value) { - var p = new Promise(function (resolve, reject) { - pushCb(value, function (err, result) { - if (err) { - reject(err) - return - } - resolve(result) - }) - }) - // Let's fork the promise chain to - // make the error bubble up to the user but - // not lead to a unhandledRejection - p.catch(noop) +/***/ }), - return p - } +/***/ 9867: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - function unshift (value) { - var p = new Promise(function (resolve, reject) { - unshiftCb(value, function (err, result) { - if (err) { - reject(err) - return - } - resolve(result) - }) - }) - // Let's fork the promise chain to - // make the error bubble up to the user but - // not lead to a unhandledRejection - p.catch(noop) - return p +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) +const mkdir = __nccwpck_require__(4846) +const pathExists = (__nccwpck_require__(1216).pathExists) + +function outputFile (file, data, encoding, callback) { + if (typeof encoding === 'function') { + callback = encoding + encoding = 'utf8' } - function drained () { - var p = new Promise(function (resolve) { - process.nextTick(function () { - if (queue.idle()) { - resolve() - } else { - var previousDrain = queue.drain - queue.drain = function () { - if (typeof previousDrain === 'function') previousDrain() - resolve() - queue.drain = previousDrain - } - } - }) + const dir = path.dirname(file) + pathExists(dir, (err, itDoes) => { + if (err) return callback(err) + if (itDoes) return fs.writeFile(file, data, encoding, callback) + + mkdir.mkdirs(dir, err => { + if (err) return callback(err) + + fs.writeFile(file, data, encoding, callback) }) + }) +} - return p +function outputFileSync (file, ...args) { + const dir = path.dirname(file) + if (fs.existsSync(dir)) { + return fs.writeFileSync(file, ...args) } + mkdir.mkdirsSync(dir) + fs.writeFileSync(file, ...args) } -module.exports = fastqueue -module.exports.promise = queueAsPromised +module.exports = { + outputFile: u(outputFile), + outputFileSync +} /***/ }), -/***/ 9073: +/***/ 1216: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -/*! - * fill-range - * - * Copyright (c) 2014-present, Jon Schlinkert. - * Licensed under the MIT License. - */ - - - -const util = __nccwpck_require__(39023); -const toRegexRange = __nccwpck_require__(54395); -const isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val); - -const transform = toNumber => { - return value => toNumber === true ? Number(value) : String(value); -}; +const u = (__nccwpck_require__(8710)/* .fromPromise */ .z) +const fs = __nccwpck_require__(9161) -const isValidValue = value => { - return typeof value === 'number' || (typeof value === 'string' && value !== ''); -}; +function pathExists (path) { + return fs.access(path).then(() => true).catch(() => false) +} -const isNumber = num => Number.isInteger(+num); +module.exports = { + pathExists: u(pathExists), + pathExistsSync: fs.existsSync +} -const zeros = input => { - let value = `${input}`; - let index = -1; - if (value[0] === '-') value = value.slice(1); - if (value === '0') return false; - while (value[++index] === '0'); - return index > 0; -}; -const stringify = (start, end, options) => { - if (typeof start === 'string' || typeof end === 'string') { - return true; - } - return options.stringify === true; -}; +/***/ }), -const pad = (input, maxLength, toNumber) => { - if (maxLength > 0) { - let dash = input[0] === '-' ? '-' : ''; - if (dash) input = input.slice(1); - input = (dash + input.padStart(dash ? maxLength - 1 : maxLength, '0')); - } - if (toNumber === false) { - return String(input); - } - return input; -}; +/***/ 550: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const toMaxLen = (input, maxLength) => { - let negative = input[0] === '-' ? '-' : ''; - if (negative) { - input = input.slice(1); - maxLength--; - } - while (input.length < maxLength) input = '0' + input; - return negative ? ('-' + input) : input; -}; -const toSequence = (parts, options, maxLen) => { - parts.negatives.sort((a, b) => a < b ? -1 : a > b ? 1 : 0); - parts.positives.sort((a, b) => a < b ? -1 : a > b ? 1 : 0); - let prefix = options.capture ? '' : '?:'; - let positives = ''; - let negatives = ''; - let result; +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const rimraf = __nccwpck_require__(1481) - if (parts.positives.length) { - positives = parts.positives.map(v => toMaxLen(String(v), maxLen)).join('|'); - } +module.exports = { + remove: u(rimraf), + removeSync: rimraf.sync +} - if (parts.negatives.length) { - negatives = `-(${prefix}${parts.negatives.map(v => toMaxLen(String(v), maxLen)).join('|')})`; - } - if (positives && negatives) { - result = `${positives}|${negatives}`; - } else { - result = positives || negatives; - } +/***/ }), - if (options.wrap) { - return `(${prefix}${result})`; - } +/***/ 1481: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - return result; -}; -const toRange = (a, b, isNumbers, options) => { - if (isNumbers) { - return toRegexRange(a, b, { wrap: false, ...options }); - } - let start = String.fromCharCode(a); - if (a === b) return start; +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) +const assert = __nccwpck_require__(2613) - let stop = String.fromCharCode(b); - return `[${start}-${stop}]`; -}; +const isWindows = (process.platform === 'win32') -const toRegex = (start, end, options) => { - if (Array.isArray(start)) { - let wrap = options.wrap === true; - let prefix = options.capture ? '' : '?:'; - return wrap ? `(${prefix}${start.join('|')})` : start.join('|'); - } - return toRegexRange(start, end, options); -}; +function defaults (options) { + const methods = [ + 'unlink', + 'chmod', + 'stat', + 'lstat', + 'rmdir', + 'readdir' + ] + methods.forEach(m => { + options[m] = options[m] || fs[m] + m = m + 'Sync' + options[m] = options[m] || fs[m] + }) -const rangeError = (...args) => { - return new RangeError('Invalid range arguments: ' + util.inspect(...args)); -}; + options.maxBusyTries = options.maxBusyTries || 3 +} -const invalidRange = (start, end, options) => { - if (options.strictRanges === true) throw rangeError([start, end]); - return []; -}; +function rimraf (p, options, cb) { + let busyTries = 0 -const invalidStep = (step, options) => { - if (options.strictRanges === true) { - throw new TypeError(`Expected step "${step}" to be a number`); + if (typeof options === 'function') { + cb = options + options = {} } - return []; -}; -const fillNumbers = (start, end, step = 1, options = {}) => { - let a = Number(start); - let b = Number(end); + assert(p, 'rimraf: missing path') + assert.strictEqual(typeof p, 'string', 'rimraf: path should be a string') + assert.strictEqual(typeof cb, 'function', 'rimraf: callback function required') + assert(options, 'rimraf: invalid options argument provided') + assert.strictEqual(typeof options, 'object', 'rimraf: options should be object') - if (!Number.isInteger(a) || !Number.isInteger(b)) { - if (options.strictRanges === true) throw rangeError([start, end]); - return []; - } + defaults(options) - // fix negative zero - if (a === 0) a = 0; - if (b === 0) b = 0; + rimraf_(p, options, function CB (er) { + if (er) { + if ((er.code === 'EBUSY' || er.code === 'ENOTEMPTY' || er.code === 'EPERM') && + busyTries < options.maxBusyTries) { + busyTries++ + const time = busyTries * 100 + // try again, with the same exact callback as this one. + return setTimeout(() => rimraf_(p, options, CB), time) + } - let descending = a > b; - let startString = String(start); - let endString = String(end); - let stepString = String(step); - step = Math.max(Math.abs(step), 1); + // already gone + if (er.code === 'ENOENT') er = null + } - let padded = zeros(startString) || zeros(endString) || zeros(stepString); - let maxLen = padded ? Math.max(startString.length, endString.length, stepString.length) : 0; - let toNumber = padded === false && stringify(start, end, options) === false; - let format = options.transform || transform(toNumber); + cb(er) + }) +} - if (options.toRegex && step === 1) { - return toRange(toMaxLen(start, maxLen), toMaxLen(end, maxLen), true, options); - } +// Two possible strategies. +// 1. Assume it's a file. unlink it, then do the dir stuff on EPERM or EISDIR +// 2. Assume it's a directory. readdir, then do the file stuff on ENOTDIR +// +// Both result in an extra syscall when you guess wrong. However, there +// are likely far more normal files in the world than directories. This +// is based on the assumption that a the average number of files per +// directory is >= 1. +// +// If anyone ever complains about this, then I guess the strategy could +// be made configurable somehow. But until then, YAGNI. +function rimraf_ (p, options, cb) { + assert(p) + assert(options) + assert(typeof cb === 'function') - let parts = { negatives: [], positives: [] }; - let push = num => parts[num < 0 ? 'negatives' : 'positives'].push(Math.abs(num)); - let range = []; - let index = 0; + // sunos lets the root user unlink directories, which is... weird. + // so we have to lstat here and make sure it's not a dir. + options.lstat(p, (er, st) => { + if (er && er.code === 'ENOENT') { + return cb(null) + } - while (descending ? a >= b : a <= b) { - if (options.toRegex === true && step > 1) { - push(a); - } else { - range.push(pad(format(a, index), maxLen, toNumber)); + // Windows can EPERM on stat. Life is suffering. + if (er && er.code === 'EPERM' && isWindows) { + return fixWinEPERM(p, options, er, cb) } - a = descending ? a - step : a + step; - index++; - } - if (options.toRegex === true) { - return step > 1 - ? toSequence(parts, options, maxLen) - : toRegex(range, null, { wrap: false, ...options }); - } + if (st && st.isDirectory()) { + return rmdir(p, options, er, cb) + } - return range; -}; + options.unlink(p, er => { + if (er) { + if (er.code === 'ENOENT') { + return cb(null) + } + if (er.code === 'EPERM') { + return (isWindows) + ? fixWinEPERM(p, options, er, cb) + : rmdir(p, options, er, cb) + } + if (er.code === 'EISDIR') { + return rmdir(p, options, er, cb) + } + } + return cb(er) + }) + }) +} -const fillLetters = (start, end, step = 1, options = {}) => { - if ((!isNumber(start) && start.length > 1) || (!isNumber(end) && end.length > 1)) { - return invalidRange(start, end, options); +function fixWinEPERM (p, options, er, cb) { + assert(p) + assert(options) + assert(typeof cb === 'function') + if (er) { + assert(er instanceof Error) } - let format = options.transform || (val => String.fromCharCode(val)); - let a = `${start}`.charCodeAt(0); - let b = `${end}`.charCodeAt(0); + options.chmod(p, 0o666, er2 => { + if (er2) { + cb(er2.code === 'ENOENT' ? null : er) + } else { + options.stat(p, (er3, stats) => { + if (er3) { + cb(er3.code === 'ENOENT' ? null : er) + } else if (stats.isDirectory()) { + rmdir(p, options, er, cb) + } else { + options.unlink(p, cb) + } + }) + } + }) +} - let descending = a > b; - let min = Math.min(a, b); - let max = Math.max(a, b); +function fixWinEPERMSync (p, options, er) { + let stats - if (options.toRegex && step === 1) { - return toRange(min, max, false, options); + assert(p) + assert(options) + if (er) { + assert(er instanceof Error) } - let range = []; - let index = 0; - - while (descending ? a >= b : a <= b) { - range.push(format(a, index)); - a = descending ? a - step : a + step; - index++; + try { + options.chmodSync(p, 0o666) + } catch (er2) { + if (er2.code === 'ENOENT') { + return + } else { + throw er + } } - if (options.toRegex === true) { - return toRegex(range, null, { wrap: false, options }); + try { + stats = options.statSync(p) + } catch (er3) { + if (er3.code === 'ENOENT') { + return + } else { + throw er + } } - return range; -}; - -const fill = (start, end, step, options = {}) => { - if (end == null && isValidValue(start)) { - return [start]; + if (stats.isDirectory()) { + rmdirSync(p, options, er) + } else { + options.unlinkSync(p) } +} - if (!isValidValue(start) || !isValidValue(end)) { - return invalidRange(start, end, options); +function rmdir (p, options, originalEr, cb) { + assert(p) + assert(options) + if (originalEr) { + assert(originalEr instanceof Error) } + assert(typeof cb === 'function') - if (typeof step === 'function') { - return fill(start, end, 1, { transform: step }); - } + // try to rmdir first, and only readdir on ENOTEMPTY or EEXIST (SunOS) + // if we guessed wrong, and it's not a directory, then + // raise the original error. + options.rmdir(p, er => { + if (er && (er.code === 'ENOTEMPTY' || er.code === 'EEXIST' || er.code === 'EPERM')) { + rmkids(p, options, cb) + } else if (er && er.code === 'ENOTDIR') { + cb(originalEr) + } else { + cb(er) + } + }) +} - if (isObject(step)) { - return fill(start, end, 0, step); - } +function rmkids (p, options, cb) { + assert(p) + assert(options) + assert(typeof cb === 'function') - let opts = { ...options }; - if (opts.capture === true) opts.wrap = true; - step = step || opts.step || 1; + options.readdir(p, (er, files) => { + if (er) return cb(er) - if (!isNumber(step)) { - if (step != null && !isObject(step)) return invalidStep(step, opts); - return fill(start, end, 1, step); - } + let n = files.length + let errState - if (isNumber(start) && isNumber(end)) { - return fillNumbers(start, end, step, opts); - } + if (n === 0) return options.rmdir(p, cb) - return fillLetters(start, end, Math.max(Math.abs(step), 1), opts); -}; + files.forEach(f => { + rimraf(path.join(p, f), options, er => { + if (errState) { + return + } + if (er) return cb(errState = er) + if (--n === 0) { + options.rmdir(p, cb) + } + }) + }) + }) +} -module.exports = fill; +// this looks simpler, and is strictly *faster*, but will +// tie up the JavaScript thread and fail on excessively +// deep directory trees. +function rimrafSync (p, options) { + let st + options = options || {} + defaults(options) -/***/ }), + assert(p, 'rimraf: missing path') + assert.strictEqual(typeof p, 'string', 'rimraf: path should be a string') + assert(options, 'rimraf: missing options') + assert.strictEqual(typeof options, 'object', 'rimraf: options should be object') -/***/ 81179: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + try { + st = options.lstatSync(p) + } catch (er) { + if (er.code === 'ENOENT') { + return + } + // Windows can EPERM on stat. Life is suffering. + if (er.code === 'EPERM' && isWindows) { + fixWinEPERMSync(p, options, er) + } + } -const path = __nccwpck_require__(16928); -const locatePath = __nccwpck_require__(58146); -const pathExists = __nccwpck_require__(25802); + try { + // sunos lets the root user unlink directories, which is... weird. + if (st && st.isDirectory()) { + rmdirSync(p, options, null) + } else { + options.unlinkSync(p) + } + } catch (er) { + if (er.code === 'ENOENT') { + return + } else if (er.code === 'EPERM') { + return isWindows ? fixWinEPERMSync(p, options, er) : rmdirSync(p, options, er) + } else if (er.code !== 'EISDIR') { + throw er + } + rmdirSync(p, options, er) + } +} -const stop = Symbol('findUp.stop'); +function rmdirSync (p, options, originalEr) { + assert(p) + assert(options) + if (originalEr) { + assert(originalEr instanceof Error) + } -module.exports = async (name, options = {}) => { - let directory = path.resolve(options.cwd || ''); - const {root} = path.parse(directory); - const paths = [].concat(name); + try { + options.rmdirSync(p) + } catch (er) { + if (er.code === 'ENOTDIR') { + throw originalEr + } else if (er.code === 'ENOTEMPTY' || er.code === 'EEXIST' || er.code === 'EPERM') { + rmkidsSync(p, options) + } else if (er.code !== 'ENOENT') { + throw er + } + } +} - const runMatcher = async locateOptions => { - if (typeof name !== 'function') { - return locatePath(paths, locateOptions); - } +function rmkidsSync (p, options) { + assert(p) + assert(options) + options.readdirSync(p).forEach(f => rimrafSync(path.join(p, f), options)) - const foundPath = await name(locateOptions.cwd); - if (typeof foundPath === 'string') { - return locatePath([foundPath], locateOptions); - } + if (isWindows) { + // We only end up here once we got ENOTEMPTY at least once, and + // at this point, we are guaranteed to have removed all the kids. + // So, we know that it won't be ENOENT or ENOTDIR or anything else. + // try really hard to delete stuff on windows, because it has a + // PROFOUNDLY annoying habit of not closing handles promptly when + // files are deleted, resulting in spurious ENOTEMPTY errors. + const startTime = Date.now() + do { + try { + const ret = options.rmdirSync(p, options) + return ret + } catch (er) { } + } while (Date.now() - startTime < 500) // give up after 500ms + } else { + const ret = options.rmdirSync(p, options) + return ret + } +} - return foundPath; - }; +module.exports = rimraf +rimraf.sync = rimrafSync - // eslint-disable-next-line no-constant-condition - while (true) { - // eslint-disable-next-line no-await-in-loop - const foundPath = await runMatcher({...options, cwd: directory}); - if (foundPath === stop) { - return; - } +/***/ }), - if (foundPath) { - return path.resolve(directory, foundPath); - } +/***/ 4390: +/***/ ((module) => { - if (directory === root) { - return; - } - directory = path.dirname(directory); - } -}; +/* eslint-disable node/no-deprecated-api */ +module.exports = function (size) { + if (typeof Buffer.allocUnsafe === 'function') { + try { + return Buffer.allocUnsafe(size) + } catch (e) { + return new Buffer(size) + } + } + return new Buffer(size) +} -module.exports.sync = (name, options = {}) => { - let directory = path.resolve(options.cwd || ''); - const {root} = path.parse(directory); - const paths = [].concat(name); - const runMatcher = locateOptions => { - if (typeof name !== 'function') { - return locatePath.sync(paths, locateOptions); - } +/***/ }), - const foundPath = name(locateOptions.cwd); - if (typeof foundPath === 'string') { - return locatePath.sync([foundPath], locateOptions); - } +/***/ 2707: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - return foundPath; - }; - // eslint-disable-next-line no-constant-condition - while (true) { - const foundPath = runMatcher({...options, cwd: directory}); - if (foundPath === stop) { - return; - } +const fs = __nccwpck_require__(8692) +const os = __nccwpck_require__(857) +const path = __nccwpck_require__(6928) - if (foundPath) { - return path.resolve(directory, foundPath); - } +// HFS, ext{2,3}, FAT do not, Node.js v0.10 does not +function hasMillisResSync () { + let tmpfile = path.join('millis-test-sync' + Date.now().toString() + Math.random().toString().slice(2)) + tmpfile = path.join(os.tmpdir(), tmpfile) - if (directory === root) { - return; - } + // 550 millis past UNIX epoch + const d = new Date(1435410243862) + fs.writeFileSync(tmpfile, 'https://github.com/jprichardson/node-fs-extra/pull/141') + const fd = fs.openSync(tmpfile, 'r+') + fs.futimesSync(fd, d, d) + fs.closeSync(fd) + return fs.statSync(tmpfile).mtime > 1435410243000 +} - directory = path.dirname(directory); - } -}; +function hasMillisRes (callback) { + let tmpfile = path.join('millis-test' + Date.now().toString() + Math.random().toString().slice(2)) + tmpfile = path.join(os.tmpdir(), tmpfile) -module.exports.exists = pathExists; + // 550 millis past UNIX epoch + const d = new Date(1435410243862) + fs.writeFile(tmpfile, 'https://github.com/jprichardson/node-fs-extra/pull/141', err => { + if (err) return callback(err) + fs.open(tmpfile, 'r+', (err, fd) => { + if (err) return callback(err) + fs.futimes(fd, d, d, err => { + if (err) return callback(err) + fs.close(fd, err => { + if (err) return callback(err) + fs.stat(tmpfile, (err, stats) => { + if (err) return callback(err) + callback(null, stats.mtime > 1435410243000) + }) + }) + }) + }) + }) +} -module.exports.sync.exists = pathExists.sync; +function timeRemoveMillis (timestamp) { + if (typeof timestamp === 'number') { + return Math.floor(timestamp / 1000) * 1000 + } else if (timestamp instanceof Date) { + return new Date(Math.floor(timestamp.getTime() / 1000) * 1000) + } else { + throw new Error('fs-extra: timeRemoveMillis() unknown parameter type') + } +} -module.exports.stop = stop; +function utimesMillis (path, atime, mtime, callback) { + // if (!HAS_MILLIS_RES) return fs.utimes(path, atime, mtime, callback) + fs.open(path, 'r+', (err, fd) => { + if (err) return callback(err) + fs.futimes(fd, atime, mtime, futimesErr => { + fs.close(fd, closeErr => { + if (callback) callback(futimesErr || closeErr) + }) + }) + }) +} + +function utimesMillisSync (path, atime, mtime) { + const fd = fs.openSync(path, 'r+') + fs.futimesSync(fd, atime, mtime) + return fs.closeSync(fd) +} + +module.exports = { + hasMillisRes, + hasMillisResSync, + timeRemoveMillis, + utimesMillis, + utimesMillisSync +} /***/ }), -/***/ 60979: +/***/ 4699: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const mkdirpSync = (__nccwpck_require__(36813).mkdirsSync) -const utimesSync = (__nccwpck_require__(51226).utimesMillisSync) - -const notExist = Symbol('notExist') +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) +const mkdirpSync = (__nccwpck_require__(1045).mkdirsSync) +const utimesSync = (__nccwpck_require__(6626).utimesMillisSync) +const stat = __nccwpck_require__(9203) function copySync (src, dest, opts) { if (typeof opts === 'function') { - opts = {filter: opts} + opts = { filter: opts } } opts = opts || {} @@ -13152,10 +10241,13 @@ function copySync (src, dest, opts) { see https://github.com/jprichardson/node-fs-extra/issues/269`) } - const destStat = checkPaths(src, dest) + const { srcStat, destStat } = stat.checkPathsSync(src, dest, 'copy') + stat.checkParentPathsSync(src, srcStat, dest, 'copy') + return handleFilterAndCopy(destStat, src, dest, opts) +} +function handleFilterAndCopy (destStat, src, dest, opts) { if (opts.filter && !opts.filter(src, dest)) return - const destParent = path.dirname(dest) if (!fs.existsSync(destParent)) mkdirpSync(destParent) return startCopy(destStat, src, dest, opts) @@ -13178,7 +10270,7 @@ function getStats (destStat, src, dest, opts) { } function onFile (srcStat, destStat, src, dest, opts) { - if (destStat === notExist) return copyFile(srcStat, src, dest, opts) + if (!destStat) return copyFile(srcStat, src, dest, opts) return mayCopyFile(srcStat, src, dest, opts) } @@ -13205,7 +10297,7 @@ function copyFile (srcStat, src, dest, opts) { function copyFileFallback (srcStat, src, dest, opts) { const BUF_LENGTH = 64 * 1024 - const _buff = __nccwpck_require__(79463)(BUF_LENGTH) + const _buff = __nccwpck_require__(7103)(BUF_LENGTH) const fdr = fs.openSync(src, 'r') const fdw = fs.openSync(dest, 'w', srcStat.mode) @@ -13224,7 +10316,7 @@ function copyFileFallback (srcStat, src, dest, opts) { } function onDir (srcStat, destStat, src, dest, opts) { - if (destStat === notExist) return mkDirAndCopy(srcStat, src, dest, opts) + if (!destStat) return mkDirAndCopy(srcStat, src, dest, opts) if (destStat && !destStat.isDirectory()) { throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`) } @@ -13244,18 +10336,17 @@ function copyDir (src, dest, opts) { function copyDirItem (item, src, dest, opts) { const srcItem = path.join(src, item) const destItem = path.join(dest, item) - const destStat = checkPaths(srcItem, destItem) + const { destStat } = stat.checkPathsSync(srcItem, destItem, 'copy') return startCopy(destStat, srcItem, destItem, opts) } function onLink (destStat, src, dest, opts) { let resolvedSrc = fs.readlinkSync(src) - if (opts.dereference) { resolvedSrc = path.resolve(process.cwd(), resolvedSrc) } - if (destStat === notExist) { + if (!destStat) { return fs.symlinkSync(resolvedSrc, dest) } else { let resolvedDest @@ -13271,14 +10362,14 @@ function onLink (destStat, src, dest, opts) { if (opts.dereference) { resolvedDest = path.resolve(process.cwd(), resolvedDest) } - if (isSrcSubdir(resolvedSrc, resolvedDest)) { + if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) { throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`) } // prevent copy if src is a subdir of dest since unlinking // dest in this case would result in removing src contents // and therefore a broken symlink would be created. - if (fs.statSync(dest).isDirectory() && isSrcSubdir(resolvedDest, resolvedSrc)) { + if (fs.statSync(dest).isDirectory() && stat.isSrcSubdir(resolvedDest, resolvedSrc)) { throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`) } return copyLink(resolvedSrc, dest) @@ -13290,72 +10381,41 @@ function copyLink (resolvedSrc, dest) { return fs.symlinkSync(resolvedSrc, dest) } -// return true if dest is a subdir of src, otherwise false. -function isSrcSubdir (src, dest) { - const srcArray = path.resolve(src).split(path.sep) - const destArray = path.resolve(dest).split(path.sep) - return srcArray.reduce((acc, current, i) => acc && destArray[i] === current, true) -} - -function checkStats (src, dest) { - const srcStat = fs.statSync(src) - let destStat - try { - destStat = fs.statSync(dest) - } catch (err) { - if (err.code === 'ENOENT') return {srcStat, destStat: notExist} - throw err - } - return {srcStat, destStat} -} - -function checkPaths (src, dest) { - const {srcStat, destStat} = checkStats(src, dest) - if (destStat.ino && destStat.ino === srcStat.ino) { - throw new Error('Source and destination must not be the same.') - } - if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { - throw new Error(`Cannot copy '${src}' to a subdirectory of itself, '${dest}'.`) - } - return destStat -} - module.exports = copySync /***/ }), -/***/ 32864: +/***/ 9288: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { module.exports = { - copySync: __nccwpck_require__(60979) + copySync: __nccwpck_require__(4699) } /***/ }), -/***/ 14027: +/***/ 3395: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const mkdirp = (__nccwpck_require__(36813).mkdirs) -const pathExists = (__nccwpck_require__(26949).pathExists) -const utimes = (__nccwpck_require__(51226).utimesMillis) - -const notExist = Symbol('notExist') +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) +const mkdirp = (__nccwpck_require__(1045).mkdirs) +const pathExists = (__nccwpck_require__(13).pathExists) +const utimes = (__nccwpck_require__(6626).utimesMillis) +const stat = __nccwpck_require__(9203) function copy (src, dest, opts, cb) { if (typeof opts === 'function' && !cb) { cb = opts opts = {} } else if (typeof opts === 'function') { - opts = {filter: opts} + opts = { filter: opts } } cb = cb || function () {} @@ -13370,10 +10430,14 @@ function copy (src, dest, opts, cb) { see https://github.com/jprichardson/node-fs-extra/issues/269`) } - checkPaths(src, dest, (err, destStat) => { + stat.checkPaths(src, dest, 'copy', (err, stats) => { if (err) return cb(err) - if (opts.filter) return handleFilter(checkParentDir, destStat, src, dest, opts, cb) - return checkParentDir(destStat, src, dest, opts, cb) + const { srcStat, destStat } = stats + stat.checkParentPaths(src, srcStat, dest, 'copy', err => { + if (err) return cb(err) + if (opts.filter) return handleFilter(checkParentDir, destStat, src, dest, opts, cb) + return checkParentDir(destStat, src, dest, opts, cb) + }) }) } @@ -13391,10 +10455,7 @@ function checkParentDir (destStat, src, dest, opts, cb) { function handleFilter (onInclude, destStat, src, dest, opts, cb) { Promise.resolve(opts.filter(src, dest)).then(include => { - if (include) { - if (destStat) return onInclude(destStat, src, dest, opts, cb) - return onInclude(src, dest, opts, cb) - } + if (include) return onInclude(destStat, src, dest, opts, cb) return cb() }, error => cb(error)) } @@ -13418,7 +10479,7 @@ function getStats (destStat, src, dest, opts, cb) { } function onFile (srcStat, destStat, src, dest, opts, cb) { - if (destStat === notExist) return copyFile(srcStat, src, dest, opts, cb) + if (!destStat) return copyFile(srcStat, src, dest, opts, cb) return mayCopyFile(srcStat, src, dest, opts, cb) } @@ -13464,7 +10525,7 @@ function setDestModeAndTimestamps (srcStat, dest, opts, cb) { } function onDir (srcStat, destStat, src, dest, opts, cb) { - if (destStat === notExist) return mkDirAndCopy(srcStat, src, dest, opts, cb) + if (!destStat) return mkDirAndCopy(srcStat, src, dest, opts, cb) if (destStat && !destStat.isDirectory()) { return cb(new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`)) } @@ -13497,8 +10558,9 @@ function copyDirItems (items, src, dest, opts, cb) { function copyDirItem (items, item, src, dest, opts, cb) { const srcItem = path.join(src, item) const destItem = path.join(dest, item) - checkPaths(srcItem, destItem, (err, destStat) => { + stat.checkPaths(srcItem, destItem, 'copy', (err, stats) => { if (err) return cb(err) + const { destStat } = stats startCopy(destStat, srcItem, destItem, opts, err => { if (err) return cb(err) return copyDirItems(items, src, dest, opts, cb) @@ -13509,12 +10571,11 @@ function copyDirItem (items, item, src, dest, opts, cb) { function onLink (destStat, src, dest, opts, cb) { fs.readlink(src, (err, resolvedSrc) => { if (err) return cb(err) - if (opts.dereference) { resolvedSrc = path.resolve(process.cwd(), resolvedSrc) } - if (destStat === notExist) { + if (!destStat) { return fs.symlink(resolvedSrc, dest, cb) } else { fs.readlink(dest, (err, resolvedDest) => { @@ -13528,14 +10589,14 @@ function onLink (destStat, src, dest, opts, cb) { if (opts.dereference) { resolvedDest = path.resolve(process.cwd(), resolvedDest) } - if (isSrcSubdir(resolvedSrc, resolvedDest)) { + if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) { return cb(new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`)) } // do not copy if src is a subdir of dest since unlinking // dest in this case would result in removing src contents // and therefore a broken symlink would be created. - if (destStat.isDirectory() && isSrcSubdir(resolvedDest, resolvedSrc)) { + if (destStat.isDirectory() && stat.isSrcSubdir(resolvedDest, resolvedSrc)) { return cb(new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`)) } return copyLink(resolvedSrc, dest, cb) @@ -13551,68 +10612,34 @@ function copyLink (resolvedSrc, dest, cb) { }) } -// return true if dest is a subdir of src, otherwise false. -function isSrcSubdir (src, dest) { - const srcArray = path.resolve(src).split(path.sep) - const destArray = path.resolve(dest).split(path.sep) - return srcArray.reduce((acc, current, i) => acc && destArray[i] === current, true) -} - -function checkStats (src, dest, cb) { - fs.stat(src, (err, srcStat) => { - if (err) return cb(err) - fs.stat(dest, (err, destStat) => { - if (err) { - if (err.code === 'ENOENT') return cb(null, {srcStat, destStat: notExist}) - return cb(err) - } - return cb(null, {srcStat, destStat}) - }) - }) -} - -function checkPaths (src, dest, cb) { - checkStats(src, dest, (err, stats) => { - if (err) return cb(err) - const {srcStat, destStat} = stats - if (destStat.ino && destStat.ino === srcStat.ino) { - return cb(new Error('Source and destination must not be the same.')) - } - if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { - return cb(new Error(`Cannot copy '${src}' to a subdirectory of itself, '${dest}'.`)) - } - return cb(null, destStat) - }) -} - module.exports = copy /***/ }), -/***/ 80424: +/***/ 8336: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) module.exports = { - copy: u(__nccwpck_require__(14027)) + copy: u(__nccwpck_require__(3395)) } /***/ }), -/***/ 70198: +/***/ 6494: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const fs = __nccwpck_require__(79896) -const path = __nccwpck_require__(16928) -const mkdir = __nccwpck_require__(36813) -const remove = __nccwpck_require__(63073) +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) +const mkdir = __nccwpck_require__(1045) +const remove = __nccwpck_require__(8233) const emptyDir = u(function emptyDir (dir, callback) { callback = callback || function () {} @@ -13658,16 +10685,16 @@ module.exports = { /***/ }), -/***/ 93693: +/***/ 165: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const path = __nccwpck_require__(16928) -const fs = __nccwpck_require__(61404) -const mkdir = __nccwpck_require__(36813) -const pathExists = (__nccwpck_require__(26949).pathExists) +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const path = __nccwpck_require__(6928) +const fs = __nccwpck_require__(8692) +const mkdir = __nccwpck_require__(1045) +const pathExists = (__nccwpck_require__(13).pathExists) function createFile (file, callback) { function makeFile () { @@ -13714,14 +10741,14 @@ module.exports = { /***/ }), -/***/ 44895: +/***/ 1575: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const file = __nccwpck_require__(93693) -const link = __nccwpck_require__(1147) -const symlink = __nccwpck_require__(15788) +const file = __nccwpck_require__(165) +const link = __nccwpck_require__(9571) +const symlink = __nccwpck_require__(9332) module.exports = { // file @@ -13744,16 +10771,16 @@ module.exports = { /***/ }), -/***/ 1147: +/***/ 9571: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const path = __nccwpck_require__(16928) -const fs = __nccwpck_require__(61404) -const mkdir = __nccwpck_require__(36813) -const pathExists = (__nccwpck_require__(26949).pathExists) +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const path = __nccwpck_require__(6928) +const fs = __nccwpck_require__(8692) +const mkdir = __nccwpck_require__(1045) +const pathExists = (__nccwpck_require__(13).pathExists) function createLink (srcpath, dstpath, callback) { function makeLink (srcpath, dstpath) { @@ -13812,14 +10839,14 @@ module.exports = { /***/ }), -/***/ 59933: +/***/ 8661: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const path = __nccwpck_require__(16928) -const fs = __nccwpck_require__(61404) -const pathExists = (__nccwpck_require__(26949).pathExists) +const path = __nccwpck_require__(6928) +const fs = __nccwpck_require__(8692) +const pathExists = (__nccwpck_require__(13).pathExists) /** * Function that returns two types of paths, one relative to symlink, and one @@ -13918,12 +10945,12 @@ module.exports = { /***/ }), -/***/ 17489: +/***/ 7561: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const fs = __nccwpck_require__(61404) +const fs = __nccwpck_require__(8692) function symlinkType (srcpath, type, callback) { callback = (typeof type === 'function') ? type : callback @@ -13956,27 +10983,27 @@ module.exports = { /***/ }), -/***/ 15788: +/***/ 9332: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const path = __nccwpck_require__(16928) -const fs = __nccwpck_require__(61404) -const _mkdirs = __nccwpck_require__(36813) +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const path = __nccwpck_require__(6928) +const fs = __nccwpck_require__(8692) +const _mkdirs = __nccwpck_require__(1045) const mkdirs = _mkdirs.mkdirs const mkdirsSync = _mkdirs.mkdirsSync -const _symlinkPaths = __nccwpck_require__(59933) +const _symlinkPaths = __nccwpck_require__(8661) const symlinkPaths = _symlinkPaths.symlinkPaths const symlinkPathsSync = _symlinkPaths.symlinkPathsSync -const _symlinkType = __nccwpck_require__(17489) +const _symlinkType = __nccwpck_require__(7561) const symlinkType = _symlinkType.symlinkType const symlinkTypeSync = _symlinkType.symlinkTypeSync -const pathExists = (__nccwpck_require__(26949).pathExists) +const pathExists = (__nccwpck_require__(13).pathExists) function createSymlink (srcpath, dstpath, type, callback) { callback = (typeof type === 'function') ? type : callback @@ -14026,14 +11053,14 @@ module.exports = { /***/ }), -/***/ 9238: +/***/ 2318: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { // This is adapted from https://github.com/normalize/mz // Copyright (c) 2014-2016 Jonathan Ong me@jongleberry.com and Contributors -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const fs = __nccwpck_require__(61404) +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const fs = __nccwpck_require__(8692) const api = [ 'access', @@ -14134,10 +11161,15 @@ exports.write = function (fd, buffer, ...args) { }) } +// fs.realpath.native only available in Node v9.2+ +if (typeof fs.realpath.native === 'function') { + exports.realpath.native = u(fs.realpath.native) +} + /***/ }), -/***/ 41348: +/***/ 6668: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -14145,24 +11177,24 @@ exports.write = function (fd, buffer, ...args) { module.exports = Object.assign( {}, // Export promiseified graceful-fs: - __nccwpck_require__(9238), + __nccwpck_require__(2318), // Export extra methods: - __nccwpck_require__(32864), - __nccwpck_require__(80424), - __nccwpck_require__(70198), - __nccwpck_require__(44895), - __nccwpck_require__(25219), - __nccwpck_require__(36813), - __nccwpck_require__(57744), - __nccwpck_require__(95256), - __nccwpck_require__(14552), - __nccwpck_require__(26949), - __nccwpck_require__(63073) + __nccwpck_require__(9288), + __nccwpck_require__(8336), + __nccwpck_require__(6494), + __nccwpck_require__(1575), + __nccwpck_require__(5643), + __nccwpck_require__(1045), + __nccwpck_require__(1160), + __nccwpck_require__(656), + __nccwpck_require__(7936), + __nccwpck_require__(13), + __nccwpck_require__(8233) ) // Export fs.promises as a getter property so that we don't trigger // ExperimentalWarning before fs.promises is actually accessed. -const fs = __nccwpck_require__(79896) +const fs = __nccwpck_require__(9896) if (Object.getOwnPropertyDescriptor(fs, 'promises')) { Object.defineProperty(module.exports, "promises", ({ get () { return fs.promises } @@ -14172,16 +11204,16 @@ if (Object.getOwnPropertyDescriptor(fs, 'promises')) { /***/ }), -/***/ 25219: +/***/ 5643: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const jsonFile = __nccwpck_require__(81891) +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const jsonFile = __nccwpck_require__(8667) -jsonFile.outputJson = u(__nccwpck_require__(7597)) -jsonFile.outputJsonSync = __nccwpck_require__(56917) +jsonFile.outputJson = u(__nccwpck_require__(2165)) +jsonFile.outputJsonSync = __nccwpck_require__(4477) // aliases jsonFile.outputJSON = jsonFile.outputJson jsonFile.outputJSONSync = jsonFile.outputJsonSync @@ -14195,13 +11227,13 @@ module.exports = jsonFile /***/ }), -/***/ 81891: +/***/ 8667: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const jsonFile = __nccwpck_require__(93588) +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const jsonFile = __nccwpck_require__(6155) module.exports = { // jsonfile exports @@ -14214,15 +11246,15 @@ module.exports = { /***/ }), -/***/ 56917: +/***/ 4477: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const mkdir = __nccwpck_require__(36813) -const jsonFile = __nccwpck_require__(81891) +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) +const mkdir = __nccwpck_require__(1045) +const jsonFile = __nccwpck_require__(8667) function outputJsonSync (file, data, options) { const dir = path.dirname(file) @@ -14239,15 +11271,15 @@ module.exports = outputJsonSync /***/ }), -/***/ 7597: +/***/ 2165: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const path = __nccwpck_require__(16928) -const mkdir = __nccwpck_require__(36813) -const pathExists = (__nccwpck_require__(26949).pathExists) -const jsonFile = __nccwpck_require__(81891) +const path = __nccwpck_require__(6928) +const mkdir = __nccwpck_require__(1045) +const pathExists = (__nccwpck_require__(13).pathExists) +const jsonFile = __nccwpck_require__(8667) function outputJson (file, data, options, callback) { if (typeof options === 'function') { @@ -14273,13 +11305,13 @@ module.exports = outputJson /***/ }), -/***/ 36813: +/***/ 1045: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const mkdirs = u(__nccwpck_require__(71781)) -const mkdirsSync = __nccwpck_require__(28173) +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const mkdirs = u(__nccwpck_require__(845)) +const mkdirsSync = __nccwpck_require__(1749) module.exports = { mkdirs, @@ -14294,14 +11326,14 @@ module.exports = { /***/ }), -/***/ 28173: +/***/ 1749: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const invalidWin32Path = (__nccwpck_require__(38882).invalidWin32Path) +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) +const invalidWin32Path = (__nccwpck_require__(6154).invalidWin32Path) const o777 = parseInt('0777', 8) @@ -14355,14 +11387,14 @@ module.exports = mkdirsSync /***/ }), -/***/ 71781: +/***/ 845: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const invalidWin32Path = (__nccwpck_require__(38882).invalidWin32Path) +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) +const invalidWin32Path = (__nccwpck_require__(6154).invalidWin32Path) const o777 = parseInt('0777', 8) @@ -14425,12 +11457,12 @@ module.exports = mkdirs /***/ }), -/***/ 38882: +/***/ 6154: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const path = __nccwpck_require__(16928) +const path = __nccwpck_require__(6928) // get drive on windows function getRootPath (p) { @@ -14457,142 +11489,97 @@ module.exports = { /***/ }), -/***/ 57744: +/***/ 1160: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const copySync = (__nccwpck_require__(32864).copySync) -const removeSync = (__nccwpck_require__(63073).removeSync) -const mkdirpSync = (__nccwpck_require__(36813).mkdirsSync) -const buffer = __nccwpck_require__(79463) - -function moveSync (src, dest, options) { - options = options || {} - const overwrite = options.overwrite || options.clobber || false - - src = path.resolve(src) - dest = path.resolve(dest) - - if (src === dest) return fs.accessSync(src) - - if (isSrcSubdir(src, dest)) throw new Error(`Cannot move '${src}' into itself '${dest}'.`) - - mkdirpSync(path.dirname(dest)) - tryRenameSync() - - function tryRenameSync () { - if (overwrite) { - try { - return fs.renameSync(src, dest) - } catch (err) { - if (err.code === 'ENOTEMPTY' || err.code === 'EEXIST' || err.code === 'EPERM') { - removeSync(dest) - options.overwrite = false // just overwriteed it, no need to do it again - return moveSync(src, dest, options) - } - - if (err.code !== 'EXDEV') throw err - return moveSyncAcrossDevice(src, dest, overwrite) - } - } else { - try { - fs.linkSync(src, dest) - return fs.unlinkSync(src) - } catch (err) { - if (err.code === 'EXDEV' || err.code === 'EISDIR' || err.code === 'EPERM' || err.code === 'ENOTSUP') { - return moveSyncAcrossDevice(src, dest, overwrite) - } - throw err - } - } - } +module.exports = { + moveSync: __nccwpck_require__(2483) } -function moveSyncAcrossDevice (src, dest, overwrite) { - const stat = fs.statSync(src) - if (stat.isDirectory()) { - return moveDirSyncAcrossDevice(src, dest, overwrite) - } else { - return moveFileSyncAcrossDevice(src, dest, overwrite) - } -} +/***/ }), -function moveFileSyncAcrossDevice (src, dest, overwrite) { - const BUF_LENGTH = 64 * 1024 - const _buff = buffer(BUF_LENGTH) +/***/ 2483: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - const flags = overwrite ? 'w' : 'wx' - const fdr = fs.openSync(src, 'r') - const stat = fs.fstatSync(fdr) - const fdw = fs.openSync(dest, flags, stat.mode) - let pos = 0 - while (pos < stat.size) { - const bytesRead = fs.readSync(fdr, _buff, 0, BUF_LENGTH, pos) - fs.writeSync(fdw, _buff, 0, bytesRead) - pos += bytesRead - } +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) +const copySync = (__nccwpck_require__(9288).copySync) +const removeSync = (__nccwpck_require__(8233).removeSync) +const mkdirpSync = (__nccwpck_require__(1045).mkdirpSync) +const stat = __nccwpck_require__(9203) - fs.closeSync(fdr) - fs.closeSync(fdw) - return fs.unlinkSync(src) -} +function moveSync (src, dest, opts) { + opts = opts || {} + const overwrite = opts.overwrite || opts.clobber || false -function moveDirSyncAcrossDevice (src, dest, overwrite) { - const options = { - overwrite: false - } + const { srcStat } = stat.checkPathsSync(src, dest, 'move') + stat.checkParentPathsSync(src, srcStat, dest, 'move') + mkdirpSync(path.dirname(dest)) + return doRename(src, dest, overwrite) +} +function doRename (src, dest, overwrite) { if (overwrite) { removeSync(dest) - tryCopySync() - } else { - tryCopySync() + return rename(src, dest, overwrite) } + if (fs.existsSync(dest)) throw new Error('dest already exists.') + return rename(src, dest, overwrite) +} - function tryCopySync () { - copySync(src, dest, options) - return removeSync(src) +function rename (src, dest, overwrite) { + try { + fs.renameSync(src, dest) + } catch (err) { + if (err.code !== 'EXDEV') throw err + return moveAcrossDevice(src, dest, overwrite) } } -// return true if dest is a subdir of src, otherwise false. -// extract dest base dir and check if that is the same as src basename -function isSrcSubdir (src, dest) { - try { - return fs.statSync(src).isDirectory() && - src !== dest && - dest.indexOf(src) > -1 && - dest.split(path.dirname(src) + path.sep)[1].split(path.sep)[0] === path.basename(src) - } catch (e) { - return false +function moveAcrossDevice (src, dest, overwrite) { + const opts = { + overwrite, + errorOnExist: true } + copySync(src, dest, opts) + return removeSync(src) } +module.exports = moveSync + + +/***/ }), + +/***/ 656: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + + + +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) module.exports = { - moveSync + move: u(__nccwpck_require__(6680)) } /***/ }), -/***/ 95256: +/***/ 6680: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const copy = (__nccwpck_require__(80424).copy) -const remove = (__nccwpck_require__(63073).remove) -const mkdirp = (__nccwpck_require__(36813).mkdirp) -const pathExists = (__nccwpck_require__(26949).pathExists) +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) +const copy = (__nccwpck_require__(8336).copy) +const remove = (__nccwpck_require__(8233).remove) +const mkdirp = (__nccwpck_require__(1045).mkdirp) +const pathExists = (__nccwpck_require__(13).pathExists) +const stat = __nccwpck_require__(9203) function move (src, dest, opts, cb) { if (typeof opts === 'function') { @@ -14602,20 +11589,15 @@ function move (src, dest, opts, cb) { const overwrite = opts.overwrite || opts.clobber || false - src = path.resolve(src) - dest = path.resolve(dest) - - if (src === dest) return fs.access(src, cb) - - fs.stat(src, (err, st) => { + stat.checkPaths(src, dest, 'move', (err, stats) => { if (err) return cb(err) - - if (st.isDirectory() && isSrcSubdir(src, dest)) { - return cb(new Error(`Cannot move '${src}' to a subdirectory of itself, '${dest}'.`)) - } - mkdirp(path.dirname(dest), err => { + const { srcStat } = stats + stat.checkParentPaths(src, srcStat, dest, 'move', err => { if (err) return cb(err) - return doRename(src, dest, overwrite, cb) + mkdirp(path.dirname(dest), err => { + if (err) return cb(err) + return doRename(src, dest, overwrite, cb) + }) }) }) } @@ -14647,39 +11629,27 @@ function moveAcrossDevice (src, dest, overwrite, cb) { overwrite, errorOnExist: true } - copy(src, dest, opts, err => { if (err) return cb(err) return remove(src, cb) }) } -function isSrcSubdir (src, dest) { - const srcArray = src.split(path.sep) - const destArray = dest.split(path.sep) - - return srcArray.reduce((acc, current, i) => { - return acc && destArray[i] === current - }, true) -} - -module.exports = { - move: u(move) -} +module.exports = move /***/ }), -/***/ 14552: +/***/ 7936: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const mkdir = __nccwpck_require__(36813) -const pathExists = (__nccwpck_require__(26949).pathExists) +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) +const mkdir = __nccwpck_require__(1045) +const pathExists = (__nccwpck_require__(13).pathExists) function outputFile (file, data, encoding, callback) { if (typeof encoding === 'function') { @@ -14717,12 +11687,12 @@ module.exports = { /***/ }), -/***/ 26949: +/***/ 13: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const u = (__nccwpck_require__(92977)/* .fromPromise */ .z) -const fs = __nccwpck_require__(9238) +const u = (__nccwpck_require__(8710)/* .fromPromise */ .z) +const fs = __nccwpck_require__(2318) function pathExists (path) { return fs.access(path).then(() => true).catch(() => false) @@ -14736,13 +11706,13 @@ module.exports = { /***/ }), -/***/ 63073: +/***/ 8233: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const u = (__nccwpck_require__(92977)/* .fromCallback */ .S) -const rimraf = __nccwpck_require__(95228) +const u = (__nccwpck_require__(8710)/* .fromCallback */ .S) +const rimraf = __nccwpck_require__(5236) module.exports = { remove: u(rimraf), @@ -14752,14 +11722,14 @@ module.exports = { /***/ }), -/***/ 95228: +/***/ 5236: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const fs = __nccwpck_require__(61404) -const path = __nccwpck_require__(16928) -const assert = __nccwpck_require__(42613) +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) +const assert = __nccwpck_require__(2613) const isWindows = (process.platform === 'win32') @@ -15073,7 +12043,7 @@ rimraf.sync = rimrafSync /***/ }), -/***/ 79463: +/***/ 7103: /***/ ((module) => { @@ -15092,14 +12062,193 @@ module.exports = function (size) { /***/ }), -/***/ 51226: +/***/ 9203: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const fs = __nccwpck_require__(61404) -const os = __nccwpck_require__(70857) -const path = __nccwpck_require__(16928) +const fs = __nccwpck_require__(8692) +const path = __nccwpck_require__(6928) + +const NODE_VERSION_MAJOR_WITH_BIGINT = 10 +const NODE_VERSION_MINOR_WITH_BIGINT = 5 +const NODE_VERSION_PATCH_WITH_BIGINT = 0 +const nodeVersion = process.versions.node.split('.') +const nodeVersionMajor = Number.parseInt(nodeVersion[0], 10) +const nodeVersionMinor = Number.parseInt(nodeVersion[1], 10) +const nodeVersionPatch = Number.parseInt(nodeVersion[2], 10) + +function nodeSupportsBigInt () { + if (nodeVersionMajor > NODE_VERSION_MAJOR_WITH_BIGINT) { + return true + } else if (nodeVersionMajor === NODE_VERSION_MAJOR_WITH_BIGINT) { + if (nodeVersionMinor > NODE_VERSION_MINOR_WITH_BIGINT) { + return true + } else if (nodeVersionMinor === NODE_VERSION_MINOR_WITH_BIGINT) { + if (nodeVersionPatch >= NODE_VERSION_PATCH_WITH_BIGINT) { + return true + } + } + } + return false +} + +function getStats (src, dest, cb) { + if (nodeSupportsBigInt()) { + fs.stat(src, { bigint: true }, (err, srcStat) => { + if (err) return cb(err) + fs.stat(dest, { bigint: true }, (err, destStat) => { + if (err) { + if (err.code === 'ENOENT') return cb(null, { srcStat, destStat: null }) + return cb(err) + } + return cb(null, { srcStat, destStat }) + }) + }) + } else { + fs.stat(src, (err, srcStat) => { + if (err) return cb(err) + fs.stat(dest, (err, destStat) => { + if (err) { + if (err.code === 'ENOENT') return cb(null, { srcStat, destStat: null }) + return cb(err) + } + return cb(null, { srcStat, destStat }) + }) + }) + } +} + +function getStatsSync (src, dest) { + let srcStat, destStat + if (nodeSupportsBigInt()) { + srcStat = fs.statSync(src, { bigint: true }) + } else { + srcStat = fs.statSync(src) + } + try { + if (nodeSupportsBigInt()) { + destStat = fs.statSync(dest, { bigint: true }) + } else { + destStat = fs.statSync(dest) + } + } catch (err) { + if (err.code === 'ENOENT') return { srcStat, destStat: null } + throw err + } + return { srcStat, destStat } +} + +function checkPaths (src, dest, funcName, cb) { + getStats(src, dest, (err, stats) => { + if (err) return cb(err) + const { srcStat, destStat } = stats + if (destStat && destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev) { + return cb(new Error('Source and destination must not be the same.')) + } + if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { + return cb(new Error(errMsg(src, dest, funcName))) + } + return cb(null, { srcStat, destStat }) + }) +} + +function checkPathsSync (src, dest, funcName) { + const { srcStat, destStat } = getStatsSync(src, dest) + if (destStat && destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev) { + throw new Error('Source and destination must not be the same.') + } + if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { + throw new Error(errMsg(src, dest, funcName)) + } + return { srcStat, destStat } +} + +// recursively check if dest parent is a subdirectory of src. +// It works for all file types including symlinks since it +// checks the src and dest inodes. It starts from the deepest +// parent and stops once it reaches the src parent or the root path. +function checkParentPaths (src, srcStat, dest, funcName, cb) { + const srcParent = path.resolve(path.dirname(src)) + const destParent = path.resolve(path.dirname(dest)) + if (destParent === srcParent || destParent === path.parse(destParent).root) return cb() + if (nodeSupportsBigInt()) { + fs.stat(destParent, { bigint: true }, (err, destStat) => { + if (err) { + if (err.code === 'ENOENT') return cb() + return cb(err) + } + if (destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev) { + return cb(new Error(errMsg(src, dest, funcName))) + } + return checkParentPaths(src, srcStat, destParent, funcName, cb) + }) + } else { + fs.stat(destParent, (err, destStat) => { + if (err) { + if (err.code === 'ENOENT') return cb() + return cb(err) + } + if (destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev) { + return cb(new Error(errMsg(src, dest, funcName))) + } + return checkParentPaths(src, srcStat, destParent, funcName, cb) + }) + } +} + +function checkParentPathsSync (src, srcStat, dest, funcName) { + const srcParent = path.resolve(path.dirname(src)) + const destParent = path.resolve(path.dirname(dest)) + if (destParent === srcParent || destParent === path.parse(destParent).root) return + let destStat + try { + if (nodeSupportsBigInt()) { + destStat = fs.statSync(destParent, { bigint: true }) + } else { + destStat = fs.statSync(destParent) + } + } catch (err) { + if (err.code === 'ENOENT') return + throw err + } + if (destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev) { + throw new Error(errMsg(src, dest, funcName)) + } + return checkParentPathsSync(src, srcStat, destParent, funcName) +} + +// return true if dest is a subdir of src, otherwise false. +// It only checks the path strings. +function isSrcSubdir (src, dest) { + const srcArr = path.resolve(src).split(path.sep).filter(i => i) + const destArr = path.resolve(dest).split(path.sep).filter(i => i) + return srcArr.reduce((acc, cur, i) => acc && destArr[i] === cur, true) +} + +function errMsg (src, dest, funcName) { + return `Cannot ${funcName} '${src}' to a subdirectory of itself, '${dest}'.` +} + +module.exports = { + checkPaths, + checkPathsSync, + checkParentPaths, + checkParentPathsSync, + isSrcSubdir +} + + +/***/ }), + +/***/ 6626: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + + + +const fs = __nccwpck_require__(8692) +const os = __nccwpck_require__(857) +const path = __nccwpck_require__(6928) // HFS, ext{2,3}, FAT do not, Node.js v0.10 does not function hasMillisResSync () { @@ -15178,7 +12327,7 @@ module.exports = { /***/ }), -/***/ 95338: +/***/ 6359: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -15237,14 +12386,14 @@ module.exports = options => { /***/ }), -/***/ 91559: +/***/ 2462: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const {constants: BufferConstants} = __nccwpck_require__(20181); +const {constants: BufferConstants} = __nccwpck_require__(181); const stream = __nccwpck_require__(2203); -const {promisify} = __nccwpck_require__(39023); -const bufferStream = __nccwpck_require__(95338); +const {promisify} = __nccwpck_require__(9023); +const bufferStream = __nccwpck_require__(6359); const streamPipelinePromisified = promisify(stream.pipeline); @@ -15305,14 +12454,14 @@ module.exports.MaxBufferError = MaxBufferError; /***/ }), -/***/ 62437: +/***/ 2435: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var isGlob = __nccwpck_require__(11753); -var pathPosixDirname = (__nccwpck_require__(16928).posix).dirname; -var isWin32 = (__nccwpck_require__(70857).platform)() === 'win32'; +var isGlob = __nccwpck_require__(686); +var pathPosixDirname = (__nccwpck_require__(6928).posix).dirname; +var isWin32 = (__nccwpck_require__(857).platform)() === 'win32'; var slash = '/'; var backslash = /\\/g; @@ -15354,16 +12503,16 @@ module.exports = function globParent(str, opts) { /***/ }), -/***/ 86353: +/***/ 1956: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const {promisify} = __nccwpck_require__(39023); -const fs = __nccwpck_require__(79896); -const path = __nccwpck_require__(16928); -const fastGlob = __nccwpck_require__(10484); -const gitIgnore = __nccwpck_require__(64134); -const slash = __nccwpck_require__(85737); +const {promisify} = __nccwpck_require__(9023); +const fs = __nccwpck_require__(9896); +const path = __nccwpck_require__(6928); +const fastGlob = __nccwpck_require__(2457); +const gitIgnore = __nccwpck_require__(3143); +const slash = __nccwpck_require__(5882); const DEFAULT_IGNORE = [ '**/node_modules/**', @@ -15481,17 +12630,17 @@ module.exports.sync = options => { /***/ }), -/***/ 46127: +/***/ 6245: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const fs = __nccwpck_require__(79896); -const arrayUnion = __nccwpck_require__(71187); -const merge2 = __nccwpck_require__(26606); -const fastGlob = __nccwpck_require__(10484); -const dirGlob = __nccwpck_require__(70804); -const gitignore = __nccwpck_require__(86353); -const {FilterStream, UniqueStream} = __nccwpck_require__(57211); +const fs = __nccwpck_require__(9896); +const arrayUnion = __nccwpck_require__(7049); +const merge2 = __nccwpck_require__(4031); +const fastGlob = __nccwpck_require__(2457); +const dirGlob = __nccwpck_require__(8797); +const gitignore = __nccwpck_require__(1956); +const {FilterStream, UniqueStream} = __nccwpck_require__(7332); const DEFAULT_FILTER = () => false; @@ -15669,7 +12818,7 @@ module.exports.gitignore = gitignore; /***/ }), -/***/ 57211: +/***/ 7332: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -15722,7 +12871,7 @@ module.exports = { /***/ }), -/***/ 7472: +/***/ 4648: /***/ ((module) => { @@ -15752,15 +12901,15 @@ function clone (obj) { /***/ }), -/***/ 61404: +/***/ 8692: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var fs = __nccwpck_require__(79896) -var polyfills = __nccwpck_require__(83545) -var legacy = __nccwpck_require__(52674) -var clone = __nccwpck_require__(7472) +var fs = __nccwpck_require__(9896) +var polyfills = __nccwpck_require__(6161) +var legacy = __nccwpck_require__(7050) +var clone = __nccwpck_require__(4648) -var util = __nccwpck_require__(39023) +var util = __nccwpck_require__(9023) /* istanbul ignore next - node 0.x polyfill */ var gracefulQueue @@ -15841,7 +12990,7 @@ if (!fs[gracefulQueue]) { if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || '')) { process.on('exit', function() { debug(fs[gracefulQueue]) - __nccwpck_require__(42613).equal(fs[gracefulQueue].length, 0) + __nccwpck_require__(2613).equal(fs[gracefulQueue].length, 0) }) } } @@ -16207,7 +13356,7 @@ function retry () { /***/ }), -/***/ 52674: +/***/ 7050: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { var Stream = (__nccwpck_require__(2203).Stream) @@ -16332,10 +13481,10 @@ function legacy (fs) { /***/ }), -/***/ 83545: +/***/ 6161: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var constants = __nccwpck_require__(49140) +var constants = __nccwpck_require__(9140) var origCwd = process.cwd var cwd = null @@ -16694,7 +13843,7 @@ function patch (fs) { /***/ }), -/***/ 73456: +/***/ 3865: /***/ ((__unused_webpack_module, exports) => { Object.defineProperty(exports, "__esModule", ({value:true}));exports.SIGNALS=void 0; @@ -16973,13 +14122,13 @@ standard:"other"}];exports.SIGNALS=SIGNALS; /***/ }), -/***/ 76594: +/***/ 4743: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -Object.defineProperty(exports, "__esModule", ({value:true}));exports.signalsByNumber=exports.signalsByName=void 0;var _os=__nccwpck_require__(70857); +Object.defineProperty(exports, "__esModule", ({value:true}));exports.signalsByNumber=exports.signalsByName=void 0;var _os=__nccwpck_require__(857); -var _signals=__nccwpck_require__(5690); -var _realtime=__nccwpck_require__(86946); +var _signals=__nccwpck_require__(5254); +var _realtime=__nccwpck_require__(347); @@ -17050,7 +14199,7 @@ const signalsByNumber=getSignalsByNumber();exports.signalsByNumber=signalsByNumb /***/ }), -/***/ 86946: +/***/ 347: /***/ ((__unused_webpack_module, exports) => { Object.defineProperty(exports, "__esModule", ({value:true}));exports.SIGRTMAX=exports.getRealtimeSignals=void 0; @@ -17075,13 +14224,13 @@ const SIGRTMAX=64;exports.SIGRTMAX=SIGRTMAX; /***/ }), -/***/ 5690: +/***/ 5254: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -Object.defineProperty(exports, "__esModule", ({value:true}));exports.getSignals=void 0;var _os=__nccwpck_require__(70857); +Object.defineProperty(exports, "__esModule", ({value:true}));exports.getSignals=void 0;var _os=__nccwpck_require__(857); -var _core=__nccwpck_require__(73456); -var _realtime=__nccwpck_require__(86946); +var _core=__nccwpck_require__(3865); +var _realtime=__nccwpck_require__(347); @@ -17116,7 +14265,7 @@ return{name,number,description,supported,action,forced,standard}; /***/ }), -/***/ 64134: +/***/ 3143: /***/ ((module) => { // A simple implementation of make-array @@ -17759,7 +14908,7 @@ if ( /***/ }), -/***/ 17280: +/***/ 9825: /***/ ((module) => { /*! @@ -17786,7 +14935,7 @@ module.exports = function isExtglob(str) { /***/ }), -/***/ 11753: +/***/ 686: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*! @@ -17796,7 +14945,7 @@ module.exports = function isExtglob(str) { * Released under the MIT License. */ -var isExtglob = __nccwpck_require__(17280); +var isExtglob = __nccwpck_require__(9825); var chars = { '{': '}', '(': ')', '[': ']'}; var strictCheck = function(str) { if (str[0] === '!') { @@ -17943,7 +15092,7 @@ module.exports = function isGlob(str, options) { /***/ }), -/***/ 97850: +/***/ 952: /***/ ((module) => { /*! @@ -17968,7 +15117,7 @@ module.exports = function(num) { /***/ }), -/***/ 81011: +/***/ 1066: /***/ ((module) => { @@ -18003,12 +15152,12 @@ module.exports = isStream; /***/ }), -/***/ 46390: +/***/ 2304: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const betterPathResolve = __nccwpck_require__(88843) -const path = __nccwpck_require__(16928) +const betterPathResolve = __nccwpck_require__(6916) +const path = __nccwpck_require__(6928) function isSubdir (parentDir, subdir) { const rParent = `${betterPathResolve(parentDir)}${path.sep}` @@ -18027,7 +15176,7 @@ module.exports = isSubdir /***/ }), -/***/ 65196: +/***/ 434: /***/ ((module, exports) => { /*! @@ -18061,15 +15210,15 @@ module.exports = isSubdir /***/ }), -/***/ 49648: +/***/ 7105: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var fs = __nccwpck_require__(79896) +var fs = __nccwpck_require__(9896) var core if (process.platform === 'win32' || global.TESTING_WINDOWS) { - core = __nccwpck_require__(73117) + core = __nccwpck_require__(6132) } else { - core = __nccwpck_require__(98341) + core = __nccwpck_require__(1778) } module.exports = isexe @@ -18125,13 +15274,13 @@ function sync (path, options) { /***/ }), -/***/ 98341: +/***/ 1778: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { module.exports = isexe isexe.sync = sync -var fs = __nccwpck_require__(79896) +var fs = __nccwpck_require__(9896) function isexe (path, options, cb) { fs.stat(path, function (er, stat) { @@ -18173,13 +15322,13 @@ function checkMode (stat, options) { /***/ }), -/***/ 73117: +/***/ 6132: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { module.exports = isexe isexe.sync = sync -var fs = __nccwpck_require__(79896) +var fs = __nccwpck_require__(9896) function checkPathExt (path, options) { var pathext = options.pathExt !== undefined ? @@ -18222,61 +15371,67 @@ function sync (path, options) { /***/ }), -/***/ 30677: +/***/ 2301: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var loader = __nccwpck_require__(50586); -var dumper = __nccwpck_require__(46904); +var yaml = __nccwpck_require__(4444); -function renamed(from, to) { +module.exports = yaml; + + +/***/ }), + +/***/ 4444: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + + + + +var loader = __nccwpck_require__(8512); +var dumper = __nccwpck_require__(2634); + + +function deprecated(name) { return function () { - throw new Error('Function yaml.' + from + ' is removed in js-yaml 4. ' + - 'Use yaml.' + to + ' instead, which is now safe by default.'); + throw new Error('Function ' + name + ' is deprecated and cannot be used.'); }; } -module.exports.Type = __nccwpck_require__(1089); -module.exports.Schema = __nccwpck_require__(59610); -module.exports.FAILSAFE_SCHEMA = __nccwpck_require__(82420); -module.exports.JSON_SCHEMA = __nccwpck_require__(98971); -module.exports.CORE_SCHEMA = __nccwpck_require__(52254); -module.exports.DEFAULT_SCHEMA = __nccwpck_require__(7436); +module.exports.Type = __nccwpck_require__(5991); +module.exports.Schema = __nccwpck_require__(6531); +module.exports.FAILSAFE_SCHEMA = __nccwpck_require__(910); +module.exports.JSON_SCHEMA = __nccwpck_require__(4441); +module.exports.CORE_SCHEMA = __nccwpck_require__(5600); +module.exports.DEFAULT_SAFE_SCHEMA = __nccwpck_require__(1276); +module.exports.DEFAULT_FULL_SCHEMA = __nccwpck_require__(1280); module.exports.load = loader.load; module.exports.loadAll = loader.loadAll; +module.exports.safeLoad = loader.safeLoad; +module.exports.safeLoadAll = loader.safeLoadAll; module.exports.dump = dumper.dump; -module.exports.YAMLException = __nccwpck_require__(2828); +module.exports.safeDump = dumper.safeDump; +module.exports.YAMLException = __nccwpck_require__(7242); -// Re-export all types in case user wants to create custom schema -module.exports.types = { - binary: __nccwpck_require__(1113), - float: __nccwpck_require__(83492), - map: __nccwpck_require__(88432), - null: __nccwpck_require__(77177), - pairs: __nccwpck_require__(11503), - set: __nccwpck_require__(25098), - timestamp: __nccwpck_require__(35298), - bool: __nccwpck_require__(97300), - int: __nccwpck_require__(99491), - merge: __nccwpck_require__(70954), - omap: __nccwpck_require__(28677), - seq: __nccwpck_require__(43733), - str: __nccwpck_require__(41845) -}; +// Deprecated schema names from JS-YAML 2.0.x +module.exports.MINIMAL_SCHEMA = __nccwpck_require__(910); +module.exports.SAFE_SCHEMA = __nccwpck_require__(1276); +module.exports.DEFAULT_SCHEMA = __nccwpck_require__(1280); -// Removed functions from JS-YAML 3.0.x -module.exports.safeLoad = renamed('safeLoad', 'load'); -module.exports.safeLoadAll = renamed('safeLoadAll', 'loadAll'); -module.exports.safeDump = renamed('safeDump', 'dump'); +// Deprecated functions from JS-YAML 1.x.x +module.exports.scan = deprecated('scan'); +module.exports.parse = deprecated('parse'); +module.exports.compose = deprecated('compose'); +module.exports.addConstructor = deprecated('addConstructor'); /***/ }), -/***/ 23324: +/***/ 9082: /***/ ((module) => { @@ -18342,21 +15497,21 @@ module.exports.extend = extend; /***/ }), -/***/ 46904: +/***/ 2634: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*eslint-disable no-use-before-define*/ -var common = __nccwpck_require__(23324); -var YAMLException = __nccwpck_require__(2828); -var DEFAULT_SCHEMA = __nccwpck_require__(7436); +var common = __nccwpck_require__(9082); +var YAMLException = __nccwpck_require__(7242); +var DEFAULT_FULL_SCHEMA = __nccwpck_require__(1280); +var DEFAULT_SAFE_SCHEMA = __nccwpck_require__(1276); var _toString = Object.prototype.toString; var _hasOwnProperty = Object.prototype.hasOwnProperty; -var CHAR_BOM = 0xFEFF; var CHAR_TAB = 0x09; /* Tab */ var CHAR_LINE_FEED = 0x0A; /* LF */ var CHAR_CARRIAGE_RETURN = 0x0D; /* CR */ @@ -18405,8 +15560,6 @@ var DEPRECATED_BOOLEANS_SYNTAX = [ 'n', 'N', 'no', 'No', 'NO', 'off', 'Off', 'OFF' ]; -var DEPRECATED_BASE60_SYNTAX = /^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/; - function compileStyleMap(schema, map) { var result, keys, index, length, tag, style, type; @@ -18455,12 +15608,8 @@ function encodeHex(character) { return '\\' + handle + common.repeat('0', length - string.length) + string; } - -var QUOTING_TYPE_SINGLE = 1, - QUOTING_TYPE_DOUBLE = 2; - function State(options) { - this.schema = options['schema'] || DEFAULT_SCHEMA; + this.schema = options['schema'] || DEFAULT_FULL_SCHEMA; this.indent = Math.max(1, (options['indent'] || 2)); this.noArrayIndent = options['noArrayIndent'] || false; this.skipInvalid = options['skipInvalid'] || false; @@ -18471,9 +15620,6 @@ function State(options) { this.noRefs = options['noRefs'] || false; this.noCompatMode = options['noCompatMode'] || false; this.condenseFlow = options['condenseFlow'] || false; - this.quotingType = options['quotingType'] === '"' ? QUOTING_TYPE_DOUBLE : QUOTING_TYPE_SINGLE; - this.forceQuotes = options['forceQuotes'] || false; - this.replacer = typeof options['replacer'] === 'function' ? options['replacer'] : null; this.implicitTypes = this.schema.compiledImplicit; this.explicitTypes = this.schema.compiledExplicit; @@ -18542,60 +15688,47 @@ function isWhitespace(c) { function isPrintable(c) { return (0x00020 <= c && c <= 0x00007E) || ((0x000A1 <= c && c <= 0x00D7FF) && c !== 0x2028 && c !== 0x2029) - || ((0x0E000 <= c && c <= 0x00FFFD) && c !== CHAR_BOM) + || ((0x0E000 <= c && c <= 0x00FFFD) && c !== 0xFEFF /* BOM */) || (0x10000 <= c && c <= 0x10FFFF); } // [34] ns-char ::= nb-char - s-white // [27] nb-char ::= c-printable - b-char - c-byte-order-mark // [26] b-char ::= b-line-feed | b-carriage-return -// Including s-white (for some reason, examples doesn't match specs in this aspect) -// ns-char ::= c-printable - b-line-feed - b-carriage-return - c-byte-order-mark -function isNsCharOrWhitespace(c) { - return isPrintable(c) - && c !== CHAR_BOM - // - b-char +// [24] b-line-feed ::= #xA /* LF */ +// [25] b-carriage-return ::= #xD /* CR */ +// [3] c-byte-order-mark ::= #xFEFF +function isNsChar(c) { + return isPrintable(c) && !isWhitespace(c) + // byte-order-mark + && c !== 0xFEFF + // b-char && c !== CHAR_CARRIAGE_RETURN && c !== CHAR_LINE_FEED; } -// [127] ns-plain-safe(c) ::= c = flow-out ⇒ ns-plain-safe-out -// c = flow-in ⇒ ns-plain-safe-in -// c = block-key ⇒ ns-plain-safe-out -// c = flow-key ⇒ ns-plain-safe-in -// [128] ns-plain-safe-out ::= ns-char -// [129] ns-plain-safe-in ::= ns-char - c-flow-indicator -// [130] ns-plain-char(c) ::= ( ns-plain-safe(c) - “:” - “#” ) -// | ( /* An ns-char preceding */ “#” ) -// | ( “:” /* Followed by an ns-plain-safe(c) */ ) -function isPlainSafe(c, prev, inblock) { - var cIsNsCharOrWhitespace = isNsCharOrWhitespace(c); - var cIsNsChar = cIsNsCharOrWhitespace && !isWhitespace(c); - return ( - // ns-plain-safe - inblock ? // c = flow-in - cIsNsCharOrWhitespace - : cIsNsCharOrWhitespace - // - c-flow-indicator - && c !== CHAR_COMMA - && c !== CHAR_LEFT_SQUARE_BRACKET - && c !== CHAR_RIGHT_SQUARE_BRACKET - && c !== CHAR_LEFT_CURLY_BRACKET - && c !== CHAR_RIGHT_CURLY_BRACKET - ) - // ns-plain-char - && c !== CHAR_SHARP // false on '#' - && !(prev === CHAR_COLON && !cIsNsChar) // false on ': ' - || (isNsCharOrWhitespace(prev) && !isWhitespace(prev) && c === CHAR_SHARP) // change to true on '[^ ]#' - || (prev === CHAR_COLON && cIsNsChar); // change to true on ':[^ ]' +// Simplified test for values allowed after the first character in plain style. +function isPlainSafe(c, prev) { + // Uses a subset of nb-char - c-flow-indicator - ":" - "#" + // where nb-char ::= c-printable - b-char - c-byte-order-mark. + return isPrintable(c) && c !== 0xFEFF + // - c-flow-indicator + && c !== CHAR_COMMA + && c !== CHAR_LEFT_SQUARE_BRACKET + && c !== CHAR_RIGHT_SQUARE_BRACKET + && c !== CHAR_LEFT_CURLY_BRACKET + && c !== CHAR_RIGHT_CURLY_BRACKET + // - ":" - "#" + // /* An ns-char preceding */ "#" + && c !== CHAR_COLON + && ((c !== CHAR_SHARP) || (prev && isNsChar(prev))); } // Simplified test for values allowed as the first character in plain style. function isPlainSafeFirst(c) { // Uses a subset of ns-char - c-indicator // where ns-char = nb-char - s-white. - // No support of ( ( “?” | “:” | “-” ) /* Followed by an ns-plain-safe(c)) */ ) part - return isPrintable(c) && c !== CHAR_BOM + return isPrintable(c) && c !== 0xFEFF && !isWhitespace(c) // - s-white // - (c-indicator ::= // “-” | “?” | “:” | “,” | “[” | “]” | “{” | “}” @@ -18623,25 +15756,6 @@ function isPlainSafeFirst(c) { && c !== CHAR_GRAVE_ACCENT; } -// Simplified test for values allowed as the last character in plain style. -function isPlainSafeLast(c) { - // just not whitespace or colon, it will be checked to be plain character later - return !isWhitespace(c) && c !== CHAR_COLON; -} - -// Same as 'string'.codePointAt(pos), but works in older browsers. -function codePointAt(string, pos) { - var first = string.charCodeAt(pos), second; - if (first >= 0xD800 && first <= 0xDBFF && pos + 1 < string.length) { - second = string.charCodeAt(pos + 1); - if (second >= 0xDC00 && second <= 0xDFFF) { - // https://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae - return (first - 0xD800) * 0x400 + second - 0xDC00 + 0x10000; - } - } - return first; -} - // Determines whether block indentation indicator is required. function needIndentIndicator(string) { var leadingSpaceRe = /^\n* /; @@ -18661,34 +15775,31 @@ var STYLE_PLAIN = 1, // STYLE_PLAIN or STYLE_SINGLE => no \n are in the string. // STYLE_LITERAL => no lines are suitable for folding (or lineWidth is -1). // STYLE_FOLDED => a line > lineWidth and can be folded (and lineWidth != -1). -function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, - testAmbiguousType, quotingType, forceQuotes, inblock) { - +function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, testAmbiguousType) { var i; - var char = 0; - var prevChar = null; + var char, prev_char; var hasLineBreak = false; var hasFoldableLine = false; // only checked if shouldTrackWidth var shouldTrackWidth = lineWidth !== -1; var previousLineBreak = -1; // count the first line correctly - var plain = isPlainSafeFirst(codePointAt(string, 0)) - && isPlainSafeLast(codePointAt(string, string.length - 1)); + var plain = isPlainSafeFirst(string.charCodeAt(0)) + && !isWhitespace(string.charCodeAt(string.length - 1)); - if (singleLineOnly || forceQuotes) { + if (singleLineOnly) { // Case: no block styles. // Check for disallowed characters to rule out plain and single. - for (i = 0; i < string.length; char >= 0x10000 ? i += 2 : i++) { - char = codePointAt(string, i); + for (i = 0; i < string.length; i++) { + char = string.charCodeAt(i); if (!isPrintable(char)) { return STYLE_DOUBLE; } - plain = plain && isPlainSafe(char, prevChar, inblock); - prevChar = char; + prev_char = i > 0 ? string.charCodeAt(i - 1) : null; + plain = plain && isPlainSafe(char, prev_char); } } else { // Case: block styles permitted. - for (i = 0; i < string.length; char >= 0x10000 ? i += 2 : i++) { - char = codePointAt(string, i); + for (i = 0; i < string.length; i++) { + char = string.charCodeAt(i); if (char === CHAR_LINE_FEED) { hasLineBreak = true; // Check if any line can be folded. @@ -18702,8 +15813,8 @@ function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, } else if (!isPrintable(char)) { return STYLE_DOUBLE; } - plain = plain && isPlainSafe(char, prevChar, inblock); - prevChar = char; + prev_char = i > 0 ? string.charCodeAt(i - 1) : null; + plain = plain && isPlainSafe(char, prev_char); } // in case the end is missing a \n hasFoldableLine = hasFoldableLine || (shouldTrackWidth && @@ -18716,10 +15827,8 @@ function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, if (!hasLineBreak && !hasFoldableLine) { // Strings interpretable as another type have to be quoted; // e.g. the string 'true' vs. the boolean true. - if (plain && !forceQuotes && !testAmbiguousType(string)) { - return STYLE_PLAIN; - } - return quotingType === QUOTING_TYPE_DOUBLE ? STYLE_DOUBLE : STYLE_SINGLE; + return plain && !testAmbiguousType(string) + ? STYLE_PLAIN : STYLE_SINGLE; } // Edge case: block indentation indicator can only have one digit. if (indentPerLevel > 9 && needIndentIndicator(string)) { @@ -18727,10 +15836,7 @@ function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, } // At this point we know block styles are valid. // Prefer literal style unless we want to fold. - if (!forceQuotes) { - return hasFoldableLine ? STYLE_FOLDED : STYLE_LITERAL; - } - return quotingType === QUOTING_TYPE_DOUBLE ? STYLE_DOUBLE : STYLE_SINGLE; + return hasFoldableLine ? STYLE_FOLDED : STYLE_LITERAL; } // Note: line breaking/folding is implemented for only the folded style. @@ -18739,15 +15845,14 @@ function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, // • No ending newline => unaffected; already using strip "-" chomping. // • Ending newline => removed then restored. // Importantly, this keeps the "+" chomp indicator from gaining an extra line. -function writeScalar(state, string, level, iskey, inblock) { +function writeScalar(state, string, level, iskey) { state.dump = (function () { if (string.length === 0) { - return state.quotingType === QUOTING_TYPE_DOUBLE ? '""' : "''"; + return "''"; } - if (!state.noCompatMode) { - if (DEPRECATED_BOOLEANS_SYNTAX.indexOf(string) !== -1 || DEPRECATED_BASE60_SYNTAX.test(string)) { - return state.quotingType === QUOTING_TYPE_DOUBLE ? ('"' + string + '"') : ("'" + string + "'"); - } + if (!state.noCompatMode && + DEPRECATED_BOOLEANS_SYNTAX.indexOf(string) !== -1) { + return "'" + string + "'"; } var indent = state.indent * Math.max(1, level); // no 0-indent scalars @@ -18769,9 +15874,7 @@ function writeScalar(state, string, level, iskey, inblock) { return testImplicitResolving(state, string); } - switch (chooseScalarStyle(string, singleLineOnly, state.indent, lineWidth, - testAmbiguity, state.quotingType, state.forceQuotes && !iskey, inblock)) { - + switch (chooseScalarStyle(string, singleLineOnly, state.indent, lineWidth, testAmbiguity)) { case STYLE_PLAIN: return string; case STYLE_SINGLE: @@ -18888,19 +15991,25 @@ function foldLine(line, width) { // Escapes a double-quoted string. function escapeString(string) { var result = ''; - var char = 0; + var char, nextChar; var escapeSeq; - for (var i = 0; i < string.length; char >= 0x10000 ? i += 2 : i++) { - char = codePointAt(string, i); - escapeSeq = ESCAPE_SEQUENCES[char]; - - if (!escapeSeq && isPrintable(char)) { - result += string[i]; - if (char >= 0x10000) result += string[i + 1]; - } else { - result += escapeSeq || encodeHex(char); + for (var i = 0; i < string.length; i++) { + char = string.charCodeAt(i); + // Check for surrogate pairs (reference Unicode 3.0 section "3.7 Surrogates"). + if (char >= 0xD800 && char <= 0xDBFF/* high surrogate */) { + nextChar = string.charCodeAt(i + 1); + if (nextChar >= 0xDC00 && nextChar <= 0xDFFF/* low surrogate */) { + // Combine the surrogate pair and store it escaped. + result += encodeHex((char - 0xD800) * 0x400 + nextChar - 0xDC00 + 0x10000); + // Advance index one extra since we already used that char here. + i++; continue; + } } + escapeSeq = ESCAPE_SEQUENCES[char]; + result += !escapeSeq && isPrintable(char) + ? string[i] + : escapeSeq || encodeHex(char); } return result; @@ -18910,22 +16019,12 @@ function writeFlowSequence(state, level, object) { var _result = '', _tag = state.tag, index, - length, - value; + length; for (index = 0, length = object.length; index < length; index += 1) { - value = object[index]; - - if (state.replacer) { - value = state.replacer.call(object, String(index), value); - } - - // Write only valid elements, put null instead of invalid elements. - if (writeNode(state, level, value, false, false) || - (typeof value === 'undefined' && - writeNode(state, level, null, false, false))) { - - if (_result !== '') _result += ',' + (!state.condenseFlow ? ' ' : ''); + // Write only valid elements. + if (writeNode(state, level, object[index], false, false)) { + if (index !== 0) _result += ',' + (!state.condenseFlow ? ' ' : ''); _result += state.dump; } } @@ -18938,22 +16037,12 @@ function writeBlockSequence(state, level, object, compact) { var _result = '', _tag = state.tag, index, - length, - value; + length; for (index = 0, length = object.length; index < length; index += 1) { - value = object[index]; - - if (state.replacer) { - value = state.replacer.call(object, String(index), value); - } - - // Write only valid elements, put null instead of invalid elements. - if (writeNode(state, level + 1, value, true, true, false, true) || - (typeof value === 'undefined' && - writeNode(state, level + 1, null, true, true, false, true))) { - - if (!compact || _result !== '') { + // Write only valid elements. + if (writeNode(state, level + 1, object[index], true, true)) { + if (!compact || index !== 0) { _result += generateNextLine(state, level); } @@ -18984,17 +16073,13 @@ function writeFlowMapping(state, level, object) { for (index = 0, length = objectKeyList.length; index < length; index += 1) { pairBuffer = ''; - if (_result !== '') pairBuffer += ', '; + if (index !== 0) pairBuffer += ', '; if (state.condenseFlow) pairBuffer += '"'; objectKey = objectKeyList[index]; objectValue = object[objectKey]; - if (state.replacer) { - objectValue = state.replacer.call(object, objectKey, objectValue); - } - if (!writeNode(state, level, objectKey, false, false)) { continue; // Skip this pair because of invalid key; } @@ -19043,17 +16128,13 @@ function writeBlockMapping(state, level, object, compact) { for (index = 0, length = objectKeyList.length; index < length; index += 1) { pairBuffer = ''; - if (!compact || _result !== '') { + if (!compact || index !== 0) { pairBuffer += generateNextLine(state, level); } objectKey = objectKeyList[index]; objectValue = object[objectKey]; - if (state.replacer) { - objectValue = state.replacer.call(object, objectKey, objectValue); - } - if (!writeNode(state, level + 1, objectKey, true, true, true)) { continue; // Skip this pair because of invalid key. } @@ -19107,15 +16188,7 @@ function detectType(state, object, explicit) { (!type.instanceOf || ((typeof object === 'object') && (object instanceof type.instanceOf))) && (!type.predicate || type.predicate(object))) { - if (explicit) { - if (type.multi && type.representName) { - state.tag = type.representName(object); - } else { - state.tag = type.tag; - } - } else { - state.tag = '?'; - } + state.tag = explicit ? type.tag : '?'; if (type.represent) { style = state.styleMap[type.tag] || type.defaultStyle; @@ -19141,7 +16214,7 @@ function detectType(state, object, explicit) { // Serializes `object` and writes it to global `result`. // Returns true on success, or false on invalid object. // -function writeNode(state, level, object, block, compact, iskey, isblockseq) { +function writeNode(state, level, object, block, compact, iskey) { state.tag = null; state.dump = object; @@ -19150,8 +16223,6 @@ function writeNode(state, level, object, block, compact, iskey, isblockseq) { } var type = _toString.call(state.dump); - var inblock = block; - var tagStr; if (block) { block = (state.flowLevel < 0 || state.flowLevel > level); @@ -19189,59 +16260,29 @@ function writeNode(state, level, object, block, compact, iskey, isblockseq) { } } } else if (type === '[object Array]') { + var arrayLevel = (state.noArrayIndent && (level > 0)) ? level - 1 : level; if (block && (state.dump.length !== 0)) { - if (state.noArrayIndent && !isblockseq && level > 0) { - writeBlockSequence(state, level - 1, state.dump, compact); - } else { - writeBlockSequence(state, level, state.dump, compact); - } + writeBlockSequence(state, arrayLevel, state.dump, compact); if (duplicate) { state.dump = '&ref_' + duplicateIndex + state.dump; } } else { - writeFlowSequence(state, level, state.dump); + writeFlowSequence(state, arrayLevel, state.dump); if (duplicate) { state.dump = '&ref_' + duplicateIndex + ' ' + state.dump; } } } else if (type === '[object String]') { if (state.tag !== '?') { - writeScalar(state, state.dump, level, iskey, inblock); + writeScalar(state, state.dump, level, iskey); } - } else if (type === '[object Undefined]') { - return false; } else { if (state.skipInvalid) return false; throw new YAMLException('unacceptable kind of an object to dump ' + type); } if (state.tag !== null && state.tag !== '?') { - // Need to encode all characters except those allowed by the spec: - // - // [35] ns-dec-digit ::= [#x30-#x39] /* 0-9 */ - // [36] ns-hex-digit ::= ns-dec-digit - // | [#x41-#x46] /* A-F */ | [#x61-#x66] /* a-f */ - // [37] ns-ascii-letter ::= [#x41-#x5A] /* A-Z */ | [#x61-#x7A] /* a-z */ - // [38] ns-word-char ::= ns-dec-digit | ns-ascii-letter | “-” - // [39] ns-uri-char ::= “%” ns-hex-digit ns-hex-digit | ns-word-char | “#” - // | “;” | “/” | “?” | “:” | “@” | “&” | “=” | “+” | “$” | “,” - // | “_” | “.” | “!” | “~” | “*” | “'” | “(” | “)” | “[” | “]” - // - // Also need to encode '!' because it has special meaning (end of tag prefix). - // - tagStr = encodeURI( - state.tag[0] === '!' ? state.tag.slice(1) : state.tag - ).replace(/!/g, '%21'); - - if (state.tag[0] === '!') { - tagStr = '!' + tagStr; - } else if (tagStr.slice(0, 18) === 'tag:yaml.org,2002:') { - tagStr = '!!' + tagStr.slice(18); - } else { - tagStr = '!<' + tagStr + '>'; - } - - state.dump = tagStr + ' ' + state.dump; + state.dump = '!<' + state.tag + '> ' + state.dump; } } @@ -19298,49 +16339,28 @@ function dump(input, options) { if (!state.noRefs) getDuplicateReferences(input, state); - var value = input; - - if (state.replacer) { - value = state.replacer.call({ '': value }, '', value); - } - - if (writeNode(state, 0, value, true, true)) return state.dump + '\n'; + if (writeNode(state, 0, input, true, true)) return state.dump + '\n'; return ''; } -module.exports.dump = dump; +function safeDump(input, options) { + return dump(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); +} + +module.exports.dump = dump; +module.exports.safeDump = safeDump; /***/ }), -/***/ 2828: +/***/ 7242: /***/ ((module) => { // YAML error class. http://stackoverflow.com/questions/8458984 // - -function formatError(exception, compact) { - var where = '', message = exception.reason || '(unknown reason)'; - - if (!exception.mark) return message; - - if (exception.mark.name) { - where += 'in "' + exception.mark.name + '" '; - } - - where += '(' + (exception.mark.line + 1) + ':' + (exception.mark.column + 1) + ')'; - - if (!compact && exception.mark.snippet) { - where += '\n\n' + exception.mark.snippet; - } - - return message + ' ' + where; -} - - function YAMLException(reason, mark) { // Super constructor Error.call(this); @@ -19348,7 +16368,7 @@ function YAMLException(reason, mark) { this.name = 'YAMLException'; this.reason = reason; this.mark = mark; - this.message = formatError(this, false); + this.message = (this.reason || '(unknown reason)') + (this.mark ? ' ' + this.mark.toString() : ''); // Include stack trace in error object if (Error.captureStackTrace) { @@ -19367,7 +16387,15 @@ YAMLException.prototype.constructor = YAMLException; YAMLException.prototype.toString = function toString(compact) { - return this.name + ': ' + formatError(this, compact); + var result = this.name + ': '; + + result += this.reason || '(unknown reason)'; + + if (!compact && this.mark) { + result += ' ' + this.mark.toString(); + } + + return result; }; @@ -19376,17 +16404,18 @@ module.exports = YAMLException; /***/ }), -/***/ 50586: +/***/ 8512: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*eslint-disable max-len,no-use-before-define*/ -var common = __nccwpck_require__(23324); -var YAMLException = __nccwpck_require__(2828); -var makeSnippet = __nccwpck_require__(50732); -var DEFAULT_SCHEMA = __nccwpck_require__(7436); +var common = __nccwpck_require__(9082); +var YAMLException = __nccwpck_require__(7242); +var Mark = __nccwpck_require__(8258); +var DEFAULT_SAFE_SCHEMA = __nccwpck_require__(1276); +var DEFAULT_FULL_SCHEMA = __nccwpck_require__(1280); var _hasOwnProperty = Object.prototype.hasOwnProperty; @@ -19529,12 +16558,9 @@ function State(input, options) { this.input = input; this.filename = options['filename'] || null; - this.schema = options['schema'] || DEFAULT_SCHEMA; + this.schema = options['schema'] || DEFAULT_FULL_SCHEMA; this.onWarning = options['onWarning'] || null; - // (Hidden) Remove? makes the loader to expect YAML 1.1 documents - // if such documents have no explicit %YAML directive this.legacy = options['legacy'] || false; - this.json = options['json'] || false; this.listener = options['listener'] || null; @@ -19547,10 +16573,6 @@ function State(input, options) { this.lineStart = 0; this.lineIndent = 0; - // position of first leading tab in the current line, - // used to make sure there are no tabs in the indentation - this.firstTabInLine = -1; - this.documents = []; /* @@ -19567,17 +16589,9 @@ function State(input, options) { function generateError(state, message) { - var mark = { - name: state.filename, - buffer: state.input.slice(0, -1), // omit trailing \0 - position: state.position, - line: state.line, - column: state.position - state.lineStart - }; - - mark.snippet = makeSnippet(mark); - - return new YAMLException(message, mark); + return new YAMLException( + message, + new Mark(state.filename, state.input, state.position, state.line, (state.position - state.lineStart))); } function throwError(state, message) { @@ -19649,12 +16663,6 @@ var directiveHandlers = { throwError(state, 'ill-formed tag prefix (second argument) of the TAG directive'); } - try { - prefix = decodeURIComponent(prefix); - } catch (err) { - throwError(state, 'tag prefix is malformed: ' + prefix); - } - state.tagMap[handle] = prefix; } }; @@ -19701,9 +16709,7 @@ function mergeMappings(state, destination, source, overridableKeys) { } } -function storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, - startLine, startLineStart, startPos) { - +function storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, startLine, startPos) { var index, quantity; // The output is a plain object here, so keys can only be strings. @@ -19750,11 +16756,9 @@ function storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valu !_hasOwnProperty.call(overridableKeys, keyNode) && _hasOwnProperty.call(_result, keyNode)) { state.line = startLine || state.line; - state.lineStart = startLineStart || state.lineStart; state.position = startPos || state.position; throwError(state, 'duplicated mapping key'); } - setProperty(_result, keyNode, valueNode); delete overridableKeys[keyNode]; } @@ -19780,7 +16784,6 @@ function readLineBreak(state) { state.line += 1; state.lineStart = state.position; - state.firstTabInLine = -1; } function skipSeparationSpace(state, allowComments, checkIndent) { @@ -19789,9 +16792,6 @@ function skipSeparationSpace(state, allowComments, checkIndent) { while (ch !== 0) { while (is_WHITE_SPACE(ch)) { - if (ch === 0x09/* Tab */ && state.firstTabInLine === -1) { - state.firstTabInLine = state.position; - } ch = state.input.charCodeAt(++state.position); } @@ -20093,8 +17093,6 @@ function readDoubleQuotedScalar(state, nodeIndent) { function readFlowCollection(state, nodeIndent) { var readNext = true, _line, - _lineStart, - _pos, _tag = state.tag, _result, _anchor = state.anchor, @@ -20103,7 +17101,7 @@ function readFlowCollection(state, nodeIndent) { isPair, isExplicitPair, isMapping, - overridableKeys = Object.create(null), + overridableKeys = {}, keyNode, keyTag, valueNode, @@ -20143,9 +17141,6 @@ function readFlowCollection(state, nodeIndent) { return true; } else if (!readNext) { throwError(state, 'missed comma between flow collection entries'); - } else if (ch === 0x2C/* , */) { - // "flow collection entries can never be completely empty", as per YAML 1.2, section 7.4 - throwError(state, "expected the node content, but found ','"); } keyTag = keyNode = valueNode = null; @@ -20161,9 +17156,7 @@ function readFlowCollection(state, nodeIndent) { } } - _line = state.line; // Save the current line. - _lineStart = state.lineStart; - _pos = state.position; + _line = state.line; composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true); keyTag = state.tag; keyNode = state.result; @@ -20180,9 +17173,9 @@ function readFlowCollection(state, nodeIndent) { } if (isMapping) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _line, _lineStart, _pos); + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode); } else if (isPair) { - _result.push(storeMappingPair(state, null, overridableKeys, keyTag, keyNode, valueNode, _line, _lineStart, _pos)); + _result.push(storeMappingPair(state, null, overridableKeys, keyTag, keyNode, valueNode)); } else { _result.push(keyNode); } @@ -20354,10 +17347,6 @@ function readBlockSequence(state, nodeIndent) { detected = false, ch; - // there is a leading tab before this token, so it can't be a block sequence/mapping; - // it can still be flow sequence/mapping or a scalar - if (state.firstTabInLine !== -1) return false; - if (state.anchor !== null) { state.anchorMap[state.anchor] = _result; } @@ -20365,10 +17354,6 @@ function readBlockSequence(state, nodeIndent) { ch = state.input.charCodeAt(state.position); while (ch !== 0) { - if (state.firstTabInLine !== -1) { - state.position = state.firstTabInLine; - throwError(state, 'tab characters must not be used in indentation'); - } if (ch !== 0x2D/* - */) { break; @@ -20419,13 +17404,11 @@ function readBlockMapping(state, nodeIndent, flowIndent) { var following, allowCompact, _line, - _keyLine, - _keyLineStart, - _keyPos, + _pos, _tag = state.tag, _anchor = state.anchor, _result = {}, - overridableKeys = Object.create(null), + overridableKeys = {}, keyTag = null, keyNode = null, valueNode = null, @@ -20433,10 +17416,6 @@ function readBlockMapping(state, nodeIndent, flowIndent) { detected = false, ch; - // there is a leading tab before this token, so it can't be a block sequence/mapping; - // it can still be flow sequence/mapping or a scalar - if (state.firstTabInLine !== -1) return false; - if (state.anchor !== null) { state.anchorMap[state.anchor] = _result; } @@ -20444,13 +17423,9 @@ function readBlockMapping(state, nodeIndent, flowIndent) { ch = state.input.charCodeAt(state.position); while (ch !== 0) { - if (!atExplicitKey && state.firstTabInLine !== -1) { - state.position = state.firstTabInLine; - throwError(state, 'tab characters must not be used in indentation'); - } - following = state.input.charCodeAt(state.position + 1); _line = state.line; // Save the current line. + _pos = state.position; // // Explicit notation case. There are two separate blocks: @@ -20460,7 +17435,7 @@ function readBlockMapping(state, nodeIndent, flowIndent) { if (ch === 0x3F/* ? */) { if (atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null, _keyLine, _keyLineStart, _keyPos); + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null); keyTag = keyNode = valueNode = null; } @@ -20483,16 +17458,7 @@ function readBlockMapping(state, nodeIndent, flowIndent) { // // Implicit notation case. Flow-style node as the key first, then ":", and the value. // - } else { - _keyLine = state.line; - _keyLineStart = state.lineStart; - _keyPos = state.position; - - if (!composeNode(state, flowIndent, CONTEXT_FLOW_OUT, false, true)) { - // Neither implicit nor explicit notation. - // Reading is done. Go to the epilogue. - break; - } + } else if (composeNode(state, flowIndent, CONTEXT_FLOW_OUT, false, true)) { if (state.line === _line) { ch = state.input.charCodeAt(state.position); @@ -20509,7 +17475,7 @@ function readBlockMapping(state, nodeIndent, flowIndent) { } if (atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null, _keyLine, _keyLineStart, _keyPos); + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null); keyTag = keyNode = valueNode = null; } @@ -20536,18 +17502,15 @@ function readBlockMapping(state, nodeIndent, flowIndent) { state.anchor = _anchor; return true; // Keep the result of `composeNode`. } + + } else { + break; // Reading is done. Go to the epilogue. } // // Common reading code for both explicit and implicit notations. // if (state.line === _line || state.lineIndent > nodeIndent) { - if (atExplicitKey) { - _keyLine = state.line; - _keyLineStart = state.lineStart; - _keyPos = state.position; - } - if (composeNode(state, nodeIndent, CONTEXT_BLOCK_OUT, true, allowCompact)) { if (atExplicitKey) { keyNode = state.result; @@ -20557,7 +17520,7 @@ function readBlockMapping(state, nodeIndent, flowIndent) { } if (!atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _keyLine, _keyLineStart, _keyPos); + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _line, _pos); keyTag = keyNode = valueNode = null; } @@ -20565,7 +17528,7 @@ function readBlockMapping(state, nodeIndent, flowIndent) { ch = state.input.charCodeAt(state.position); } - if ((state.line === _line || state.lineIndent > nodeIndent) && (ch !== 0)) { + if (state.lineIndent > nodeIndent && (ch !== 0)) { throwError(state, 'bad indentation of a mapping entry'); } else if (state.lineIndent < nodeIndent) { break; @@ -20578,7 +17541,7 @@ function readBlockMapping(state, nodeIndent, flowIndent) { // Special case: last mapping's node contains only the key in explicit notation. if (atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null, _keyLine, _keyLineStart, _keyPos); + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null); } // Expose the resulting mapping. @@ -20667,12 +17630,6 @@ function readTagProperty(state) { throwError(state, 'tag name cannot contain such characters: ' + tagName); } - try { - tagName = decodeURIComponent(tagName); - } catch (err) { - throwError(state, 'tag name is malformed: ' + tagName); - } - if (isVerbatim) { state.tag = tagName; @@ -20758,7 +17715,6 @@ function composeNode(state, parentIndent, nodeContext, allowToSeek, allowCompact hasContent = false, typeIndex, typeQuantity, - typeList, type, flowIndent, blockIndent; @@ -20860,66 +17816,48 @@ function composeNode(state, parentIndent, nodeContext, allowToSeek, allowCompact } } - if (state.tag === null) { - if (state.anchor !== null) { - state.anchorMap[state.anchor] = state.result; - } + if (state.tag !== null && state.tag !== '!') { + if (state.tag === '?') { + // Implicit resolving is not allowed for non-scalar types, and '?' + // non-specific tag is only automatically assigned to plain scalars. + // + // We only need to check kind conformity in case user explicitly assigns '?' + // tag, for example like this: "! [0]" + // + if (state.result !== null && state.kind !== 'scalar') { + throwError(state, 'unacceptable node kind for ! tag; it should be "scalar", not "' + state.kind + '"'); + } - } else if (state.tag === '?') { - // Implicit resolving is not allowed for non-scalar types, and '?' - // non-specific tag is only automatically assigned to plain scalars. - // - // We only need to check kind conformity in case user explicitly assigns '?' - // tag, for example like this: "! [0]" - // - if (state.result !== null && state.kind !== 'scalar') { - throwError(state, 'unacceptable node kind for ! tag; it should be "scalar", not "' + state.kind + '"'); - } + for (typeIndex = 0, typeQuantity = state.implicitTypes.length; typeIndex < typeQuantity; typeIndex += 1) { + type = state.implicitTypes[typeIndex]; - for (typeIndex = 0, typeQuantity = state.implicitTypes.length; typeIndex < typeQuantity; typeIndex += 1) { - type = state.implicitTypes[typeIndex]; + if (type.resolve(state.result)) { // `state.result` updated in resolver if matched + state.result = type.construct(state.result); + state.tag = type.tag; + if (state.anchor !== null) { + state.anchorMap[state.anchor] = state.result; + } + break; + } + } + } else if (_hasOwnProperty.call(state.typeMap[state.kind || 'fallback'], state.tag)) { + type = state.typeMap[state.kind || 'fallback'][state.tag]; - if (type.resolve(state.result)) { // `state.result` updated in resolver if matched + if (state.result !== null && type.kind !== state.kind) { + throwError(state, 'unacceptable node kind for !<' + state.tag + '> tag; it should be "' + type.kind + '", not "' + state.kind + '"'); + } + + if (!type.resolve(state.result)) { // `state.result` updated in resolver if matched + throwError(state, 'cannot resolve a node with !<' + state.tag + '> explicit tag'); + } else { state.result = type.construct(state.result); - state.tag = type.tag; if (state.anchor !== null) { state.anchorMap[state.anchor] = state.result; } - break; } - } - } else if (state.tag !== '!') { - if (_hasOwnProperty.call(state.typeMap[state.kind || 'fallback'], state.tag)) { - type = state.typeMap[state.kind || 'fallback'][state.tag]; } else { - // looking for multi type - type = null; - typeList = state.typeMap.multi[state.kind || 'fallback']; - - for (typeIndex = 0, typeQuantity = typeList.length; typeIndex < typeQuantity; typeIndex += 1) { - if (state.tag.slice(0, typeList[typeIndex].tag.length) === typeList[typeIndex].tag) { - type = typeList[typeIndex]; - break; - } - } - } - - if (!type) { throwError(state, 'unknown tag !<' + state.tag + '>'); } - - if (state.result !== null && type.kind !== state.kind) { - throwError(state, 'unacceptable node kind for !<' + state.tag + '> tag; it should be "' + type.kind + '", not "' + state.kind + '"'); - } - - if (!type.resolve(state.result, state.tag)) { // `state.result` updated in resolver if matched - throwError(state, 'cannot resolve a node with !<' + state.tag + '> explicit tag'); - } else { - state.result = type.construct(state.result, state.tag); - if (state.anchor !== null) { - state.anchorMap[state.anchor] = state.result; - } - } } if (state.listener !== null) { @@ -20938,8 +17876,8 @@ function readDocument(state) { state.version = null; state.checkLineBreaks = state.legacy; - state.tagMap = Object.create(null); - state.anchorMap = Object.create(null); + state.tagMap = {}; + state.anchorMap = {}; while ((ch = state.input.charCodeAt(state.position)) !== 0) { skipSeparationSpace(state, true, -1); @@ -21094,58 +18032,160 @@ function loadAll(input, iterator, options) { for (var index = 0, length = documents.length; index < length; index += 1) { iterator(documents[index]); } -} +} + + +function load(input, options) { + var documents = loadDocuments(input, options); + + if (documents.length === 0) { + /*eslint-disable no-undefined*/ + return undefined; + } else if (documents.length === 1) { + return documents[0]; + } + throw new YAMLException('expected a single document in the stream, but found more'); +} + + +function safeLoadAll(input, iterator, options) { + if (typeof iterator === 'object' && iterator !== null && typeof options === 'undefined') { + options = iterator; + iterator = null; + } + + return loadAll(input, iterator, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); +} + + +function safeLoad(input, options) { + return load(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); +} + + +module.exports.loadAll = loadAll; +module.exports.load = load; +module.exports.safeLoadAll = safeLoadAll; +module.exports.safeLoad = safeLoad; + + +/***/ }), + +/***/ 8258: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + + + + +var common = __nccwpck_require__(9082); + + +function Mark(name, buffer, position, line, column) { + this.name = name; + this.buffer = buffer; + this.position = position; + this.line = line; + this.column = column; +} + + +Mark.prototype.getSnippet = function getSnippet(indent, maxLength) { + var head, start, tail, end, snippet; + + if (!this.buffer) return null; + + indent = indent || 4; + maxLength = maxLength || 75; + + head = ''; + start = this.position; + + while (start > 0 && '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(start - 1)) === -1) { + start -= 1; + if (this.position - start > (maxLength / 2 - 1)) { + head = ' ... '; + start += 5; + break; + } + } + + tail = ''; + end = this.position; + + while (end < this.buffer.length && '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(end)) === -1) { + end += 1; + if (end - this.position > (maxLength / 2 - 1)) { + tail = ' ... '; + end -= 5; + break; + } + } + + snippet = this.buffer.slice(start, end); + + return common.repeat(' ', indent) + head + snippet + tail + '\n' + + common.repeat(' ', indent + this.position - start + head.length) + '^'; +}; + + +Mark.prototype.toString = function toString(compact) { + var snippet, where = ''; + + if (this.name) { + where += 'in "' + this.name + '" '; + } + where += 'at line ' + (this.line + 1) + ', column ' + (this.column + 1); -function load(input, options) { - var documents = loadDocuments(input, options); + if (!compact) { + snippet = this.getSnippet(); - if (documents.length === 0) { - /*eslint-disable no-undefined*/ - return undefined; - } else if (documents.length === 1) { - return documents[0]; + if (snippet) { + where += ':\n' + snippet; + } } - throw new YAMLException('expected a single document in the stream, but found more'); -} + + return where; +}; -module.exports.loadAll = loadAll; -module.exports.load = load; +module.exports = Mark; /***/ }), -/***/ 59610: +/***/ 6531: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*eslint-disable max-len*/ -var YAMLException = __nccwpck_require__(2828); -var Type = __nccwpck_require__(1089); +var common = __nccwpck_require__(9082); +var YAMLException = __nccwpck_require__(7242); +var Type = __nccwpck_require__(5991); -function compileList(schema, name) { - var result = []; +function compileList(schema, name, result) { + var exclude = []; - schema[name].forEach(function (currentType) { - var newIndex = result.length; + schema.include.forEach(function (includedSchema) { + result = compileList(includedSchema, name, result); + }); + schema[name].forEach(function (currentType) { result.forEach(function (previousType, previousIndex) { - if (previousType.tag === currentType.tag && - previousType.kind === currentType.kind && - previousType.multi === currentType.multi) { - - newIndex = previousIndex; + if (previousType.tag === currentType.tag && previousType.kind === currentType.kind) { + exclude.push(previousIndex); } }); - result[newIndex] = currentType; + result.push(currentType); }); - return result; + return result.filter(function (type, index) { + return exclude.indexOf(index) === -1; + }); } @@ -21154,22 +18194,11 @@ function compileMap(/* lists... */) { scalar: {}, sequence: {}, mapping: {}, - fallback: {}, - multi: { - scalar: [], - sequence: [], - mapping: [], - fallback: [] - } + fallback: {} }, index, length; function collectType(type) { - if (type.multi) { - result.multi[type.kind].push(type); - result.multi['fallback'].push(type); - } else { - result[type.kind][type.tag] = result['fallback'][type.tag] = type; - } + result[type.kind][type.tag] = result['fallback'][type.tag] = type; } for (index = 0, length = arguments.length; index < length; index += 1) { @@ -21180,62 +18209,58 @@ function compileMap(/* lists... */) { function Schema(definition) { - return this.extend(definition); -} - + this.include = definition.include || []; + this.implicit = definition.implicit || []; + this.explicit = definition.explicit || []; -Schema.prototype.extend = function extend(definition) { - var implicit = []; - var explicit = []; + this.implicit.forEach(function (type) { + if (type.loadKind && type.loadKind !== 'scalar') { + throw new YAMLException('There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.'); + } + }); - if (definition instanceof Type) { - // Schema.extend(type) - explicit.push(definition); + this.compiledImplicit = compileList(this, 'implicit', []); + this.compiledExplicit = compileList(this, 'explicit', []); + this.compiledTypeMap = compileMap(this.compiledImplicit, this.compiledExplicit); +} - } else if (Array.isArray(definition)) { - // Schema.extend([ type1, type2, ... ]) - explicit = explicit.concat(definition); - } else if (definition && (Array.isArray(definition.implicit) || Array.isArray(definition.explicit))) { - // Schema.extend({ explicit: [ type1, type2, ... ], implicit: [ type1, type2, ... ] }) - if (definition.implicit) implicit = implicit.concat(definition.implicit); - if (definition.explicit) explicit = explicit.concat(definition.explicit); +Schema.DEFAULT = null; - } else { - throw new YAMLException('Schema.extend argument should be a Type, [ Type ], ' + - 'or a schema definition ({ implicit: [...], explicit: [...] })'); - } - implicit.forEach(function (type) { - if (!(type instanceof Type)) { - throw new YAMLException('Specified list of YAML types (or a single Type object) contains a non-Type object.'); - } +Schema.create = function createSchema() { + var schemas, types; - if (type.loadKind && type.loadKind !== 'scalar') { - throw new YAMLException('There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.'); - } + switch (arguments.length) { + case 1: + schemas = Schema.DEFAULT; + types = arguments[0]; + break; - if (type.multi) { - throw new YAMLException('There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.'); - } - }); + case 2: + schemas = arguments[0]; + types = arguments[1]; + break; - explicit.forEach(function (type) { - if (!(type instanceof Type)) { - throw new YAMLException('Specified list of YAML types (or a single Type object) contains a non-Type object.'); - } - }); + default: + throw new YAMLException('Wrong number of arguments for Schema.create function'); + } - var result = Object.create(Schema.prototype); + schemas = common.toArray(schemas); + types = common.toArray(types); - result.implicit = (this.implicit || []).concat(implicit); - result.explicit = (this.explicit || []).concat(explicit); + if (!schemas.every(function (schema) { return schema instanceof Schema; })) { + throw new YAMLException('Specified list of super schemas (or a single Schema object) contains a non-Schema object.'); + } - result.compiledImplicit = compileList(result, 'implicit'); - result.compiledExplicit = compileList(result, 'explicit'); - result.compiledTypeMap = compileMap(result.compiledImplicit, result.compiledExplicit); + if (!types.every(function (type) { return type instanceof Type; })) { + throw new YAMLException('Specified list of YAML types (or a single Type object) contains a non-Type object.'); + } - return result; + return new Schema({ + include: schemas, + explicit: types + }); }; @@ -21244,7 +18269,7 @@ module.exports = Schema; /***/ }), -/***/ 52254: +/***/ 5600: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Standard YAML's Core schema. @@ -21257,214 +18282,155 @@ module.exports = Schema; -module.exports = __nccwpck_require__(98971); +var Schema = __nccwpck_require__(6531); + + +module.exports = new Schema({ + include: [ + __nccwpck_require__(4441) + ] +}); /***/ }), -/***/ 7436: +/***/ 1280: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -// JS-YAML's default schema for `safeLoad` function. +// JS-YAML's default schema for `load` function. // It is not described in the YAML specification. // -// This schema is based on standard YAML's Core schema and includes most of -// extra types described at YAML tag repository. (http://yaml.org/type/) +// This schema is based on JS-YAML's default safe schema and includes +// JavaScript-specific types: !!js/undefined, !!js/regexp and !!js/function. +// +// Also this schema is used as default base schema at `Schema.create` function. -module.exports = (__nccwpck_require__(52254).extend)({ - implicit: [ - __nccwpck_require__(35298), - __nccwpck_require__(70954) +var Schema = __nccwpck_require__(6531); + + +module.exports = Schema.DEFAULT = new Schema({ + include: [ + __nccwpck_require__(1276) ], explicit: [ - __nccwpck_require__(1113), - __nccwpck_require__(28677), - __nccwpck_require__(11503), - __nccwpck_require__(25098) + __nccwpck_require__(9542), + __nccwpck_require__(3381), + __nccwpck_require__(4287) ] }); /***/ }), -/***/ 82420: +/***/ 1276: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -// Standard YAML's Failsafe schema. -// http://www.yaml.org/spec/1.2/spec.html#id2802346 +// JS-YAML's default schema for `safeLoad` function. +// It is not described in the YAML specification. +// +// This schema is based on standard YAML's Core schema and includes most of +// extra types described at YAML tag repository. (http://yaml.org/type/) -var Schema = __nccwpck_require__(59610); +var Schema = __nccwpck_require__(6531); module.exports = new Schema({ + include: [ + __nccwpck_require__(5600) + ], + implicit: [ + __nccwpck_require__(5608), + __nccwpck_require__(3884) + ], explicit: [ - __nccwpck_require__(41845), - __nccwpck_require__(43733), - __nccwpck_require__(88432) + __nccwpck_require__(1595), + __nccwpck_require__(9319), + __nccwpck_require__(6502), + __nccwpck_require__(3200) ] }); /***/ }), -/***/ 98971: +/***/ 910: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -// Standard YAML's JSON schema. -// http://www.yaml.org/spec/1.2/spec.html#id2803231 -// -// NOTE: JS-YAML does not support schema-specific tag resolution restrictions. -// So, this schema is not such strict as defined in the YAML specification. -// It allows numbers in binary notaion, use `Null` and `NULL` as `null`, etc. +// Standard YAML's Failsafe schema. +// http://www.yaml.org/spec/1.2/spec.html#id2802346 -module.exports = (__nccwpck_require__(82420).extend)({ - implicit: [ - __nccwpck_require__(77177), - __nccwpck_require__(97300), - __nccwpck_require__(99491), - __nccwpck_require__(83492) +var Schema = __nccwpck_require__(6531); + + +module.exports = new Schema({ + explicit: [ + __nccwpck_require__(1327), + __nccwpck_require__(1139), + __nccwpck_require__(506) ] }); /***/ }), -/***/ 50732: +/***/ 4441: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +// Standard YAML's JSON schema. +// http://www.yaml.org/spec/1.2/spec.html#id2803231 +// +// NOTE: JS-YAML does not support schema-specific tag resolution restrictions. +// So, this schema is not such strict as defined in the YAML specification. +// It allows numbers in binary notaion, use `Null` and `NULL` as `null`, etc. -var common = __nccwpck_require__(23324); - - -// get snippet for a single line, respecting maxLength -function getLine(buffer, lineStart, lineEnd, position, maxLineLength) { - var head = ''; - var tail = ''; - var maxHalfLength = Math.floor(maxLineLength / 2) - 1; - - if (position - lineStart > maxHalfLength) { - head = ' ... '; - lineStart = position - maxHalfLength + head.length; - } - - if (lineEnd - position > maxHalfLength) { - tail = ' ...'; - lineEnd = position + maxHalfLength - tail.length; - } - - return { - str: head + buffer.slice(lineStart, lineEnd).replace(/\t/g, '→') + tail, - pos: position - lineStart + head.length // relative position - }; -} - - -function padStart(string, max) { - return common.repeat(' ', max - string.length) + string; -} - - -function makeSnippet(mark, options) { - options = Object.create(options || null); - - if (!mark.buffer) return null; - - if (!options.maxLength) options.maxLength = 79; - if (typeof options.indent !== 'number') options.indent = 1; - if (typeof options.linesBefore !== 'number') options.linesBefore = 3; - if (typeof options.linesAfter !== 'number') options.linesAfter = 2; - - var re = /\r?\n|\r|\0/g; - var lineStarts = [ 0 ]; - var lineEnds = []; - var match; - var foundLineNo = -1; - - while ((match = re.exec(mark.buffer))) { - lineEnds.push(match.index); - lineStarts.push(match.index + match[0].length); - - if (mark.position <= match.index && foundLineNo < 0) { - foundLineNo = lineStarts.length - 2; - } - } - - if (foundLineNo < 0) foundLineNo = lineStarts.length - 1; - - var result = '', i, line; - var lineNoLength = Math.min(mark.line + options.linesAfter, lineEnds.length).toString().length; - var maxLineLength = options.maxLength - (options.indent + lineNoLength + 3); - - for (i = 1; i <= options.linesBefore; i++) { - if (foundLineNo - i < 0) break; - line = getLine( - mark.buffer, - lineStarts[foundLineNo - i], - lineEnds[foundLineNo - i], - mark.position - (lineStarts[foundLineNo] - lineStarts[foundLineNo - i]), - maxLineLength - ); - result = common.repeat(' ', options.indent) + padStart((mark.line - i + 1).toString(), lineNoLength) + - ' | ' + line.str + '\n' + result; - } - - line = getLine(mark.buffer, lineStarts[foundLineNo], lineEnds[foundLineNo], mark.position, maxLineLength); - result += common.repeat(' ', options.indent) + padStart((mark.line + 1).toString(), lineNoLength) + - ' | ' + line.str + '\n'; - result += common.repeat('-', options.indent + lineNoLength + 3 + line.pos) + '^' + '\n'; - for (i = 1; i <= options.linesAfter; i++) { - if (foundLineNo + i >= lineEnds.length) break; - line = getLine( - mark.buffer, - lineStarts[foundLineNo + i], - lineEnds[foundLineNo + i], - mark.position - (lineStarts[foundLineNo] - lineStarts[foundLineNo + i]), - maxLineLength - ); - result += common.repeat(' ', options.indent) + padStart((mark.line + i + 1).toString(), lineNoLength) + - ' | ' + line.str + '\n'; - } - return result.replace(/\n$/, ''); -} +var Schema = __nccwpck_require__(6531); -module.exports = makeSnippet; +module.exports = new Schema({ + include: [ + __nccwpck_require__(910) + ], + implicit: [ + __nccwpck_require__(1755), + __nccwpck_require__(1990), + __nccwpck_require__(2113), + __nccwpck_require__(2382) + ] +}); /***/ }), -/***/ 1089: +/***/ 5991: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var YAMLException = __nccwpck_require__(2828); +var YAMLException = __nccwpck_require__(7242); var TYPE_CONSTRUCTOR_OPTIONS = [ 'kind', - 'multi', 'resolve', 'construct', 'instanceOf', 'predicate', 'represent', - 'representName', 'defaultStyle', 'styleAliases' ]; @@ -21499,18 +18465,15 @@ function Type(tag, options) { }); // TODO: Add tag format check. - this.options = options; // keep original options in case user wants to extend this type later - this.tag = tag; - this.kind = options['kind'] || null; - this.resolve = options['resolve'] || function () { return true; }; - this.construct = options['construct'] || function (data) { return data; }; - this.instanceOf = options['instanceOf'] || null; - this.predicate = options['predicate'] || null; - this.represent = options['represent'] || null; - this.representName = options['representName'] || null; - this.defaultStyle = options['defaultStyle'] || null; - this.multi = options['multi'] || false; - this.styleAliases = compileStyleAliases(options['styleAliases'] || null); + this.tag = tag; + this.kind = options['kind'] || null; + this.resolve = options['resolve'] || function () { return true; }; + this.construct = options['construct'] || function (data) { return data; }; + this.instanceOf = options['instanceOf'] || null; + this.predicate = options['predicate'] || null; + this.represent = options['represent'] || null; + this.defaultStyle = options['defaultStyle'] || null; + this.styleAliases = compileStyleAliases(options['styleAliases'] || null); if (YAML_NODE_KINDS.indexOf(this.kind) === -1) { throw new YAMLException('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.'); @@ -21522,15 +18485,22 @@ module.exports = Type; /***/ }), -/***/ 1113: +/***/ 1595: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*eslint-disable no-bitwise*/ +var NodeBuffer; + +try { + // A trick for browserified version, to not include `Buffer` shim + var _require = __WEBPACK_EXTERNAL_createRequire(import.meta.url); + NodeBuffer = _require('buffer').Buffer; +} catch (__) {} -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(5991); // [ 64, 65, 66 ] -> [ padding, CR, LF ] @@ -21594,7 +18564,13 @@ function constructYamlBinary(data) { result.push((bits >> 4) & 0xFF); } - return new Uint8Array(result); + // Wrap into Buffer for NodeJS and leave Array for browser + if (NodeBuffer) { + // Support node 6.+ Buffer API when available + return NodeBuffer.from ? NodeBuffer.from(result) : new NodeBuffer(result); + } + + return result; } function representYamlBinary(object /*, style*/) { @@ -21639,8 +18615,8 @@ function representYamlBinary(object /*, style*/) { return result; } -function isBinary(obj) { - return Object.prototype.toString.call(obj) === '[object Uint8Array]'; +function isBinary(object) { + return NodeBuffer && NodeBuffer.isBuffer(object); } module.exports = new Type('tag:yaml.org,2002:binary', { @@ -21654,12 +18630,12 @@ module.exports = new Type('tag:yaml.org,2002:binary', { /***/ }), -/***/ 97300: +/***/ 1990: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(5991); function resolveYamlBoolean(data) { if (data === null) return false; @@ -21696,20 +18672,22 @@ module.exports = new Type('tag:yaml.org,2002:bool', { /***/ }), -/***/ 83492: +/***/ 2382: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var common = __nccwpck_require__(23324); -var Type = __nccwpck_require__(1089); +var common = __nccwpck_require__(9082); +var Type = __nccwpck_require__(5991); var YAML_FLOAT_PATTERN = new RegExp( // 2.5e4, 2.5 and integers - '^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?' + + '^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?' + // .2e4, .2 // special case, seems not from spec '|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?' + + // 20:59 + '|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*' + // .inf '|[-+]?\\.(?:inf|Inf|INF)' + // .nan @@ -21729,10 +18707,11 @@ function resolveYamlFloat(data) { } function constructYamlFloat(data) { - var value, sign; + var value, sign, base, digits; value = data.replace(/_/g, '').toLowerCase(); sign = value[0] === '-' ? -1 : 1; + digits = []; if ('+-'.indexOf(value[0]) >= 0) { value = value.slice(1); @@ -21743,6 +18722,22 @@ function constructYamlFloat(data) { } else if (value === '.nan') { return NaN; + + } else if (value.indexOf(':') >= 0) { + value.split(':').forEach(function (v) { + digits.unshift(parseFloat(v, 10)); + }); + + value = 0.0; + base = 1; + + digits.forEach(function (d) { + value += d * base; + base *= 60; + }); + + return sign * value; + } return sign * parseFloat(value, 10); } @@ -21800,13 +18795,13 @@ module.exports = new Type('tag:yaml.org,2002:float', { /***/ }), -/***/ 99491: +/***/ 2113: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var common = __nccwpck_require__(23324); -var Type = __nccwpck_require__(1089); +var common = __nccwpck_require__(9082); +var Type = __nccwpck_require__(5991); function isHexCode(c) { return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) || @@ -21873,22 +18868,17 @@ function resolveYamlInteger(data) { return hasDigits && ch !== '_'; } - - if (ch === 'o') { - // base 8 - index++; - - for (; index < max; index++) { - ch = data[index]; - if (ch === '_') continue; - if (!isOctCode(data.charCodeAt(index))) return false; - hasDigits = true; - } - return hasDigits && ch !== '_'; + // base 8 + for (; index < max; index++) { + ch = data[index]; + if (ch === '_') continue; + if (!isOctCode(data.charCodeAt(index))) return false; + hasDigits = true; } + return hasDigits && ch !== '_'; } - // base 10 (except 0) + // base 10 (except 0) or base 60 // value should not start with `_`; if (ch === '_') return false; @@ -21896,6 +18886,7 @@ function resolveYamlInteger(data) { for (; index < max; index++) { ch = data[index]; if (ch === '_') continue; + if (ch === ':') break; if (!isDecCode(data.charCodeAt(index))) { return false; } @@ -21905,8217 +18896,8697 @@ function resolveYamlInteger(data) { // Should have digits and should not end with `_` if (!hasDigits || ch === '_') return false; - return true; + // if !base60 - done; + if (ch !== ':') return true; + + // base60 almost not used, no needs to optimize + return /^(:[0-5]?[0-9])+$/.test(data.slice(index)); } function constructYamlInteger(data) { - var value = data, sign = 1, ch; + var value = data, sign = 1, ch, base, digits = []; if (value.indexOf('_') !== -1) { - value = value.replace(/_/g, ''); - } - - ch = value[0]; - - if (ch === '-' || ch === '+') { - if (ch === '-') sign = -1; - value = value.slice(1); - ch = value[0]; - } - - if (value === '0') return 0; - - if (ch === '0') { - if (value[1] === 'b') return sign * parseInt(value.slice(2), 2); - if (value[1] === 'x') return sign * parseInt(value.slice(2), 16); - if (value[1] === 'o') return sign * parseInt(value.slice(2), 8); - } - - return sign * parseInt(value, 10); -} - -function isInteger(object) { - return (Object.prototype.toString.call(object)) === '[object Number]' && - (object % 1 === 0 && !common.isNegativeZero(object)); -} - -module.exports = new Type('tag:yaml.org,2002:int', { - kind: 'scalar', - resolve: resolveYamlInteger, - construct: constructYamlInteger, - predicate: isInteger, - represent: { - binary: function (obj) { return obj >= 0 ? '0b' + obj.toString(2) : '-0b' + obj.toString(2).slice(1); }, - octal: function (obj) { return obj >= 0 ? '0o' + obj.toString(8) : '-0o' + obj.toString(8).slice(1); }, - decimal: function (obj) { return obj.toString(10); }, - /* eslint-disable max-len */ - hexadecimal: function (obj) { return obj >= 0 ? '0x' + obj.toString(16).toUpperCase() : '-0x' + obj.toString(16).toUpperCase().slice(1); } - }, - defaultStyle: 'decimal', - styleAliases: { - binary: [ 2, 'bin' ], - octal: [ 8, 'oct' ], - decimal: [ 10, 'dec' ], - hexadecimal: [ 16, 'hex' ] - } -}); - - -/***/ }), - -/***/ 88432: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -var Type = __nccwpck_require__(1089); - -module.exports = new Type('tag:yaml.org,2002:map', { - kind: 'mapping', - construct: function (data) { return data !== null ? data : {}; } -}); - - -/***/ }), - -/***/ 70954: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -var Type = __nccwpck_require__(1089); - -function resolveYamlMerge(data) { - return data === '<<' || data === null; -} - -module.exports = new Type('tag:yaml.org,2002:merge', { - kind: 'scalar', - resolve: resolveYamlMerge -}); - - -/***/ }), - -/***/ 77177: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -var Type = __nccwpck_require__(1089); - -function resolveYamlNull(data) { - if (data === null) return true; - - var max = data.length; - - return (max === 1 && data === '~') || - (max === 4 && (data === 'null' || data === 'Null' || data === 'NULL')); -} - -function constructYamlNull() { - return null; -} - -function isNull(object) { - return object === null; -} - -module.exports = new Type('tag:yaml.org,2002:null', { - kind: 'scalar', - resolve: resolveYamlNull, - construct: constructYamlNull, - predicate: isNull, - represent: { - canonical: function () { return '~'; }, - lowercase: function () { return 'null'; }, - uppercase: function () { return 'NULL'; }, - camelcase: function () { return 'Null'; }, - empty: function () { return ''; } - }, - defaultStyle: 'lowercase' -}); - - -/***/ }), - -/***/ 28677: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - + value = value.replace(/_/g, ''); + } -var Type = __nccwpck_require__(1089); + ch = value[0]; -var _hasOwnProperty = Object.prototype.hasOwnProperty; -var _toString = Object.prototype.toString; + if (ch === '-' || ch === '+') { + if (ch === '-') sign = -1; + value = value.slice(1); + ch = value[0]; + } -function resolveYamlOmap(data) { - if (data === null) return true; + if (value === '0') return 0; - var objectKeys = [], index, length, pair, pairKey, pairHasKey, - object = data; + if (ch === '0') { + if (value[1] === 'b') return sign * parseInt(value.slice(2), 2); + if (value[1] === 'x') return sign * parseInt(value, 16); + return sign * parseInt(value, 8); + } - for (index = 0, length = object.length; index < length; index += 1) { - pair = object[index]; - pairHasKey = false; + if (value.indexOf(':') !== -1) { + value.split(':').forEach(function (v) { + digits.unshift(parseInt(v, 10)); + }); - if (_toString.call(pair) !== '[object Object]') return false; + value = 0; + base = 1; - for (pairKey in pair) { - if (_hasOwnProperty.call(pair, pairKey)) { - if (!pairHasKey) pairHasKey = true; - else return false; - } - } + digits.forEach(function (d) { + value += (d * base); + base *= 60; + }); - if (!pairHasKey) return false; + return sign * value; - if (objectKeys.indexOf(pairKey) === -1) objectKeys.push(pairKey); - else return false; } - return true; + return sign * parseInt(value, 10); } -function constructYamlOmap(data) { - return data !== null ? data : []; +function isInteger(object) { + return (Object.prototype.toString.call(object)) === '[object Number]' && + (object % 1 === 0 && !common.isNegativeZero(object)); } -module.exports = new Type('tag:yaml.org,2002:omap', { - kind: 'sequence', - resolve: resolveYamlOmap, - construct: constructYamlOmap +module.exports = new Type('tag:yaml.org,2002:int', { + kind: 'scalar', + resolve: resolveYamlInteger, + construct: constructYamlInteger, + predicate: isInteger, + represent: { + binary: function (obj) { return obj >= 0 ? '0b' + obj.toString(2) : '-0b' + obj.toString(2).slice(1); }, + octal: function (obj) { return obj >= 0 ? '0' + obj.toString(8) : '-0' + obj.toString(8).slice(1); }, + decimal: function (obj) { return obj.toString(10); }, + /* eslint-disable max-len */ + hexadecimal: function (obj) { return obj >= 0 ? '0x' + obj.toString(16).toUpperCase() : '-0x' + obj.toString(16).toUpperCase().slice(1); } + }, + defaultStyle: 'decimal', + styleAliases: { + binary: [ 2, 'bin' ], + octal: [ 8, 'oct' ], + decimal: [ 10, 'dec' ], + hexadecimal: [ 16, 'hex' ] + } }); /***/ }), -/***/ 11503: +/***/ 4287: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); - -var _toString = Object.prototype.toString; - -function resolveYamlPairs(data) { - if (data === null) return true; - - var index, length, pair, keys, result, - object = data; +var esprima; - result = new Array(object.length); +// Browserified version does not have esprima +// +// 1. For node.js just require module as deps +// 2. For browser try to require mudule via external AMD system. +// If not found - try to fallback to window.esprima. If not +// found too - then fail to parse. +// +try { + // workaround to exclude package from browserify list. + var _require = __WEBPACK_EXTERNAL_createRequire(import.meta.url); + esprima = _require('esprima'); +} catch (_) { + /* eslint-disable no-redeclare */ + /* global window */ + if (typeof window !== 'undefined') esprima = window.esprima; +} - for (index = 0, length = object.length; index < length; index += 1) { - pair = object[index]; +var Type = __nccwpck_require__(5991); - if (_toString.call(pair) !== '[object Object]') return false; +function resolveJavascriptFunction(data) { + if (data === null) return false; - keys = Object.keys(pair); + try { + var source = '(' + data + ')', + ast = esprima.parse(source, { range: true }); - if (keys.length !== 1) return false; + if (ast.type !== 'Program' || + ast.body.length !== 1 || + ast.body[0].type !== 'ExpressionStatement' || + (ast.body[0].expression.type !== 'ArrowFunctionExpression' && + ast.body[0].expression.type !== 'FunctionExpression')) { + return false; + } - result[index] = [ keys[0], pair[keys[0]] ]; + return true; + } catch (err) { + return false; } - - return true; } -function constructYamlPairs(data) { - if (data === null) return []; +function constructJavascriptFunction(data) { + /*jslint evil:true*/ - var index, length, pair, keys, result, - object = data; + var source = '(' + data + ')', + ast = esprima.parse(source, { range: true }), + params = [], + body; - result = new Array(object.length); + if (ast.type !== 'Program' || + ast.body.length !== 1 || + ast.body[0].type !== 'ExpressionStatement' || + (ast.body[0].expression.type !== 'ArrowFunctionExpression' && + ast.body[0].expression.type !== 'FunctionExpression')) { + throw new Error('Failed to resolve function'); + } - for (index = 0, length = object.length; index < length; index += 1) { - pair = object[index]; + ast.body[0].expression.params.forEach(function (param) { + params.push(param.name); + }); - keys = Object.keys(pair); + body = ast.body[0].expression.body.range; - result[index] = [ keys[0], pair[keys[0]] ]; + // Esprima's ranges include the first '{' and the last '}' characters on + // function expressions. So cut them out. + if (ast.body[0].expression.body.type === 'BlockStatement') { + /*eslint-disable no-new-func*/ + return new Function(params, source.slice(body[0] + 1, body[1] - 1)); } - - return result; + // ES6 arrow functions can omit the BlockStatement. In that case, just return + // the body. + /*eslint-disable no-new-func*/ + return new Function(params, 'return ' + source.slice(body[0], body[1])); } -module.exports = new Type('tag:yaml.org,2002:pairs', { - kind: 'sequence', - resolve: resolveYamlPairs, - construct: constructYamlPairs -}); - - -/***/ }), - -/***/ 43733: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - +function representJavascriptFunction(object /*, style*/) { + return object.toString(); +} -var Type = __nccwpck_require__(1089); +function isFunction(object) { + return Object.prototype.toString.call(object) === '[object Function]'; +} -module.exports = new Type('tag:yaml.org,2002:seq', { - kind: 'sequence', - construct: function (data) { return data !== null ? data : []; } +module.exports = new Type('tag:yaml.org,2002:js/function', { + kind: 'scalar', + resolve: resolveJavascriptFunction, + construct: constructJavascriptFunction, + predicate: isFunction, + represent: representJavascriptFunction }); /***/ }), -/***/ 25098: +/***/ 3381: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(5991); -var _hasOwnProperty = Object.prototype.hasOwnProperty; +function resolveJavascriptRegExp(data) { + if (data === null) return false; + if (data.length === 0) return false; -function resolveYamlSet(data) { - if (data === null) return true; + var regexp = data, + tail = /\/([gim]*)$/.exec(data), + modifiers = ''; - var key, object = data; + // if regexp starts with '/' it can have modifiers and must be properly closed + // `/foo/gim` - modifiers tail can be maximum 3 chars + if (regexp[0] === '/') { + if (tail) modifiers = tail[1]; - for (key in object) { - if (_hasOwnProperty.call(object, key)) { - if (object[key] !== null) return false; - } + if (modifiers.length > 3) return false; + // if expression starts with /, is should be properly terminated + if (regexp[regexp.length - modifiers.length - 1] !== '/') return false; } return true; } -function constructYamlSet(data) { - return data !== null ? data : {}; -} - -module.exports = new Type('tag:yaml.org,2002:set', { - kind: 'mapping', - resolve: resolveYamlSet, - construct: constructYamlSet -}); +function constructJavascriptRegExp(data) { + var regexp = data, + tail = /\/([gim]*)$/.exec(data), + modifiers = ''; + // `/foo/gim` - tail can be maximum 4 chars + if (regexp[0] === '/') { + if (tail) modifiers = tail[1]; + regexp = regexp.slice(1, regexp.length - modifiers.length - 1); + } -/***/ }), + return new RegExp(regexp, modifiers); +} -/***/ 41845: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +function representJavascriptRegExp(object /*, style*/) { + var result = '/' + object.source + '/'; + if (object.global) result += 'g'; + if (object.multiline) result += 'm'; + if (object.ignoreCase) result += 'i'; + return result; +} -var Type = __nccwpck_require__(1089); +function isRegExp(object) { + return Object.prototype.toString.call(object) === '[object RegExp]'; +} -module.exports = new Type('tag:yaml.org,2002:str', { +module.exports = new Type('tag:yaml.org,2002:js/regexp', { kind: 'scalar', - construct: function (data) { return data !== null ? data : ''; } + resolve: resolveJavascriptRegExp, + construct: constructJavascriptRegExp, + predicate: isRegExp, + represent: representJavascriptRegExp }); /***/ }), -/***/ 35298: +/***/ 9542: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(5991); -var YAML_DATE_REGEXP = new RegExp( - '^([0-9][0-9][0-9][0-9])' + // [1] year - '-([0-9][0-9])' + // [2] month - '-([0-9][0-9])$'); // [3] day +function resolveJavascriptUndefined() { + return true; +} -var YAML_TIMESTAMP_REGEXP = new RegExp( - '^([0-9][0-9][0-9][0-9])' + // [1] year - '-([0-9][0-9]?)' + // [2] month - '-([0-9][0-9]?)' + // [3] day - '(?:[Tt]|[ \\t]+)' + // ... - '([0-9][0-9]?)' + // [4] hour - ':([0-9][0-9])' + // [5] minute - ':([0-9][0-9])' + // [6] second - '(?:\\.([0-9]*))?' + // [7] fraction - '(?:[ \\t]*(Z|([-+])([0-9][0-9]?)' + // [8] tz [9] tz_sign [10] tz_hour - '(?::([0-9][0-9]))?))?$'); // [11] tz_minute +function constructJavascriptUndefined() { + /*eslint-disable no-undefined*/ + return undefined; +} -function resolveYamlTimestamp(data) { - if (data === null) return false; - if (YAML_DATE_REGEXP.exec(data) !== null) return true; - if (YAML_TIMESTAMP_REGEXP.exec(data) !== null) return true; - return false; +function representJavascriptUndefined() { + return ''; } -function constructYamlTimestamp(data) { - var match, year, month, day, hour, minute, second, fraction = 0, - delta = null, tz_hour, tz_minute, date; +function isUndefined(object) { + return typeof object === 'undefined'; +} - match = YAML_DATE_REGEXP.exec(data); - if (match === null) match = YAML_TIMESTAMP_REGEXP.exec(data); +module.exports = new Type('tag:yaml.org,2002:js/undefined', { + kind: 'scalar', + resolve: resolveJavascriptUndefined, + construct: constructJavascriptUndefined, + predicate: isUndefined, + represent: representJavascriptUndefined +}); - if (match === null) throw new Error('Date resolve error'); - // match: [1] year [2] month [3] day +/***/ }), - year = +(match[1]); - month = +(match[2]) - 1; // JS month starts with 0 - day = +(match[3]); +/***/ 506: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - if (!match[4]) { // no hour - return new Date(Date.UTC(year, month, day)); - } - // match: [4] hour [5] minute [6] second [7] fraction - hour = +(match[4]); - minute = +(match[5]); - second = +(match[6]); +var Type = __nccwpck_require__(5991); - if (match[7]) { - fraction = match[7].slice(0, 3); - while (fraction.length < 3) { // milli-seconds - fraction += '0'; - } - fraction = +fraction; - } +module.exports = new Type('tag:yaml.org,2002:map', { + kind: 'mapping', + construct: function (data) { return data !== null ? data : {}; } +}); - // match: [8] tz [9] tz_sign [10] tz_hour [11] tz_minute - if (match[9]) { - tz_hour = +(match[10]); - tz_minute = +(match[11] || 0); - delta = (tz_hour * 60 + tz_minute) * 60000; // delta in mili-seconds - if (match[9] === '-') delta = -delta; - } +/***/ }), - date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction)); +/***/ 3884: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - if (delta) date.setTime(date.getTime() - delta); - return date; -} -function representYamlTimestamp(object /*, style*/) { - return object.toISOString(); +var Type = __nccwpck_require__(5991); + +function resolveYamlMerge(data) { + return data === '<<' || data === null; } -module.exports = new Type('tag:yaml.org,2002:timestamp', { +module.exports = new Type('tag:yaml.org,2002:merge', { kind: 'scalar', - resolve: resolveYamlTimestamp, - construct: constructYamlTimestamp, - instanceOf: Date, - represent: representYamlTimestamp + resolve: resolveYamlMerge }); /***/ }), -/***/ 93588: +/***/ 1755: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var _fs -try { - _fs = __nccwpck_require__(61404) -} catch (_) { - _fs = __nccwpck_require__(79896) -} - -function readFile (file, options, callback) { - if (callback == null) { - callback = options - options = {} - } - - if (typeof options === 'string') { - options = {encoding: options} - } - - options = options || {} - var fs = options.fs || _fs - var shouldThrow = true - if ('throws' in options) { - shouldThrow = options.throws - } - fs.readFile(file, options, function (err, data) { - if (err) return callback(err) +var Type = __nccwpck_require__(5991); - data = stripBom(data) +function resolveYamlNull(data) { + if (data === null) return true; - var obj - try { - obj = JSON.parse(data, options ? options.reviver : null) - } catch (err2) { - if (shouldThrow) { - err2.message = file + ': ' + err2.message - return callback(err2) - } else { - return callback(null, null) - } - } + var max = data.length; - callback(null, obj) - }) + return (max === 1 && data === '~') || + (max === 4 && (data === 'null' || data === 'Null' || data === 'NULL')); } -function readFileSync (file, options) { - options = options || {} - if (typeof options === 'string') { - options = {encoding: options} - } - - var fs = options.fs || _fs - - var shouldThrow = true - if ('throws' in options) { - shouldThrow = options.throws - } - - try { - var content = fs.readFileSync(file, options) - content = stripBom(content) - return JSON.parse(content, options.reviver) - } catch (err) { - if (shouldThrow) { - err.message = file + ': ' + err.message - throw err - } else { - return null - } - } +function constructYamlNull() { + return null; } -function stringify (obj, options) { - var spaces - var EOL = '\n' - if (typeof options === 'object' && options !== null) { - if (options.spaces) { - spaces = options.spaces - } - if (options.EOL) { - EOL = options.EOL - } - } - - var str = JSON.stringify(obj, options ? options.replacer : null, spaces) - - return str.replace(/\n/g, EOL) + EOL +function isNull(object) { + return object === null; } -function writeFile (file, obj, options, callback) { - if (callback == null) { - callback = options - options = {} - } - options = options || {} - var fs = options.fs || _fs +module.exports = new Type('tag:yaml.org,2002:null', { + kind: 'scalar', + resolve: resolveYamlNull, + construct: constructYamlNull, + predicate: isNull, + represent: { + canonical: function () { return '~'; }, + lowercase: function () { return 'null'; }, + uppercase: function () { return 'NULL'; }, + camelcase: function () { return 'Null'; } + }, + defaultStyle: 'lowercase' +}); - var str = '' - try { - str = stringify(obj, options) - } catch (err) { - // Need to return whether a callback was passed or not - if (callback) callback(err, null) - return - } - fs.writeFile(file, str, options, callback) -} +/***/ }), -function writeFileSync (file, obj, options) { - options = options || {} - var fs = options.fs || _fs +/***/ 9319: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - var str = stringify(obj, options) - // not sure if fs.writeFileSync returns anything, but just in case - return fs.writeFileSync(file, str, options) -} -function stripBom (content) { - // we do this because JSON.parse would convert it to a utf8 string if encoding wasn't specified - if (Buffer.isBuffer(content)) content = content.toString('utf8') - content = content.replace(/^\uFEFF/, '') - return content -} -var jsonfile = { - readFile: readFile, - readFileSync: readFileSync, - writeFile: writeFile, - writeFileSync: writeFileSync -} +var Type = __nccwpck_require__(5991); -module.exports = jsonfile +var _hasOwnProperty = Object.prototype.hasOwnProperty; +var _toString = Object.prototype.toString; +function resolveYamlOmap(data) { + if (data === null) return true; -/***/ }), + var objectKeys = [], index, length, pair, pairKey, pairHasKey, + object = data; -/***/ 58146: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + for (index = 0, length = object.length; index < length; index += 1) { + pair = object[index]; + pairHasKey = false; + if (_toString.call(pair) !== '[object Object]') return false; -const path = __nccwpck_require__(16928); -const fs = __nccwpck_require__(79896); -const {promisify} = __nccwpck_require__(39023); -const pLocate = __nccwpck_require__(81689); + for (pairKey in pair) { + if (_hasOwnProperty.call(pair, pairKey)) { + if (!pairHasKey) pairHasKey = true; + else return false; + } + } -const fsStat = promisify(fs.stat); -const fsLStat = promisify(fs.lstat); + if (!pairHasKey) return false; -const typeMappings = { - directory: 'isDirectory', - file: 'isFile' -}; + if (objectKeys.indexOf(pairKey) === -1) objectKeys.push(pairKey); + else return false; + } -function checkType({type}) { - if (type in typeMappings) { - return; - } + return true; +} - throw new Error(`Invalid type specified: ${type}`); +function constructYamlOmap(data) { + return data !== null ? data : []; } -const matchType = (type, stat) => type === undefined || stat[typeMappings[type]](); +module.exports = new Type('tag:yaml.org,2002:omap', { + kind: 'sequence', + resolve: resolveYamlOmap, + construct: constructYamlOmap +}); -module.exports = async (paths, options) => { - options = { - cwd: process.cwd(), - type: 'file', - allowSymlinks: true, - ...options - }; - checkType(options); - const statFn = options.allowSymlinks ? fsStat : fsLStat; - return pLocate(paths, async path_ => { - try { - const stat = await statFn(path.resolve(options.cwd, path_)); - return matchType(options.type, stat); - } catch (_) { - return false; - } - }, options); -}; +/***/ }), -module.exports.sync = (paths, options) => { - options = { - cwd: process.cwd(), - allowSymlinks: true, - type: 'file', - ...options - }; - checkType(options); - const statFn = options.allowSymlinks ? fs.statSync : fs.lstatSync; +/***/ 6502: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - for (const path_ of paths) { - try { - const stat = statFn(path.resolve(options.cwd, path_)); - if (matchType(options.type, stat)) { - return path_; - } - } catch (_) { - } - } -}; +var Type = __nccwpck_require__(5991); -/***/ }), +var _toString = Object.prototype.toString; -/***/ 22655: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +function resolveYamlPairs(data) { + if (data === null) return true; + var index, length, pair, keys, result, + object = data; + result = new Array(object.length); -const { PassThrough } = __nccwpck_require__(2203); + for (index = 0, length = object.length; index < length; index += 1) { + pair = object[index]; -module.exports = function (/*streams...*/) { - var sources = [] - var output = new PassThrough({objectMode: true}) + if (_toString.call(pair) !== '[object Object]') return false; - output.setMaxListeners(0) + keys = Object.keys(pair); - output.add = add - output.isEmpty = isEmpty + if (keys.length !== 1) return false; - output.on('unpipe', remove) + result[index] = [ keys[0], pair[keys[0]] ]; + } - Array.prototype.slice.call(arguments).forEach(add) + return true; +} - return output +function constructYamlPairs(data) { + if (data === null) return []; - function add (source) { - if (Array.isArray(source)) { - source.forEach(add) - return this - } + var index, length, pair, keys, result, + object = data; - sources.push(source); - source.once('end', remove.bind(null, source)) - source.once('error', output.emit.bind(output, 'error')) - source.pipe(output, {end: false}) - return this - } + result = new Array(object.length); - function isEmpty () { - return sources.length == 0; - } + for (index = 0, length = object.length; index < length; index += 1) { + pair = object[index]; - function remove (source) { - sources = sources.filter(function (it) { return it !== source }) - if (!sources.length && output.readable) { output.end() } + keys = Object.keys(pair); + + result[index] = [ keys[0], pair[keys[0]] ]; } + + return result; } +module.exports = new Type('tag:yaml.org,2002:pairs', { + kind: 'sequence', + resolve: resolveYamlPairs, + construct: constructYamlPairs +}); + /***/ }), -/***/ 26606: +/***/ 1139: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -/* - * merge2 - * https://github.com/teambition/merge2 - * - * Copyright (c) 2014-2020 Teambition - * Licensed under the MIT license. - */ -const Stream = __nccwpck_require__(2203) -const PassThrough = Stream.PassThrough -const slice = Array.prototype.slice -module.exports = merge2 +var Type = __nccwpck_require__(5991); -function merge2 () { - const streamsQueue = [] - const args = slice.call(arguments) - let merging = false - let options = args[args.length - 1] +module.exports = new Type('tag:yaml.org,2002:seq', { + kind: 'sequence', + construct: function (data) { return data !== null ? data : []; } +}); - if (options && !Array.isArray(options) && options.pipe == null) { - args.pop() - } else { - options = {} - } - const doEnd = options.end !== false - const doPipeError = options.pipeError === true - if (options.objectMode == null) { - options.objectMode = true - } - if (options.highWaterMark == null) { - options.highWaterMark = 64 * 1024 - } - const mergedStream = PassThrough(options) +/***/ }), - function addStream () { - for (let i = 0, len = arguments.length; i < len; i++) { - streamsQueue.push(pauseStreams(arguments[i], options)) - } - mergeStream() - return this - } +/***/ 3200: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - function mergeStream () { - if (merging) { - return - } - merging = true - let streams = streamsQueue.shift() - if (!streams) { - process.nextTick(endStream) - return - } - if (!Array.isArray(streams)) { - streams = [streams] - } - let pipesCount = streams.length + 1 +var Type = __nccwpck_require__(5991); - function next () { - if (--pipesCount > 0) { - return - } - merging = false - mergeStream() +var _hasOwnProperty = Object.prototype.hasOwnProperty; + +function resolveYamlSet(data) { + if (data === null) return true; + + var key, object = data; + + for (key in object) { + if (_hasOwnProperty.call(object, key)) { + if (object[key] !== null) return false; } + } - function pipe (stream) { - function onend () { - stream.removeListener('merge2UnpipeEnd', onend) - stream.removeListener('end', onend) - if (doPipeError) { - stream.removeListener('error', onerror) - } - next() - } - function onerror (err) { - mergedStream.emit('error', err) - } - // skip ended stream - if (stream._readableState.endEmitted) { - return next() - } + return true; +} - stream.on('merge2UnpipeEnd', onend) - stream.on('end', onend) +function constructYamlSet(data) { + return data !== null ? data : {}; +} - if (doPipeError) { - stream.on('error', onerror) - } +module.exports = new Type('tag:yaml.org,2002:set', { + kind: 'mapping', + resolve: resolveYamlSet, + construct: constructYamlSet +}); - stream.pipe(mergedStream, { end: false }) - // compatible for old stream - stream.resume() - } - for (let i = 0; i < streams.length; i++) { - pipe(streams[i]) - } +/***/ }), - next() - } +/***/ 1327: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - function endStream () { - merging = false - // emit 'queueDrain' when all streams merged. - mergedStream.emit('queueDrain') - if (doEnd) { - mergedStream.end() - } - } - mergedStream.setMaxListeners(0) - mergedStream.add = addStream - mergedStream.on('unpipe', function (stream) { - stream.emit('merge2UnpipeEnd') - }) - if (args.length) { - addStream.apply(null, args) - } - return mergedStream -} +var Type = __nccwpck_require__(5991); -// check and pause streams for pipe. -function pauseStreams (streams, options) { - if (!Array.isArray(streams)) { - // Backwards-compat with old-style streams - if (!streams._readableState && streams.pipe) { - streams = streams.pipe(PassThrough(options)) - } - if (!streams._readableState || !streams.pause || !streams.pipe) { - throw new Error('Only readable stream can be merged.') - } - streams.pause() - } else { - for (let i = 0, len = streams.length; i < len; i++) { - streams[i] = pauseStreams(streams[i], options) - } - } - return streams -} +module.exports = new Type('tag:yaml.org,2002:str', { + kind: 'scalar', + construct: function (data) { return data !== null ? data : ''; } +}); /***/ }), -/***/ 77805: +/***/ 5608: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const util = __nccwpck_require__(39023); -const braces = __nccwpck_require__(37120); -const picomatch = __nccwpck_require__(99853); -const utils = __nccwpck_require__(36784); +var Type = __nccwpck_require__(5991); -const isEmptyString = v => v === '' || v === './'; -const hasBraces = v => { - const index = v.indexOf('{'); - return index > -1 && v.indexOf('}', index) > -1; -}; +var YAML_DATE_REGEXP = new RegExp( + '^([0-9][0-9][0-9][0-9])' + // [1] year + '-([0-9][0-9])' + // [2] month + '-([0-9][0-9])$'); // [3] day -/** - * Returns an array of strings that match one or more glob patterns. - * - * ```js - * const mm = require('micromatch'); - * // mm(list, patterns[, options]); - * - * console.log(mm(['a.js', 'a.txt'], ['*.js'])); - * //=> [ 'a.js' ] - * ``` - * @param {String|Array} `list` List of strings to match. - * @param {String|Array} `patterns` One or more glob patterns to use for matching. - * @param {Object} `options` See available [options](#options) - * @return {Array} Returns an array of matches - * @summary false - * @api public - */ +var YAML_TIMESTAMP_REGEXP = new RegExp( + '^([0-9][0-9][0-9][0-9])' + // [1] year + '-([0-9][0-9]?)' + // [2] month + '-([0-9][0-9]?)' + // [3] day + '(?:[Tt]|[ \\t]+)' + // ... + '([0-9][0-9]?)' + // [4] hour + ':([0-9][0-9])' + // [5] minute + ':([0-9][0-9])' + // [6] second + '(?:\\.([0-9]*))?' + // [7] fraction + '(?:[ \\t]*(Z|([-+])([0-9][0-9]?)' + // [8] tz [9] tz_sign [10] tz_hour + '(?::([0-9][0-9]))?))?$'); // [11] tz_minute -const micromatch = (list, patterns, options) => { - patterns = [].concat(patterns); - list = [].concat(list); +function resolveYamlTimestamp(data) { + if (data === null) return false; + if (YAML_DATE_REGEXP.exec(data) !== null) return true; + if (YAML_TIMESTAMP_REGEXP.exec(data) !== null) return true; + return false; +} - let omit = new Set(); - let keep = new Set(); - let items = new Set(); - let negatives = 0; +function constructYamlTimestamp(data) { + var match, year, month, day, hour, minute, second, fraction = 0, + delta = null, tz_hour, tz_minute, date; - let onResult = state => { - items.add(state.output); - if (options && options.onResult) { - options.onResult(state); - } - }; + match = YAML_DATE_REGEXP.exec(data); + if (match === null) match = YAML_TIMESTAMP_REGEXP.exec(data); - for (let i = 0; i < patterns.length; i++) { - let isMatch = picomatch(String(patterns[i]), { ...options, onResult }, true); - let negated = isMatch.state.negated || isMatch.state.negatedExtglob; - if (negated) negatives++; + if (match === null) throw new Error('Date resolve error'); - for (let item of list) { - let matched = isMatch(item, true); + // match: [1] year [2] month [3] day - let match = negated ? !matched.isMatch : matched.isMatch; - if (!match) continue; + year = +(match[1]); + month = +(match[2]) - 1; // JS month starts with 0 + day = +(match[3]); - if (negated) { - omit.add(matched.output); - } else { - omit.delete(matched.output); - keep.add(matched.output); - } - } + if (!match[4]) { // no hour + return new Date(Date.UTC(year, month, day)); } - let result = negatives === patterns.length ? [...items] : [...keep]; - let matches = result.filter(item => !omit.has(item)); + // match: [4] hour [5] minute [6] second [7] fraction - if (options && matches.length === 0) { - if (options.failglob === true) { - throw new Error(`No matches found for "${patterns.join(', ')}"`); - } + hour = +(match[4]); + minute = +(match[5]); + second = +(match[6]); - if (options.nonull === true || options.nullglob === true) { - return options.unescape ? patterns.map(p => p.replace(/\\/g, '')) : patterns; + if (match[7]) { + fraction = match[7].slice(0, 3); + while (fraction.length < 3) { // milli-seconds + fraction += '0'; } + fraction = +fraction; } - return matches; -}; + // match: [8] tz [9] tz_sign [10] tz_hour [11] tz_minute -/** - * Backwards compatibility - */ + if (match[9]) { + tz_hour = +(match[10]); + tz_minute = +(match[11] || 0); + delta = (tz_hour * 60 + tz_minute) * 60000; // delta in mili-seconds + if (match[9] === '-') delta = -delta; + } -micromatch.match = micromatch; + date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction)); -/** - * Returns a matcher function from the given glob `pattern` and `options`. - * The returned function takes a string to match as its only argument and returns - * true if the string is a match. - * - * ```js - * const mm = require('micromatch'); - * // mm.matcher(pattern[, options]); - * - * const isMatch = mm.matcher('*.!(*a)'); - * console.log(isMatch('a.a')); //=> false - * console.log(isMatch('a.b')); //=> true - * ``` - * @param {String} `pattern` Glob pattern - * @param {Object} `options` - * @return {Function} Returns a matcher function. - * @api public - */ + if (delta) date.setTime(date.getTime() - delta); -micromatch.matcher = (pattern, options) => picomatch(pattern, options); + return date; +} -/** - * Returns true if **any** of the given glob `patterns` match the specified `string`. - * - * ```js - * const mm = require('micromatch'); - * // mm.isMatch(string, patterns[, options]); - * - * console.log(mm.isMatch('a.a', ['b.*', '*.a'])); //=> true - * console.log(mm.isMatch('a.a', 'b.*')); //=> false - * ``` - * @param {String} `str` The string to test. - * @param {String|Array} `patterns` One or more glob patterns to use for matching. - * @param {Object} `[options]` See available [options](#options). - * @return {Boolean} Returns true if any patterns match `str` - * @api public - */ +function representYamlTimestamp(object /*, style*/) { + return object.toISOString(); +} -micromatch.isMatch = (str, patterns, options) => picomatch(patterns, options)(str); +module.exports = new Type('tag:yaml.org,2002:timestamp', { + kind: 'scalar', + resolve: resolveYamlTimestamp, + construct: constructYamlTimestamp, + instanceOf: Date, + represent: representYamlTimestamp +}); -/** - * Backwards compatibility - */ -micromatch.any = micromatch.isMatch; +/***/ }), -/** - * Returns a list of strings that _**do not match any**_ of the given `patterns`. - * - * ```js - * const mm = require('micromatch'); - * // mm.not(list, patterns[, options]); - * - * console.log(mm.not(['a.a', 'b.b', 'c.c'], '*.a')); - * //=> ['b.b', 'c.c'] - * ``` - * @param {Array} `list` Array of strings to match. - * @param {String|Array} `patterns` One or more glob pattern to use for matching. - * @param {Object} `options` See available [options](#options) for changing how matches are performed - * @return {Array} Returns an array of strings that **do not match** the given patterns. - * @api public - */ +/***/ 5309: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -micromatch.not = (list, patterns, options = {}) => { - patterns = [].concat(patterns).map(String); - let result = new Set(); - let items = []; - let onResult = state => { - if (options.onResult) options.onResult(state); - items.push(state.output); + + +var loader = __nccwpck_require__(4802); +var dumper = __nccwpck_require__(2208); + + +function renamed(from, to) { + return function () { + throw new Error('Function yaml.' + from + ' is removed in js-yaml 4. ' + + 'Use yaml.' + to + ' instead, which is now safe by default.'); }; +} - let matches = new Set(micromatch(list, patterns, { ...options, onResult })); - for (let item of items) { - if (!matches.has(item)) { - result.add(item); - } - } - return [...result]; +module.exports.Type = __nccwpck_require__(4313); +module.exports.Schema = __nccwpck_require__(8325); +module.exports.FAILSAFE_SCHEMA = __nccwpck_require__(1068); +module.exports.JSON_SCHEMA = __nccwpck_require__(9875); +module.exports.CORE_SCHEMA = __nccwpck_require__(2454); +module.exports.DEFAULT_SCHEMA = __nccwpck_require__(4260); +module.exports.load = loader.load; +module.exports.loadAll = loader.loadAll; +module.exports.dump = dumper.dump; +module.exports.YAMLException = __nccwpck_require__(3716); + +// Re-export all types in case user wants to create custom schema +module.exports.types = { + binary: __nccwpck_require__(4497), + float: __nccwpck_require__(9980), + map: __nccwpck_require__(4952), + null: __nccwpck_require__(9697), + pairs: __nccwpck_require__(7399), + set: __nccwpck_require__(2610), + timestamp: __nccwpck_require__(7098), + bool: __nccwpck_require__(4204), + int: __nccwpck_require__(5707), + merge: __nccwpck_require__(8546), + omap: __nccwpck_require__(1005), + seq: __nccwpck_require__(2941), + str: __nccwpck_require__(3501) }; -/** - * Returns true if the given `string` contains the given pattern. Similar - * to [.isMatch](#isMatch) but the pattern can match any part of the string. - * - * ```js - * var mm = require('micromatch'); - * // mm.contains(string, pattern[, options]); - * - * console.log(mm.contains('aa/bb/cc', '*b')); - * //=> true - * console.log(mm.contains('aa/bb/cc', '*d')); - * //=> false - * ``` - * @param {String} `str` The string to match. - * @param {String|Array} `patterns` Glob pattern to use for matching. - * @param {Object} `options` See available [options](#options) for changing how matches are performed - * @return {Boolean} Returns true if any of the patterns matches any part of `str`. - * @api public - */ +// Removed functions from JS-YAML 3.0.x +module.exports.safeLoad = renamed('safeLoad', 'load'); +module.exports.safeLoadAll = renamed('safeLoadAll', 'loadAll'); +module.exports.safeDump = renamed('safeDump', 'dump'); + + +/***/ }), + +/***/ 20: +/***/ ((module) => { + + + -micromatch.contains = (str, pattern, options) => { - if (typeof str !== 'string') { - throw new TypeError(`Expected a string: "${util.inspect(str)}"`); - } +function isNothing(subject) { + return (typeof subject === 'undefined') || (subject === null); +} - if (Array.isArray(pattern)) { - return pattern.some(p => micromatch.contains(str, p, options)); - } - if (typeof pattern === 'string') { - if (isEmptyString(str) || isEmptyString(pattern)) { - return false; - } +function isObject(subject) { + return (typeof subject === 'object') && (subject !== null); +} - if (str.includes(pattern) || (str.startsWith('./') && str.slice(2).includes(pattern))) { - return true; - } - } - return micromatch.isMatch(str, pattern, { ...options, contains: true }); -}; +function toArray(sequence) { + if (Array.isArray(sequence)) return sequence; + else if (isNothing(sequence)) return []; -/** - * Filter the keys of the given object with the given `glob` pattern - * and `options`. Does not attempt to match nested keys. If you need this feature, - * use [glob-object][] instead. - * - * ```js - * const mm = require('micromatch'); - * // mm.matchKeys(object, patterns[, options]); - * - * const obj = { aa: 'a', ab: 'b', ac: 'c' }; - * console.log(mm.matchKeys(obj, '*b')); - * //=> { ab: 'b' } - * ``` - * @param {Object} `object` The object with keys to filter. - * @param {String|Array} `patterns` One or more glob patterns to use for matching. - * @param {Object} `options` See available [options](#options) for changing how matches are performed - * @return {Object} Returns an object with only keys that match the given patterns. - * @api public - */ + return [ sequence ]; +} -micromatch.matchKeys = (obj, patterns, options) => { - if (!utils.isObject(obj)) { - throw new TypeError('Expected the first argument to be an object'); - } - let keys = micromatch(Object.keys(obj), patterns, options); - let res = {}; - for (let key of keys) res[key] = obj[key]; - return res; -}; -/** - * Returns true if some of the strings in the given `list` match any of the given glob `patterns`. - * - * ```js - * const mm = require('micromatch'); - * // mm.some(list, patterns[, options]); - * - * console.log(mm.some(['foo.js', 'bar.js'], ['*.js', '!foo.js'])); - * // true - * console.log(mm.some(['foo.js'], ['*.js', '!foo.js'])); - * // false - * ``` - * @param {String|Array} `list` The string or array of strings to test. Returns as soon as the first match is found. - * @param {String|Array} `patterns` One or more glob patterns to use for matching. - * @param {Object} `options` See available [options](#options) for changing how matches are performed - * @return {Boolean} Returns true if any `patterns` matches any of the strings in `list` - * @api public - */ +function extend(target, source) { + var index, length, key, sourceKeys; -micromatch.some = (list, patterns, options) => { - let items = [].concat(list); + if (source) { + sourceKeys = Object.keys(source); - for (let pattern of [].concat(patterns)) { - let isMatch = picomatch(String(pattern), options); - if (items.some(item => isMatch(item))) { - return true; + for (index = 0, length = sourceKeys.length; index < length; index += 1) { + key = sourceKeys[index]; + target[key] = source[key]; } } - return false; -}; -/** - * Returns true if every string in the given `list` matches - * any of the given glob `patterns`. - * - * ```js - * const mm = require('micromatch'); - * // mm.every(list, patterns[, options]); - * - * console.log(mm.every('foo.js', ['foo.js'])); - * // true - * console.log(mm.every(['foo.js', 'bar.js'], ['*.js'])); - * // true - * console.log(mm.every(['foo.js', 'bar.js'], ['*.js', '!foo.js'])); - * // false - * console.log(mm.every(['foo.js'], ['*.js', '!foo.js'])); - * // false - * ``` - * @param {String|Array} `list` The string or array of strings to test. - * @param {String|Array} `patterns` One or more glob patterns to use for matching. - * @param {Object} `options` See available [options](#options) for changing how matches are performed - * @return {Boolean} Returns true if all `patterns` matches all of the strings in `list` - * @api public - */ + return target; +} -micromatch.every = (list, patterns, options) => { - let items = [].concat(list); - for (let pattern of [].concat(patterns)) { - let isMatch = picomatch(String(pattern), options); - if (!items.every(item => isMatch(item))) { - return false; - } +function repeat(string, count) { + var result = '', cycle; + + for (cycle = 0; cycle < count; cycle += 1) { + result += string; } - return true; -}; -/** - * Returns true if **all** of the given `patterns` match - * the specified string. - * - * ```js - * const mm = require('micromatch'); - * // mm.all(string, patterns[, options]); - * - * console.log(mm.all('foo.js', ['foo.js'])); - * // true - * - * console.log(mm.all('foo.js', ['*.js', '!foo.js'])); - * // false - * - * console.log(mm.all('foo.js', ['*.js', 'foo.js'])); - * // true - * - * console.log(mm.all('foo.js', ['*.js', 'f*', '*o*', '*o.js'])); - * // true - * ``` - * @param {String|Array} `str` The string to test. - * @param {String|Array} `patterns` One or more glob patterns to use for matching. - * @param {Object} `options` See available [options](#options) for changing how matches are performed - * @return {Boolean} Returns true if any patterns match `str` - * @api public - */ + return result; +} -micromatch.all = (str, patterns, options) => { - if (typeof str !== 'string') { - throw new TypeError(`Expected a string: "${util.inspect(str)}"`); - } - return [].concat(patterns).every(p => picomatch(p, options)(str)); -}; +function isNegativeZero(number) { + return (number === 0) && (Number.NEGATIVE_INFINITY === 1 / number); +} -/** - * Returns an array of matches captured by `pattern` in `string, or `null` if the pattern did not match. - * - * ```js - * const mm = require('micromatch'); - * // mm.capture(pattern, string[, options]); - * - * console.log(mm.capture('test/*.js', 'test/foo.js')); - * //=> ['foo'] - * console.log(mm.capture('test/*.js', 'foo/bar.css')); - * //=> null - * ``` - * @param {String} `glob` Glob pattern to use for matching. - * @param {String} `input` String to match - * @param {Object} `options` See available [options](#options) for changing how matches are performed - * @return {Array|null} Returns an array of captures if the input matches the glob pattern, otherwise `null`. - * @api public - */ -micromatch.capture = (glob, input, options) => { - let posix = utils.isWindows(options); - let regex = picomatch.makeRe(String(glob), { ...options, capture: true }); - let match = regex.exec(posix ? utils.toPosixSlashes(input) : input); +module.exports.isNothing = isNothing; +module.exports.isObject = isObject; +module.exports.toArray = toArray; +module.exports.repeat = repeat; +module.exports.isNegativeZero = isNegativeZero; +module.exports.extend = extend; - if (match) { - return match.slice(1).map(v => v === void 0 ? '' : v); - } -}; -/** - * Create a regular expression from the given glob `pattern`. - * - * ```js - * const mm = require('micromatch'); - * // mm.makeRe(pattern[, options]); - * - * console.log(mm.makeRe('*.js')); - * //=> /^(?:(\.[\\\/])?(?!\.)(?=.)[^\/]*?\.js)$/ - * ``` - * @param {String} `pattern` A glob pattern to convert to regex. - * @param {Object} `options` - * @return {RegExp} Returns a regex created from the given pattern. - * @api public - */ +/***/ }), -micromatch.makeRe = (...args) => picomatch.makeRe(...args); +/***/ 2208: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -/** - * Scan a glob pattern to separate the pattern into segments. Used - * by the [split](#split) method. - * - * ```js - * const mm = require('micromatch'); - * const state = mm.scan(pattern[, options]); - * ``` - * @param {String} `pattern` - * @param {Object} `options` - * @return {Object} Returns an object with - * @api public - */ -micromatch.scan = (...args) => picomatch.scan(...args); -/** - * Parse a glob pattern to create the source string for a regular - * expression. - * - * ```js - * const mm = require('micromatch'); - * const state = mm.parse(pattern[, options]); - * ``` - * @param {String} `glob` - * @param {Object} `options` - * @return {Object} Returns an object with useful properties and output to be used as regex source string. - * @api public - */ +/*eslint-disable no-use-before-define*/ -micromatch.parse = (patterns, options) => { - let res = []; - for (let pattern of [].concat(patterns || [])) { - for (let str of braces(String(pattern), options)) { - res.push(picomatch.parse(str, options)); - } - } - return res; -}; +var common = __nccwpck_require__(20); +var YAMLException = __nccwpck_require__(3716); +var DEFAULT_SCHEMA = __nccwpck_require__(4260); -/** - * Process the given brace `pattern`. - * - * ```js - * const { braces } = require('micromatch'); - * console.log(braces('foo/{a,b,c}/bar')); - * //=> [ 'foo/(a|b|c)/bar' ] - * - * console.log(braces('foo/{a,b,c}/bar', { expand: true })); - * //=> [ 'foo/a/bar', 'foo/b/bar', 'foo/c/bar' ] - * ``` - * @param {String} `pattern` String with brace pattern to process. - * @param {Object} `options` Any [options](#options) to change how expansion is performed. See the [braces][] library for all available options. - * @return {Array} - * @api public - */ +var _toString = Object.prototype.toString; +var _hasOwnProperty = Object.prototype.hasOwnProperty; -micromatch.braces = (pattern, options) => { - if (typeof pattern !== 'string') throw new TypeError('Expected a string'); - if ((options && options.nobrace === true) || !hasBraces(pattern)) { - return [pattern]; - } - return braces(pattern, options); -}; +var CHAR_BOM = 0xFEFF; +var CHAR_TAB = 0x09; /* Tab */ +var CHAR_LINE_FEED = 0x0A; /* LF */ +var CHAR_CARRIAGE_RETURN = 0x0D; /* CR */ +var CHAR_SPACE = 0x20; /* Space */ +var CHAR_EXCLAMATION = 0x21; /* ! */ +var CHAR_DOUBLE_QUOTE = 0x22; /* " */ +var CHAR_SHARP = 0x23; /* # */ +var CHAR_PERCENT = 0x25; /* % */ +var CHAR_AMPERSAND = 0x26; /* & */ +var CHAR_SINGLE_QUOTE = 0x27; /* ' */ +var CHAR_ASTERISK = 0x2A; /* * */ +var CHAR_COMMA = 0x2C; /* , */ +var CHAR_MINUS = 0x2D; /* - */ +var CHAR_COLON = 0x3A; /* : */ +var CHAR_EQUALS = 0x3D; /* = */ +var CHAR_GREATER_THAN = 0x3E; /* > */ +var CHAR_QUESTION = 0x3F; /* ? */ +var CHAR_COMMERCIAL_AT = 0x40; /* @ */ +var CHAR_LEFT_SQUARE_BRACKET = 0x5B; /* [ */ +var CHAR_RIGHT_SQUARE_BRACKET = 0x5D; /* ] */ +var CHAR_GRAVE_ACCENT = 0x60; /* ` */ +var CHAR_LEFT_CURLY_BRACKET = 0x7B; /* { */ +var CHAR_VERTICAL_LINE = 0x7C; /* | */ +var CHAR_RIGHT_CURLY_BRACKET = 0x7D; /* } */ -/** - * Expand braces - */ +var ESCAPE_SEQUENCES = {}; -micromatch.braceExpand = (pattern, options) => { - if (typeof pattern !== 'string') throw new TypeError('Expected a string'); - return micromatch.braces(pattern, { ...options, expand: true }); -}; +ESCAPE_SEQUENCES[0x00] = '\\0'; +ESCAPE_SEQUENCES[0x07] = '\\a'; +ESCAPE_SEQUENCES[0x08] = '\\b'; +ESCAPE_SEQUENCES[0x09] = '\\t'; +ESCAPE_SEQUENCES[0x0A] = '\\n'; +ESCAPE_SEQUENCES[0x0B] = '\\v'; +ESCAPE_SEQUENCES[0x0C] = '\\f'; +ESCAPE_SEQUENCES[0x0D] = '\\r'; +ESCAPE_SEQUENCES[0x1B] = '\\e'; +ESCAPE_SEQUENCES[0x22] = '\\"'; +ESCAPE_SEQUENCES[0x5C] = '\\\\'; +ESCAPE_SEQUENCES[0x85] = '\\N'; +ESCAPE_SEQUENCES[0xA0] = '\\_'; +ESCAPE_SEQUENCES[0x2028] = '\\L'; +ESCAPE_SEQUENCES[0x2029] = '\\P'; -/** - * Expose micromatch - */ +var DEPRECATED_BOOLEANS_SYNTAX = [ + 'y', 'Y', 'yes', 'Yes', 'YES', 'on', 'On', 'ON', + 'n', 'N', 'no', 'No', 'NO', 'off', 'Off', 'OFF' +]; -// exposed for tests -micromatch.hasBraces = hasBraces; -module.exports = micromatch; +var DEPRECATED_BASE60_SYNTAX = /^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/; +function compileStyleMap(schema, map) { + var result, keys, index, length, tag, style, type; -/***/ }), + if (map === null) return {}; -/***/ 99853: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + result = {}; + keys = Object.keys(map); + for (index = 0, length = keys.length; index < length; index += 1) { + tag = keys[index]; + style = String(map[tag]); + if (tag.slice(0, 2) === '!!') { + tag = 'tag:yaml.org,2002:' + tag.slice(2); + } + type = schema.compiledTypeMap['fallback'][tag]; -module.exports = __nccwpck_require__(27067); + if (type && _hasOwnProperty.call(type.styleAliases, style)) { + style = type.styleAliases[style]; + } + result[tag] = style; + } -/***/ }), + return result; +} -/***/ 20332: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +function encodeHex(character) { + var string, handle, length; + string = character.toString(16).toUpperCase(); + if (character <= 0xFF) { + handle = 'x'; + length = 2; + } else if (character <= 0xFFFF) { + handle = 'u'; + length = 4; + } else if (character <= 0xFFFFFFFF) { + handle = 'U'; + length = 8; + } else { + throw new YAMLException('code point within a string may not be greater than 0xFFFFFFFF'); + } -const path = __nccwpck_require__(16928); -const WIN_SLASH = '\\\\/'; -const WIN_NO_SLASH = `[^${WIN_SLASH}]`; + return '\\' + handle + common.repeat('0', length - string.length) + string; +} -/** - * Posix glob regex - */ -const DOT_LITERAL = '\\.'; -const PLUS_LITERAL = '\\+'; -const QMARK_LITERAL = '\\?'; -const SLASH_LITERAL = '\\/'; -const ONE_CHAR = '(?=.)'; -const QMARK = '[^/]'; -const END_ANCHOR = `(?:${SLASH_LITERAL}|$)`; -const START_ANCHOR = `(?:^|${SLASH_LITERAL})`; -const DOTS_SLASH = `${DOT_LITERAL}{1,2}${END_ANCHOR}`; -const NO_DOT = `(?!${DOT_LITERAL})`; -const NO_DOTS = `(?!${START_ANCHOR}${DOTS_SLASH})`; -const NO_DOT_SLASH = `(?!${DOT_LITERAL}{0,1}${END_ANCHOR})`; -const NO_DOTS_SLASH = `(?!${DOTS_SLASH})`; -const QMARK_NO_DOT = `[^.${SLASH_LITERAL}]`; -const STAR = `${QMARK}*?`; +var QUOTING_TYPE_SINGLE = 1, + QUOTING_TYPE_DOUBLE = 2; -const POSIX_CHARS = { - DOT_LITERAL, - PLUS_LITERAL, - QMARK_LITERAL, - SLASH_LITERAL, - ONE_CHAR, - QMARK, - END_ANCHOR, - DOTS_SLASH, - NO_DOT, - NO_DOTS, - NO_DOT_SLASH, - NO_DOTS_SLASH, - QMARK_NO_DOT, - STAR, - START_ANCHOR -}; +function State(options) { + this.schema = options['schema'] || DEFAULT_SCHEMA; + this.indent = Math.max(1, (options['indent'] || 2)); + this.noArrayIndent = options['noArrayIndent'] || false; + this.skipInvalid = options['skipInvalid'] || false; + this.flowLevel = (common.isNothing(options['flowLevel']) ? -1 : options['flowLevel']); + this.styleMap = compileStyleMap(this.schema, options['styles'] || null); + this.sortKeys = options['sortKeys'] || false; + this.lineWidth = options['lineWidth'] || 80; + this.noRefs = options['noRefs'] || false; + this.noCompatMode = options['noCompatMode'] || false; + this.condenseFlow = options['condenseFlow'] || false; + this.quotingType = options['quotingType'] === '"' ? QUOTING_TYPE_DOUBLE : QUOTING_TYPE_SINGLE; + this.forceQuotes = options['forceQuotes'] || false; + this.replacer = typeof options['replacer'] === 'function' ? options['replacer'] : null; -/** - * Windows glob regex - */ + this.implicitTypes = this.schema.compiledImplicit; + this.explicitTypes = this.schema.compiledExplicit; -const WINDOWS_CHARS = { - ...POSIX_CHARS, + this.tag = null; + this.result = ''; - SLASH_LITERAL: `[${WIN_SLASH}]`, - QMARK: WIN_NO_SLASH, - STAR: `${WIN_NO_SLASH}*?`, - DOTS_SLASH: `${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$)`, - NO_DOT: `(?!${DOT_LITERAL})`, - NO_DOTS: `(?!(?:^|[${WIN_SLASH}])${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`, - NO_DOT_SLASH: `(?!${DOT_LITERAL}{0,1}(?:[${WIN_SLASH}]|$))`, - NO_DOTS_SLASH: `(?!${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`, - QMARK_NO_DOT: `[^.${WIN_SLASH}]`, - START_ANCHOR: `(?:^|[${WIN_SLASH}])`, - END_ANCHOR: `(?:[${WIN_SLASH}]|$)` -}; + this.duplicates = []; + this.usedDuplicates = null; +} -/** - * POSIX Bracket Regex - */ +// Indents every line in a string. Empty lines (\n only) are not indented. +function indentString(string, spaces) { + var ind = common.repeat(' ', spaces), + position = 0, + next = -1, + result = '', + line, + length = string.length; -const POSIX_REGEX_SOURCE = { - alnum: 'a-zA-Z0-9', - alpha: 'a-zA-Z', - ascii: '\\x00-\\x7F', - blank: ' \\t', - cntrl: '\\x00-\\x1F\\x7F', - digit: '0-9', - graph: '\\x21-\\x7E', - lower: 'a-z', - print: '\\x20-\\x7E ', - punct: '\\-!"#$%&\'()\\*+,./:;<=>?@[\\]^_`{|}~', - space: ' \\t\\r\\n\\v\\f', - upper: 'A-Z', - word: 'A-Za-z0-9_', - xdigit: 'A-Fa-f0-9' -}; + while (position < length) { + next = string.indexOf('\n', position); + if (next === -1) { + line = string.slice(position); + position = length; + } else { + line = string.slice(position, next + 1); + position = next + 1; + } -module.exports = { - MAX_LENGTH: 1024 * 64, - POSIX_REGEX_SOURCE, + if (line.length && line !== '\n') result += ind; - // regular expressions - REGEX_BACKSLASH: /\\(?![*+?^${}(|)[\]])/g, - REGEX_NON_SPECIAL_CHARS: /^[^@![\].,$*+?^{}()|\\/]+/, - REGEX_SPECIAL_CHARS: /[-*+?.^${}(|)[\]]/, - REGEX_SPECIAL_CHARS_BACKREF: /(\\?)((\W)(\3*))/g, - REGEX_SPECIAL_CHARS_GLOBAL: /([-*+?.^${}(|)[\]])/g, - REGEX_REMOVE_BACKSLASH: /(?:\[.*?[^\\]\]|\\(?=.))/g, + result += line; + } - // Replace globs with equivalent patterns to reduce parsing time. - REPLACEMENTS: { - '***': '*', - '**/**': '**', - '**/**/**': '**' - }, + return result; +} + +function generateNextLine(state, level) { + return '\n' + common.repeat(' ', state.indent * level); +} - // Digits - CHAR_0: 48, /* 0 */ - CHAR_9: 57, /* 9 */ +function testImplicitResolving(state, str) { + var index, length, type; - // Alphabet chars. - CHAR_UPPERCASE_A: 65, /* A */ - CHAR_LOWERCASE_A: 97, /* a */ - CHAR_UPPERCASE_Z: 90, /* Z */ - CHAR_LOWERCASE_Z: 122, /* z */ + for (index = 0, length = state.implicitTypes.length; index < length; index += 1) { + type = state.implicitTypes[index]; - CHAR_LEFT_PARENTHESES: 40, /* ( */ - CHAR_RIGHT_PARENTHESES: 41, /* ) */ + if (type.resolve(str)) { + return true; + } + } - CHAR_ASTERISK: 42, /* * */ + return false; +} - // Non-alphabetic chars. - CHAR_AMPERSAND: 38, /* & */ - CHAR_AT: 64, /* @ */ - CHAR_BACKWARD_SLASH: 92, /* \ */ - CHAR_CARRIAGE_RETURN: 13, /* \r */ - CHAR_CIRCUMFLEX_ACCENT: 94, /* ^ */ - CHAR_COLON: 58, /* : */ - CHAR_COMMA: 44, /* , */ - CHAR_DOT: 46, /* . */ - CHAR_DOUBLE_QUOTE: 34, /* " */ - CHAR_EQUAL: 61, /* = */ - CHAR_EXCLAMATION_MARK: 33, /* ! */ - CHAR_FORM_FEED: 12, /* \f */ - CHAR_FORWARD_SLASH: 47, /* / */ - CHAR_GRAVE_ACCENT: 96, /* ` */ - CHAR_HASH: 35, /* # */ - CHAR_HYPHEN_MINUS: 45, /* - */ - CHAR_LEFT_ANGLE_BRACKET: 60, /* < */ - CHAR_LEFT_CURLY_BRACE: 123, /* { */ - CHAR_LEFT_SQUARE_BRACKET: 91, /* [ */ - CHAR_LINE_FEED: 10, /* \n */ - CHAR_NO_BREAK_SPACE: 160, /* \u00A0 */ - CHAR_PERCENT: 37, /* % */ - CHAR_PLUS: 43, /* + */ - CHAR_QUESTION_MARK: 63, /* ? */ - CHAR_RIGHT_ANGLE_BRACKET: 62, /* > */ - CHAR_RIGHT_CURLY_BRACE: 125, /* } */ - CHAR_RIGHT_SQUARE_BRACKET: 93, /* ] */ - CHAR_SEMICOLON: 59, /* ; */ - CHAR_SINGLE_QUOTE: 39, /* ' */ - CHAR_SPACE: 32, /* */ - CHAR_TAB: 9, /* \t */ - CHAR_UNDERSCORE: 95, /* _ */ - CHAR_VERTICAL_LINE: 124, /* | */ - CHAR_ZERO_WIDTH_NOBREAK_SPACE: 65279, /* \uFEFF */ +// [33] s-white ::= s-space | s-tab +function isWhitespace(c) { + return c === CHAR_SPACE || c === CHAR_TAB; +} - SEP: path.sep, +// Returns true if the character can be printed without escaping. +// From YAML 1.2: "any allowed characters known to be non-printable +// should also be escaped. [However,] This isn’t mandatory" +// Derived from nb-char - \t - #x85 - #xA0 - #x2028 - #x2029. +function isPrintable(c) { + return (0x00020 <= c && c <= 0x00007E) + || ((0x000A1 <= c && c <= 0x00D7FF) && c !== 0x2028 && c !== 0x2029) + || ((0x0E000 <= c && c <= 0x00FFFD) && c !== CHAR_BOM) + || (0x10000 <= c && c <= 0x10FFFF); +} - /** - * Create EXTGLOB_CHARS - */ +// [34] ns-char ::= nb-char - s-white +// [27] nb-char ::= c-printable - b-char - c-byte-order-mark +// [26] b-char ::= b-line-feed | b-carriage-return +// Including s-white (for some reason, examples doesn't match specs in this aspect) +// ns-char ::= c-printable - b-line-feed - b-carriage-return - c-byte-order-mark +function isNsCharOrWhitespace(c) { + return isPrintable(c) + && c !== CHAR_BOM + // - b-char + && c !== CHAR_CARRIAGE_RETURN + && c !== CHAR_LINE_FEED; +} - extglobChars(chars) { - return { - '!': { type: 'negate', open: '(?:(?!(?:', close: `))${chars.STAR})` }, - '?': { type: 'qmark', open: '(?:', close: ')?' }, - '+': { type: 'plus', open: '(?:', close: ')+' }, - '*': { type: 'star', open: '(?:', close: ')*' }, - '@': { type: 'at', open: '(?:', close: ')' } - }; - }, +// [127] ns-plain-safe(c) ::= c = flow-out ⇒ ns-plain-safe-out +// c = flow-in ⇒ ns-plain-safe-in +// c = block-key ⇒ ns-plain-safe-out +// c = flow-key ⇒ ns-plain-safe-in +// [128] ns-plain-safe-out ::= ns-char +// [129] ns-plain-safe-in ::= ns-char - c-flow-indicator +// [130] ns-plain-char(c) ::= ( ns-plain-safe(c) - “:” - “#” ) +// | ( /* An ns-char preceding */ “#” ) +// | ( “:” /* Followed by an ns-plain-safe(c) */ ) +function isPlainSafe(c, prev, inblock) { + var cIsNsCharOrWhitespace = isNsCharOrWhitespace(c); + var cIsNsChar = cIsNsCharOrWhitespace && !isWhitespace(c); + return ( + // ns-plain-safe + inblock ? // c = flow-in + cIsNsCharOrWhitespace + : cIsNsCharOrWhitespace + // - c-flow-indicator + && c !== CHAR_COMMA + && c !== CHAR_LEFT_SQUARE_BRACKET + && c !== CHAR_RIGHT_SQUARE_BRACKET + && c !== CHAR_LEFT_CURLY_BRACKET + && c !== CHAR_RIGHT_CURLY_BRACKET + ) + // ns-plain-char + && c !== CHAR_SHARP // false on '#' + && !(prev === CHAR_COLON && !cIsNsChar) // false on ': ' + || (isNsCharOrWhitespace(prev) && !isWhitespace(prev) && c === CHAR_SHARP) // change to true on '[^ ]#' + || (prev === CHAR_COLON && cIsNsChar); // change to true on ':[^ ]' +} - /** - * Create GLOB_CHARS - */ +// Simplified test for values allowed as the first character in plain style. +function isPlainSafeFirst(c) { + // Uses a subset of ns-char - c-indicator + // where ns-char = nb-char - s-white. + // No support of ( ( “?” | “:” | “-” ) /* Followed by an ns-plain-safe(c)) */ ) part + return isPrintable(c) && c !== CHAR_BOM + && !isWhitespace(c) // - s-white + // - (c-indicator ::= + // “-” | “?” | “:” | “,” | “[” | “]” | “{” | “}” + && c !== CHAR_MINUS + && c !== CHAR_QUESTION + && c !== CHAR_COLON + && c !== CHAR_COMMA + && c !== CHAR_LEFT_SQUARE_BRACKET + && c !== CHAR_RIGHT_SQUARE_BRACKET + && c !== CHAR_LEFT_CURLY_BRACKET + && c !== CHAR_RIGHT_CURLY_BRACKET + // | “#” | “&” | “*” | “!” | “|” | “=” | “>” | “'” | “"” + && c !== CHAR_SHARP + && c !== CHAR_AMPERSAND + && c !== CHAR_ASTERISK + && c !== CHAR_EXCLAMATION + && c !== CHAR_VERTICAL_LINE + && c !== CHAR_EQUALS + && c !== CHAR_GREATER_THAN + && c !== CHAR_SINGLE_QUOTE + && c !== CHAR_DOUBLE_QUOTE + // | “%” | “@” | “`”) + && c !== CHAR_PERCENT + && c !== CHAR_COMMERCIAL_AT + && c !== CHAR_GRAVE_ACCENT; +} - globChars(win32) { - return win32 === true ? WINDOWS_CHARS : POSIX_CHARS; +// Simplified test for values allowed as the last character in plain style. +function isPlainSafeLast(c) { + // just not whitespace or colon, it will be checked to be plain character later + return !isWhitespace(c) && c !== CHAR_COLON; +} + +// Same as 'string'.codePointAt(pos), but works in older browsers. +function codePointAt(string, pos) { + var first = string.charCodeAt(pos), second; + if (first >= 0xD800 && first <= 0xDBFF && pos + 1 < string.length) { + second = string.charCodeAt(pos + 1); + if (second >= 0xDC00 && second <= 0xDFFF) { + // https://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae + return (first - 0xD800) * 0x400 + second - 0xDC00 + 0x10000; + } } -}; + return first; +} +// Determines whether block indentation indicator is required. +function needIndentIndicator(string) { + var leadingSpaceRe = /^\n* /; + return leadingSpaceRe.test(string); +} -/***/ }), +var STYLE_PLAIN = 1, + STYLE_SINGLE = 2, + STYLE_LITERAL = 3, + STYLE_FOLDED = 4, + STYLE_DOUBLE = 5; -/***/ 37898: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +// Determines which scalar styles are possible and returns the preferred style. +// lineWidth = -1 => no limit. +// Pre-conditions: str.length > 0. +// Post-conditions: +// STYLE_PLAIN or STYLE_SINGLE => no \n are in the string. +// STYLE_LITERAL => no lines are suitable for folding (or lineWidth is -1). +// STYLE_FOLDED => a line > lineWidth and can be folded (and lineWidth != -1). +function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, + testAmbiguousType, quotingType, forceQuotes, inblock) { + var i; + var char = 0; + var prevChar = null; + var hasLineBreak = false; + var hasFoldableLine = false; // only checked if shouldTrackWidth + var shouldTrackWidth = lineWidth !== -1; + var previousLineBreak = -1; // count the first line correctly + var plain = isPlainSafeFirst(codePointAt(string, 0)) + && isPlainSafeLast(codePointAt(string, string.length - 1)); + if (singleLineOnly || forceQuotes) { + // Case: no block styles. + // Check for disallowed characters to rule out plain and single. + for (i = 0; i < string.length; char >= 0x10000 ? i += 2 : i++) { + char = codePointAt(string, i); + if (!isPrintable(char)) { + return STYLE_DOUBLE; + } + plain = plain && isPlainSafe(char, prevChar, inblock); + prevChar = char; + } + } else { + // Case: block styles permitted. + for (i = 0; i < string.length; char >= 0x10000 ? i += 2 : i++) { + char = codePointAt(string, i); + if (char === CHAR_LINE_FEED) { + hasLineBreak = true; + // Check if any line can be folded. + if (shouldTrackWidth) { + hasFoldableLine = hasFoldableLine || + // Foldable line = too long, and not more-indented. + (i - previousLineBreak - 1 > lineWidth && + string[previousLineBreak + 1] !== ' '); + previousLineBreak = i; + } + } else if (!isPrintable(char)) { + return STYLE_DOUBLE; + } + plain = plain && isPlainSafe(char, prevChar, inblock); + prevChar = char; + } + // in case the end is missing a \n + hasFoldableLine = hasFoldableLine || (shouldTrackWidth && + (i - previousLineBreak - 1 > lineWidth && + string[previousLineBreak + 1] !== ' ')); + } + // Although every style can represent \n without escaping, prefer block styles + // for multiline, since they're more readable and they don't add empty lines. + // Also prefer folding a super-long line. + if (!hasLineBreak && !hasFoldableLine) { + // Strings interpretable as another type have to be quoted; + // e.g. the string 'true' vs. the boolean true. + if (plain && !forceQuotes && !testAmbiguousType(string)) { + return STYLE_PLAIN; + } + return quotingType === QUOTING_TYPE_DOUBLE ? STYLE_DOUBLE : STYLE_SINGLE; + } + // Edge case: block indentation indicator can only have one digit. + if (indentPerLevel > 9 && needIndentIndicator(string)) { + return STYLE_DOUBLE; + } + // At this point we know block styles are valid. + // Prefer literal style unless we want to fold. + if (!forceQuotes) { + return hasFoldableLine ? STYLE_FOLDED : STYLE_LITERAL; + } + return quotingType === QUOTING_TYPE_DOUBLE ? STYLE_DOUBLE : STYLE_SINGLE; +} -const constants = __nccwpck_require__(20332); -const utils = __nccwpck_require__(36784); +// Note: line breaking/folding is implemented for only the folded style. +// NB. We drop the last trailing newline (if any) of a returned block scalar +// since the dumper adds its own newline. This always works: +// • No ending newline => unaffected; already using strip "-" chomping. +// • Ending newline => removed then restored. +// Importantly, this keeps the "+" chomp indicator from gaining an extra line. +function writeScalar(state, string, level, iskey, inblock) { + state.dump = (function () { + if (string.length === 0) { + return state.quotingType === QUOTING_TYPE_DOUBLE ? '""' : "''"; + } + if (!state.noCompatMode) { + if (DEPRECATED_BOOLEANS_SYNTAX.indexOf(string) !== -1 || DEPRECATED_BASE60_SYNTAX.test(string)) { + return state.quotingType === QUOTING_TYPE_DOUBLE ? ('"' + string + '"') : ("'" + string + "'"); + } + } -/** - * Constants - */ + var indent = state.indent * Math.max(1, level); // no 0-indent scalars + // As indentation gets deeper, let the width decrease monotonically + // to the lower bound min(state.lineWidth, 40). + // Note that this implies + // state.lineWidth ≤ 40 + state.indent: width is fixed at the lower bound. + // state.lineWidth > 40 + state.indent: width decreases until the lower bound. + // This behaves better than a constant minimum width which disallows narrower options, + // or an indent threshold which causes the width to suddenly increase. + var lineWidth = state.lineWidth === -1 + ? -1 : Math.max(Math.min(state.lineWidth, 40), state.lineWidth - indent); -const { - MAX_LENGTH, - POSIX_REGEX_SOURCE, - REGEX_NON_SPECIAL_CHARS, - REGEX_SPECIAL_CHARS_BACKREF, - REPLACEMENTS -} = constants; + // Without knowing if keys are implicit/explicit, assume implicit for safety. + var singleLineOnly = iskey + // No block styles in flow mode. + || (state.flowLevel > -1 && level >= state.flowLevel); + function testAmbiguity(string) { + return testImplicitResolving(state, string); + } -/** - * Helpers - */ + switch (chooseScalarStyle(string, singleLineOnly, state.indent, lineWidth, + testAmbiguity, state.quotingType, state.forceQuotes && !iskey, inblock)) { -const expandRange = (args, options) => { - if (typeof options.expandRange === 'function') { - return options.expandRange(...args, options); - } + case STYLE_PLAIN: + return string; + case STYLE_SINGLE: + return "'" + string.replace(/'/g, "''") + "'"; + case STYLE_LITERAL: + return '|' + blockHeader(string, state.indent) + + dropEndingNewline(indentString(string, indent)); + case STYLE_FOLDED: + return '>' + blockHeader(string, state.indent) + + dropEndingNewline(indentString(foldString(string, lineWidth), indent)); + case STYLE_DOUBLE: + return '"' + escapeString(string, lineWidth) + '"'; + default: + throw new YAMLException('impossible error: invalid scalar style'); + } + }()); +} - args.sort(); - const value = `[${args.join('-')}]`; +// Pre-conditions: string is valid for a block scalar, 1 <= indentPerLevel <= 9. +function blockHeader(string, indentPerLevel) { + var indentIndicator = needIndentIndicator(string) ? String(indentPerLevel) : ''; - try { - /* eslint-disable-next-line no-new */ - new RegExp(value); - } catch (ex) { - return args.map(v => utils.escapeRegex(v)).join('..'); - } + // note the special case: the string '\n' counts as a "trailing" empty line. + var clip = string[string.length - 1] === '\n'; + var keep = clip && (string[string.length - 2] === '\n' || string === '\n'); + var chomp = keep ? '+' : (clip ? '' : '-'); - return value; -}; + return indentIndicator + chomp + '\n'; +} -/** - * Create the message for a syntax error - */ +// (See the note for writeScalar.) +function dropEndingNewline(string) { + return string[string.length - 1] === '\n' ? string.slice(0, -1) : string; +} -const syntaxError = (type, char) => { - return `Missing ${type}: "${char}" - use "\\\\${char}" to match literal characters`; -}; +// Note: a long line without a suitable break point will exceed the width limit. +// Pre-conditions: every char in str isPrintable, str.length > 0, width > 0. +function foldString(string, width) { + // In folded style, $k$ consecutive newlines output as $k+1$ newlines— + // unless they're before or after a more-indented line, or at the very + // beginning or end, in which case $k$ maps to $k$. + // Therefore, parse each chunk as newline(s) followed by a content line. + var lineRe = /(\n+)([^\n]*)/g; -/** - * Parse the given input string. - * @param {String} input - * @param {Object} options - * @return {Object} - */ + // first line (possibly an empty line) + var result = (function () { + var nextLF = string.indexOf('\n'); + nextLF = nextLF !== -1 ? nextLF : string.length; + lineRe.lastIndex = nextLF; + return foldLine(string.slice(0, nextLF), width); + }()); + // If we haven't reached the first content line yet, don't add an extra \n. + var prevMoreIndented = string[0] === '\n' || string[0] === ' '; + var moreIndented; -const parse = (input, options) => { - if (typeof input !== 'string') { - throw new TypeError('Expected a string'); + // rest of the lines + var match; + while ((match = lineRe.exec(string))) { + var prefix = match[1], line = match[2]; + moreIndented = (line[0] === ' '); + result += prefix + + (!prevMoreIndented && !moreIndented && line !== '' + ? '\n' : '') + + foldLine(line, width); + prevMoreIndented = moreIndented; } - input = REPLACEMENTS[input] || input; + return result; +} - const opts = { ...options }; - const max = typeof opts.maxLength === 'number' ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH; +// Greedy line breaking. +// Picks the longest line under the limit each time, +// otherwise settles for the shortest line over the limit. +// NB. More-indented lines *cannot* be folded, as that would add an extra \n. +function foldLine(line, width) { + if (line === '' || line[0] === ' ') return line; - let len = input.length; - if (len > max) { - throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`); + // Since a more-indented line adds a \n, breaks can't be followed by a space. + var breakRe = / [^ ]/g; // note: the match index will always be <= length-2. + var match; + // start is an inclusive index. end, curr, and next are exclusive. + var start = 0, end, curr = 0, next = 0; + var result = ''; + + // Invariants: 0 <= start <= length-1. + // 0 <= curr <= next <= max(0, length-2). curr - start <= width. + // Inside the loop: + // A match implies length >= 2, so curr and next are <= length-2. + while ((match = breakRe.exec(line))) { + next = match.index; + // maintain invariant: curr - start <= width + if (next - start > width) { + end = (curr > start) ? curr : next; // derive end <= length-2 + result += '\n' + line.slice(start, end); + // skip the space that was output as \n + start = end + 1; // derive start <= length-1 + } + curr = next; } - const bos = { type: 'bos', value: '', output: opts.prepend || '' }; - const tokens = [bos]; + // By the invariants, start <= length-1, so there is something left over. + // It is either the whole string or a part starting from non-whitespace. + result += '\n'; + // Insert a break if the remainder is too long and there is a break available. + if (line.length - start > width && curr > start) { + result += line.slice(start, curr) + '\n' + line.slice(curr + 1); + } else { + result += line.slice(start); + } - const capture = opts.capture ? '' : '?:'; - const win32 = utils.isWindows(options); + return result.slice(1); // drop extra \n joiner +} - // create constants based on platform, for windows or posix - const PLATFORM_CHARS = constants.globChars(win32); - const EXTGLOB_CHARS = constants.extglobChars(PLATFORM_CHARS); +// Escapes a double-quoted string. +function escapeString(string) { + var result = ''; + var char = 0; + var escapeSeq; - const { - DOT_LITERAL, - PLUS_LITERAL, - SLASH_LITERAL, - ONE_CHAR, - DOTS_SLASH, - NO_DOT, - NO_DOT_SLASH, - NO_DOTS_SLASH, - QMARK, - QMARK_NO_DOT, - STAR, - START_ANCHOR - } = PLATFORM_CHARS; + for (var i = 0; i < string.length; char >= 0x10000 ? i += 2 : i++) { + char = codePointAt(string, i); + escapeSeq = ESCAPE_SEQUENCES[char]; - const globstar = opts => { - return `(${capture}(?:(?!${START_ANCHOR}${opts.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`; - }; + if (!escapeSeq && isPrintable(char)) { + result += string[i]; + if (char >= 0x10000) result += string[i + 1]; + } else { + result += escapeSeq || encodeHex(char); + } + } - const nodot = opts.dot ? '' : NO_DOT; - const qmarkNoDot = opts.dot ? QMARK : QMARK_NO_DOT; - let star = opts.bash === true ? globstar(opts) : STAR; + return result; +} - if (opts.capture) { - star = `(${star})`; - } +function writeFlowSequence(state, level, object) { + var _result = '', + _tag = state.tag, + index, + length, + value; + + for (index = 0, length = object.length; index < length; index += 1) { + value = object[index]; + + if (state.replacer) { + value = state.replacer.call(object, String(index), value); + } - // minimatch options support - if (typeof opts.noext === 'boolean') { - opts.noextglob = opts.noext; + // Write only valid elements, put null instead of invalid elements. + if (writeNode(state, level, value, false, false) || + (typeof value === 'undefined' && + writeNode(state, level, null, false, false))) { + + if (_result !== '') _result += ',' + (!state.condenseFlow ? ' ' : ''); + _result += state.dump; + } } - const state = { - input, - index: -1, - start: 0, - dot: opts.dot === true, - consumed: '', - output: '', - prefix: '', - backtrack: false, - negated: false, - brackets: 0, - braces: 0, - parens: 0, - quotes: 0, - globstar: false, - tokens - }; + state.tag = _tag; + state.dump = '[' + _result + ']'; +} - input = utils.removePrefix(input, state); - len = input.length; +function writeBlockSequence(state, level, object, compact) { + var _result = '', + _tag = state.tag, + index, + length, + value; - const extglobs = []; - const braces = []; - const stack = []; - let prev = bos; - let value; + for (index = 0, length = object.length; index < length; index += 1) { + value = object[index]; - /** - * Tokenizing helpers - */ + if (state.replacer) { + value = state.replacer.call(object, String(index), value); + } - const eos = () => state.index === len - 1; - const peek = state.peek = (n = 1) => input[state.index + n]; - const advance = state.advance = () => input[++state.index] || ''; - const remaining = () => input.slice(state.index + 1); - const consume = (value = '', num = 0) => { - state.consumed += value; - state.index += num; - }; + // Write only valid elements, put null instead of invalid elements. + if (writeNode(state, level + 1, value, true, true, false, true) || + (typeof value === 'undefined' && + writeNode(state, level + 1, null, true, true, false, true))) { - const append = token => { - state.output += token.output != null ? token.output : token.value; - consume(token.value); - }; + if (!compact || _result !== '') { + _result += generateNextLine(state, level); + } - const negate = () => { - let count = 1; + if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { + _result += '-'; + } else { + _result += '- '; + } - while (peek() === '!' && (peek(2) !== '(' || peek(3) === '?')) { - advance(); - state.start++; - count++; + _result += state.dump; } + } - if (count % 2 === 0) { - return false; - } + state.tag = _tag; + state.dump = _result || '[]'; // Empty sequence if no valid values. +} - state.negated = true; - state.start++; - return true; - }; +function writeFlowMapping(state, level, object) { + var _result = '', + _tag = state.tag, + objectKeyList = Object.keys(object), + index, + length, + objectKey, + objectValue, + pairBuffer; - const increment = type => { - state[type]++; - stack.push(type); - }; + for (index = 0, length = objectKeyList.length; index < length; index += 1) { - const decrement = type => { - state[type]--; - stack.pop(); - }; + pairBuffer = ''; + if (_result !== '') pairBuffer += ', '; - /** - * Push tokens onto the tokens array. This helper speeds up - * tokenizing by 1) helping us avoid backtracking as much as possible, - * and 2) helping us avoid creating extra tokens when consecutive - * characters are plain text. This improves performance and simplifies - * lookbehinds. - */ + if (state.condenseFlow) pairBuffer += '"'; - const push = tok => { - if (prev.type === 'globstar') { - const isBrace = state.braces > 0 && (tok.type === 'comma' || tok.type === 'brace'); - const isExtglob = tok.extglob === true || (extglobs.length && (tok.type === 'pipe' || tok.type === 'paren')); + objectKey = objectKeyList[index]; + objectValue = object[objectKey]; - if (tok.type !== 'slash' && tok.type !== 'paren' && !isBrace && !isExtglob) { - state.output = state.output.slice(0, -prev.output.length); - prev.type = 'star'; - prev.value = '*'; - prev.output = star; - state.output += prev.output; - } + if (state.replacer) { + objectValue = state.replacer.call(object, objectKey, objectValue); } - if (extglobs.length && tok.type !== 'paren') { - extglobs[extglobs.length - 1].inner += tok.value; + if (!writeNode(state, level, objectKey, false, false)) { + continue; // Skip this pair because of invalid key; } - if (tok.value || tok.output) append(tok); - if (prev && prev.type === 'text' && tok.type === 'text') { - prev.value += tok.value; - prev.output = (prev.output || '') + tok.value; - return; + if (state.dump.length > 1024) pairBuffer += '? '; + + pairBuffer += state.dump + (state.condenseFlow ? '"' : '') + ':' + (state.condenseFlow ? '' : ' '); + + if (!writeNode(state, level, objectValue, false, false)) { + continue; // Skip this pair because of invalid value. } - tok.prev = prev; - tokens.push(tok); - prev = tok; - }; + pairBuffer += state.dump; - const extglobOpen = (type, value) => { - const token = { ...EXTGLOB_CHARS[value], conditions: 1, inner: '' }; + // Both key and value are valid. + _result += pairBuffer; + } - token.prev = prev; - token.parens = state.parens; - token.output = state.output; - const output = (opts.capture ? '(' : '') + token.open; + state.tag = _tag; + state.dump = '{' + _result + '}'; +} - increment('parens'); - push({ type, value, output: state.output ? '' : ONE_CHAR }); - push({ type: 'paren', extglob: true, value: advance(), output }); - extglobs.push(token); - }; +function writeBlockMapping(state, level, object, compact) { + var _result = '', + _tag = state.tag, + objectKeyList = Object.keys(object), + index, + length, + objectKey, + objectValue, + explicitPair, + pairBuffer; - const extglobClose = token => { - let output = token.close + (opts.capture ? ')' : ''); - let rest; + // Allow sorting keys so that the output file is deterministic + if (state.sortKeys === true) { + // Default sorting + objectKeyList.sort(); + } else if (typeof state.sortKeys === 'function') { + // Custom sort function + objectKeyList.sort(state.sortKeys); + } else if (state.sortKeys) { + // Something is wrong + throw new YAMLException('sortKeys must be a boolean or a function'); + } - if (token.type === 'negate') { - let extglobStar = star; + for (index = 0, length = objectKeyList.length; index < length; index += 1) { + pairBuffer = ''; - if (token.inner && token.inner.length > 1 && token.inner.includes('/')) { - extglobStar = globstar(opts); - } + if (!compact || _result !== '') { + pairBuffer += generateNextLine(state, level); + } - if (extglobStar !== star || eos() || /^\)+$/.test(remaining())) { - output = token.close = `)$))${extglobStar}`; - } + objectKey = objectKeyList[index]; + objectValue = object[objectKey]; - if (token.inner.includes('*') && (rest = remaining()) && /^\.[^\\/.]+$/.test(rest)) { - // Any non-magical string (`.ts`) or even nested expression (`.{ts,tsx}`) can follow after the closing parenthesis. - // In this case, we need to parse the string and use it in the output of the original pattern. - // Suitable patterns: `/!(*.d).ts`, `/!(*.d).{ts,tsx}`, `**/!(*-dbg).@(js)`. - // - // Disabling the `fastpaths` option due to a problem with parsing strings as `.ts` in the pattern like `**/!(*.d).ts`. - const expression = parse(rest, { ...options, fastpaths: false }).output; + if (state.replacer) { + objectValue = state.replacer.call(object, objectKey, objectValue); + } - output = token.close = `)${expression})${extglobStar})`; - } + if (!writeNode(state, level + 1, objectKey, true, true, true)) { + continue; // Skip this pair because of invalid key. + } - if (token.prev.type === 'bos') { - state.negatedExtglob = true; + explicitPair = (state.tag !== null && state.tag !== '?') || + (state.dump && state.dump.length > 1024); + + if (explicitPair) { + if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { + pairBuffer += '?'; + } else { + pairBuffer += '? '; } } - push({ type: 'paren', extglob: true, value, output }); - decrement('parens'); - }; + pairBuffer += state.dump; - /** - * Fast paths - */ + if (explicitPair) { + pairBuffer += generateNextLine(state, level); + } - if (opts.fastpaths !== false && !/(^[*!]|[/()[\]{}"])/.test(input)) { - let backslashes = false; + if (!writeNode(state, level + 1, objectValue, true, explicitPair)) { + continue; // Skip this pair because of invalid value. + } - let output = input.replace(REGEX_SPECIAL_CHARS_BACKREF, (m, esc, chars, first, rest, index) => { - if (first === '\\') { - backslashes = true; - return m; - } + if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { + pairBuffer += ':'; + } else { + pairBuffer += ': '; + } - if (first === '?') { - if (esc) { - return esc + first + (rest ? QMARK.repeat(rest.length) : ''); - } - if (index === 0) { - return qmarkNoDot + (rest ? QMARK.repeat(rest.length) : ''); + pairBuffer += state.dump; + + // Both key and value are valid. + _result += pairBuffer; + } + + state.tag = _tag; + state.dump = _result || '{}'; // Empty mapping if no valid pairs. +} + +function detectType(state, object, explicit) { + var _result, typeList, index, length, type, style; + + typeList = explicit ? state.explicitTypes : state.implicitTypes; + + for (index = 0, length = typeList.length; index < length; index += 1) { + type = typeList[index]; + + if ((type.instanceOf || type.predicate) && + (!type.instanceOf || ((typeof object === 'object') && (object instanceof type.instanceOf))) && + (!type.predicate || type.predicate(object))) { + + if (explicit) { + if (type.multi && type.representName) { + state.tag = type.representName(object); + } else { + state.tag = type.tag; } - return QMARK.repeat(chars.length); + } else { + state.tag = '?'; } - if (first === '.') { - return DOT_LITERAL.repeat(chars.length); - } + if (type.represent) { + style = state.styleMap[type.tag] || type.defaultStyle; - if (first === '*') { - if (esc) { - return esc + first + (rest ? star : ''); + if (_toString.call(type.represent) === '[object Function]') { + _result = type.represent(object, style); + } else if (_hasOwnProperty.call(type.represent, style)) { + _result = type.represent[style](object, style); + } else { + throw new YAMLException('!<' + type.tag + '> tag resolver accepts not "' + style + '" style'); } - return star; - } - return esc ? m : `\\${m}`; - }); - if (backslashes === true) { - if (opts.unescape === true) { - output = output.replace(/\\/g, ''); - } else { - output = output.replace(/\\+/g, m => { - return m.length % 2 === 0 ? '\\\\' : (m ? '\\' : ''); - }); + state.dump = _result; } - } - if (output === input && opts.contains === true) { - state.output = input; - return state; + return true; } - - state.output = utils.wrapOutput(output, state, options); - return state; } - /** - * Tokenize input until we reach end-of-string - */ - - while (!eos()) { - value = advance(); + return false; +} - if (value === '\u0000') { - continue; - } +// Serializes `object` and writes it to global `result`. +// Returns true on success, or false on invalid object. +// +function writeNode(state, level, object, block, compact, iskey, isblockseq) { + state.tag = null; + state.dump = object; - /** - * Escaped characters - */ + if (!detectType(state, object, false)) { + detectType(state, object, true); + } - if (value === '\\') { - const next = peek(); + var type = _toString.call(state.dump); + var inblock = block; + var tagStr; - if (next === '/' && opts.bash !== true) { - continue; - } + if (block) { + block = (state.flowLevel < 0 || state.flowLevel > level); + } - if (next === '.' || next === ';') { - continue; - } + var objectOrArray = type === '[object Object]' || type === '[object Array]', + duplicateIndex, + duplicate; - if (!next) { - value += '\\'; - push({ type: 'text', value }); - continue; - } + if (objectOrArray) { + duplicateIndex = state.duplicates.indexOf(object); + duplicate = duplicateIndex !== -1; + } - // collapse slashes to reduce potential for exploits - const match = /^\\+/.exec(remaining()); - let slashes = 0; + if ((state.tag !== null && state.tag !== '?') || duplicate || (state.indent !== 2 && level > 0)) { + compact = false; + } - if (match && match[0].length > 2) { - slashes = match[0].length; - state.index += slashes; - if (slashes % 2 !== 0) { - value += '\\'; + if (duplicate && state.usedDuplicates[duplicateIndex]) { + state.dump = '*ref_' + duplicateIndex; + } else { + if (objectOrArray && duplicate && !state.usedDuplicates[duplicateIndex]) { + state.usedDuplicates[duplicateIndex] = true; + } + if (type === '[object Object]') { + if (block && (Object.keys(state.dump).length !== 0)) { + writeBlockMapping(state, level, state.dump, compact); + if (duplicate) { + state.dump = '&ref_' + duplicateIndex + state.dump; + } + } else { + writeFlowMapping(state, level, state.dump); + if (duplicate) { + state.dump = '&ref_' + duplicateIndex + ' ' + state.dump; } } - - if (opts.unescape === true) { - value = advance(); + } else if (type === '[object Array]') { + if (block && (state.dump.length !== 0)) { + if (state.noArrayIndent && !isblockseq && level > 0) { + writeBlockSequence(state, level - 1, state.dump, compact); + } else { + writeBlockSequence(state, level, state.dump, compact); + } + if (duplicate) { + state.dump = '&ref_' + duplicateIndex + state.dump; + } } else { - value += advance(); + writeFlowSequence(state, level, state.dump); + if (duplicate) { + state.dump = '&ref_' + duplicateIndex + ' ' + state.dump; + } + } + } else if (type === '[object String]') { + if (state.tag !== '?') { + writeScalar(state, state.dump, level, iskey, inblock); } + } else if (type === '[object Undefined]') { + return false; + } else { + if (state.skipInvalid) return false; + throw new YAMLException('unacceptable kind of an object to dump ' + type); + } - if (state.brackets === 0) { - push({ type: 'text', value }); - continue; + if (state.tag !== null && state.tag !== '?') { + // Need to encode all characters except those allowed by the spec: + // + // [35] ns-dec-digit ::= [#x30-#x39] /* 0-9 */ + // [36] ns-hex-digit ::= ns-dec-digit + // | [#x41-#x46] /* A-F */ | [#x61-#x66] /* a-f */ + // [37] ns-ascii-letter ::= [#x41-#x5A] /* A-Z */ | [#x61-#x7A] /* a-z */ + // [38] ns-word-char ::= ns-dec-digit | ns-ascii-letter | “-” + // [39] ns-uri-char ::= “%” ns-hex-digit ns-hex-digit | ns-word-char | “#” + // | “;” | “/” | “?” | “:” | “@” | “&” | “=” | “+” | “$” | “,” + // | “_” | “.” | “!” | “~” | “*” | “'” | “(” | “)” | “[” | “]” + // + // Also need to encode '!' because it has special meaning (end of tag prefix). + // + tagStr = encodeURI( + state.tag[0] === '!' ? state.tag.slice(1) : state.tag + ).replace(/!/g, '%21'); + + if (state.tag[0] === '!') { + tagStr = '!' + tagStr; + } else if (tagStr.slice(0, 18) === 'tag:yaml.org,2002:') { + tagStr = '!!' + tagStr.slice(18); + } else { + tagStr = '!<' + tagStr + '>'; } + + state.dump = tagStr + ' ' + state.dump; } + } - /** - * If we're inside a regex character class, continue - * until we reach the closing bracket. - */ + return true; +} - if (state.brackets > 0 && (value !== ']' || prev.value === '[' || prev.value === '[^')) { - if (opts.posix !== false && value === ':') { - const inner = prev.value.slice(1); - if (inner.includes('[')) { - prev.posix = true; +function getDuplicateReferences(object, state) { + var objects = [], + duplicatesIndexes = [], + index, + length; - if (inner.includes(':')) { - const idx = prev.value.lastIndexOf('['); - const pre = prev.value.slice(0, idx); - const rest = prev.value.slice(idx + 2); - const posix = POSIX_REGEX_SOURCE[rest]; - if (posix) { - prev.value = pre + posix; - state.backtrack = true; - advance(); + inspectNode(object, objects, duplicatesIndexes); + + for (index = 0, length = duplicatesIndexes.length; index < length; index += 1) { + state.duplicates.push(objects[duplicatesIndexes[index]]); + } + state.usedDuplicates = new Array(length); +} + +function inspectNode(object, objects, duplicatesIndexes) { + var objectKeyList, + index, + length; + + if (object !== null && typeof object === 'object') { + index = objects.indexOf(object); + if (index !== -1) { + if (duplicatesIndexes.indexOf(index) === -1) { + duplicatesIndexes.push(index); + } + } else { + objects.push(object); - if (!bos.output && tokens.indexOf(prev) === 1) { - bos.output = ONE_CHAR; - } - continue; - } - } + if (Array.isArray(object)) { + for (index = 0, length = object.length; index < length; index += 1) { + inspectNode(object[index], objects, duplicatesIndexes); } - } + } else { + objectKeyList = Object.keys(object); - if ((value === '[' && peek() !== ':') || (value === '-' && peek() === ']')) { - value = `\\${value}`; + for (index = 0, length = objectKeyList.length; index < length; index += 1) { + inspectNode(object[objectKeyList[index]], objects, duplicatesIndexes); + } } + } + } +} - if (value === ']' && (prev.value === '[' || prev.value === '[^')) { - value = `\\${value}`; - } +function dump(input, options) { + options = options || {}; - if (opts.posix === true && value === '!' && prev.value === '[') { - value = '^'; - } + var state = new State(options); - prev.value += value; - append({ value }); - continue; - } + if (!state.noRefs) getDuplicateReferences(input, state); - /** - * If we're inside a quoted string, continue - * until we reach the closing double quote. - */ + var value = input; - if (state.quotes === 1 && value !== '"') { - value = utils.escapeRegex(value); - prev.value += value; - append({ value }); - continue; - } + if (state.replacer) { + value = state.replacer.call({ '': value }, '', value); + } - /** - * Double quotes - */ + if (writeNode(state, 0, value, true, true)) return state.dump + '\n'; - if (value === '"') { - state.quotes = state.quotes === 1 ? 0 : 1; - if (opts.keepQuotes === true) { - push({ type: 'text', value }); - } - continue; - } + return ''; +} - /** - * Parentheses - */ +module.exports.dump = dump; - if (value === '(') { - increment('parens'); - push({ type: 'paren', value }); - continue; - } - if (value === ')') { - if (state.parens === 0 && opts.strictBrackets === true) { - throw new SyntaxError(syntaxError('opening', '(')); - } +/***/ }), - const extglob = extglobs[extglobs.length - 1]; - if (extglob && state.parens === extglob.parens + 1) { - extglobClose(extglobs.pop()); - continue; - } +/***/ 3716: +/***/ ((module) => { - push({ type: 'paren', value, output: state.parens ? ')' : '\\)' }); - decrement('parens'); - continue; - } +// YAML error class. http://stackoverflow.com/questions/8458984 +// - /** - * Square brackets - */ - if (value === '[') { - if (opts.nobracket === true || !remaining().includes(']')) { - if (opts.nobracket !== true && opts.strictBrackets === true) { - throw new SyntaxError(syntaxError('closing', ']')); - } - value = `\\${value}`; - } else { - increment('brackets'); - } +function formatError(exception, compact) { + var where = '', message = exception.reason || '(unknown reason)'; - push({ type: 'bracket', value }); - continue; - } + if (!exception.mark) return message; - if (value === ']') { - if (opts.nobracket === true || (prev && prev.type === 'bracket' && prev.value.length === 1)) { - push({ type: 'text', value, output: `\\${value}` }); - continue; - } + if (exception.mark.name) { + where += 'in "' + exception.mark.name + '" '; + } - if (state.brackets === 0) { - if (opts.strictBrackets === true) { - throw new SyntaxError(syntaxError('opening', '[')); - } + where += '(' + (exception.mark.line + 1) + ':' + (exception.mark.column + 1) + ')'; - push({ type: 'text', value, output: `\\${value}` }); - continue; - } + if (!compact && exception.mark.snippet) { + where += '\n\n' + exception.mark.snippet; + } - decrement('brackets'); + return message + ' ' + where; +} - const prevValue = prev.value.slice(1); - if (prev.posix !== true && prevValue[0] === '^' && !prevValue.includes('/')) { - value = `/${value}`; - } - prev.value += value; - append({ value }); +function YAMLException(reason, mark) { + // Super constructor + Error.call(this); - // when literal brackets are explicitly disabled - // assume we should match with a regex character class - if (opts.literalBrackets === false || utils.hasRegexChars(prevValue)) { - continue; - } + this.name = 'YAMLException'; + this.reason = reason; + this.mark = mark; + this.message = formatError(this, false); - const escaped = utils.escapeRegex(prev.value); - state.output = state.output.slice(0, -prev.value.length); + // Include stack trace in error object + if (Error.captureStackTrace) { + // Chrome and NodeJS + Error.captureStackTrace(this, this.constructor); + } else { + // FF, IE 10+ and Safari 6+. Fallback for others + this.stack = (new Error()).stack || ''; + } +} - // when literal brackets are explicitly enabled - // assume we should escape the brackets to match literal characters - if (opts.literalBrackets === true) { - state.output += escaped; - prev.value = escaped; - continue; - } - // when the user specifies nothing, try to match both - prev.value = `(${capture}${escaped}|${prev.value})`; - state.output += prev.value; - continue; - } +// Inherit from Error +YAMLException.prototype = Object.create(Error.prototype); +YAMLException.prototype.constructor = YAMLException; - /** - * Braces - */ - if (value === '{' && opts.nobrace !== true) { - increment('braces'); +YAMLException.prototype.toString = function toString(compact) { + return this.name + ': ' + formatError(this, compact); +}; - const open = { - type: 'brace', - value, - output: '(', - outputIndex: state.output.length, - tokensIndex: state.tokens.length - }; - braces.push(open); - push(open); - continue; - } +module.exports = YAMLException; - if (value === '}') { - const brace = braces[braces.length - 1]; - if (opts.nobrace === true || !brace) { - push({ type: 'text', value, output: value }); - continue; - } +/***/ }), - let output = ')'; +/***/ 4802: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - if (brace.dots === true) { - const arr = tokens.slice(); - const range = []; - for (let i = arr.length - 1; i >= 0; i--) { - tokens.pop(); - if (arr[i].type === 'brace') { - break; - } - if (arr[i].type !== 'dots') { - range.unshift(arr[i].value); - } - } - output = expandRange(range, opts); - state.backtrack = true; - } +/*eslint-disable max-len,no-use-before-define*/ - if (brace.comma !== true && brace.dots !== true) { - const out = state.output.slice(0, brace.outputIndex); - const toks = state.tokens.slice(brace.tokensIndex); - brace.value = brace.output = '\\{'; - value = output = '\\}'; - state.output = out; - for (const t of toks) { - state.output += (t.output || t.value); - } - } +var common = __nccwpck_require__(20); +var YAMLException = __nccwpck_require__(3716); +var makeSnippet = __nccwpck_require__(8148); +var DEFAULT_SCHEMA = __nccwpck_require__(4260); - push({ type: 'brace', value, output }); - decrement('braces'); - braces.pop(); - continue; - } - /** - * Pipes - */ +var _hasOwnProperty = Object.prototype.hasOwnProperty; - if (value === '|') { - if (extglobs.length > 0) { - extglobs[extglobs.length - 1].conditions++; - } - push({ type: 'text', value }); - continue; - } - /** - * Commas - */ +var CONTEXT_FLOW_IN = 1; +var CONTEXT_FLOW_OUT = 2; +var CONTEXT_BLOCK_IN = 3; +var CONTEXT_BLOCK_OUT = 4; - if (value === ',') { - let output = value; - const brace = braces[braces.length - 1]; - if (brace && stack[stack.length - 1] === 'braces') { - brace.comma = true; - output = '|'; - } +var CHOMPING_CLIP = 1; +var CHOMPING_STRIP = 2; +var CHOMPING_KEEP = 3; - push({ type: 'comma', value, output }); - continue; - } - /** - * Slashes - */ +var PATTERN_NON_PRINTABLE = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/; +var PATTERN_NON_ASCII_LINE_BREAKS = /[\x85\u2028\u2029]/; +var PATTERN_FLOW_INDICATORS = /[,\[\]\{\}]/; +var PATTERN_TAG_HANDLE = /^(?:!|!!|![a-z\-]+!)$/i; +var PATTERN_TAG_URI = /^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i; - if (value === '/') { - // if the beginning of the glob is "./", advance the start - // to the current index, and don't add the "./" characters - // to the state. This greatly simplifies lookbehinds when - // checking for BOS characters like "!" and "." (not "./") - if (prev.type === 'dot' && state.index === state.start + 1) { - state.start = state.index + 1; - state.consumed = ''; - state.output = ''; - tokens.pop(); - prev = bos; // reset "prev" to the first token - continue; - } - push({ type: 'slash', value, output: SLASH_LITERAL }); - continue; - } +function _class(obj) { return Object.prototype.toString.call(obj); } - /** - * Dots - */ +function is_EOL(c) { + return (c === 0x0A/* LF */) || (c === 0x0D/* CR */); +} - if (value === '.') { - if (state.braces > 0 && prev.type === 'dot') { - if (prev.value === '.') prev.output = DOT_LITERAL; - const brace = braces[braces.length - 1]; - prev.type = 'dots'; - prev.output += value; - prev.value += value; - brace.dots = true; - continue; - } +function is_WHITE_SPACE(c) { + return (c === 0x09/* Tab */) || (c === 0x20/* Space */); +} - if ((state.braces + state.parens) === 0 && prev.type !== 'bos' && prev.type !== 'slash') { - push({ type: 'text', value, output: DOT_LITERAL }); - continue; - } +function is_WS_OR_EOL(c) { + return (c === 0x09/* Tab */) || + (c === 0x20/* Space */) || + (c === 0x0A/* LF */) || + (c === 0x0D/* CR */); +} - push({ type: 'dot', value, output: DOT_LITERAL }); - continue; - } +function is_FLOW_INDICATOR(c) { + return c === 0x2C/* , */ || + c === 0x5B/* [ */ || + c === 0x5D/* ] */ || + c === 0x7B/* { */ || + c === 0x7D/* } */; +} - /** - * Question marks - */ +function fromHexCode(c) { + var lc; - if (value === '?') { - const isGroup = prev && prev.value === '('; - if (!isGroup && opts.noextglob !== true && peek() === '(' && peek(2) !== '?') { - extglobOpen('qmark', value); - continue; - } + if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) { + return c - 0x30; + } - if (prev && prev.type === 'paren') { - const next = peek(); - let output = value; + /*eslint-disable no-bitwise*/ + lc = c | 0x20; - if (next === '<' && !utils.supportsLookbehinds()) { - throw new Error('Node.js v10 or higher is required for regex lookbehinds'); - } + if ((0x61/* a */ <= lc) && (lc <= 0x66/* f */)) { + return lc - 0x61 + 10; + } - if ((prev.value === '(' && !/[!=<:]/.test(next)) || (next === '<' && !/<([!=]|\w+>)/.test(remaining()))) { - output = `\\${value}`; - } + return -1; +} - push({ type: 'text', value, output }); - continue; - } +function escapedHexLen(c) { + if (c === 0x78/* x */) { return 2; } + if (c === 0x75/* u */) { return 4; } + if (c === 0x55/* U */) { return 8; } + return 0; +} - if (opts.dot !== true && (prev.type === 'slash' || prev.type === 'bos')) { - push({ type: 'qmark', value, output: QMARK_NO_DOT }); - continue; - } +function fromDecimalCode(c) { + if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) { + return c - 0x30; + } - push({ type: 'qmark', value, output: QMARK }); - continue; - } + return -1; +} - /** - * Exclamation - */ +function simpleEscapeSequence(c) { + /* eslint-disable indent */ + return (c === 0x30/* 0 */) ? '\x00' : + (c === 0x61/* a */) ? '\x07' : + (c === 0x62/* b */) ? '\x08' : + (c === 0x74/* t */) ? '\x09' : + (c === 0x09/* Tab */) ? '\x09' : + (c === 0x6E/* n */) ? '\x0A' : + (c === 0x76/* v */) ? '\x0B' : + (c === 0x66/* f */) ? '\x0C' : + (c === 0x72/* r */) ? '\x0D' : + (c === 0x65/* e */) ? '\x1B' : + (c === 0x20/* Space */) ? ' ' : + (c === 0x22/* " */) ? '\x22' : + (c === 0x2F/* / */) ? '/' : + (c === 0x5C/* \ */) ? '\x5C' : + (c === 0x4E/* N */) ? '\x85' : + (c === 0x5F/* _ */) ? '\xA0' : + (c === 0x4C/* L */) ? '\u2028' : + (c === 0x50/* P */) ? '\u2029' : ''; +} - if (value === '!') { - if (opts.noextglob !== true && peek() === '(') { - if (peek(2) !== '?' || !/[!=<:]/.test(peek(3))) { - extglobOpen('negate', value); - continue; - } - } +function charFromCodepoint(c) { + if (c <= 0xFFFF) { + return String.fromCharCode(c); + } + // Encode UTF-16 surrogate pair + // https://en.wikipedia.org/wiki/UTF-16#Code_points_U.2B010000_to_U.2B10FFFF + return String.fromCharCode( + ((c - 0x010000) >> 10) + 0xD800, + ((c - 0x010000) & 0x03FF) + 0xDC00 + ); +} - if (opts.nonegate !== true && state.index === 0) { - negate(); - continue; - } - } +// set a property of a literal object, while protecting against prototype pollution, +// see https://github.com/nodeca/js-yaml/issues/164 for more details +function setProperty(object, key, value) { + // used for this specific key only because Object.defineProperty is slow + if (key === '__proto__') { + Object.defineProperty(object, key, { + configurable: true, + enumerable: true, + writable: true, + value: value + }); + } else { + object[key] = value; + } +} - /** - * Plus - */ +var simpleEscapeCheck = new Array(256); // integer, for fast access +var simpleEscapeMap = new Array(256); +for (var i = 0; i < 256; i++) { + simpleEscapeCheck[i] = simpleEscapeSequence(i) ? 1 : 0; + simpleEscapeMap[i] = simpleEscapeSequence(i); +} - if (value === '+') { - if (opts.noextglob !== true && peek() === '(' && peek(2) !== '?') { - extglobOpen('plus', value); - continue; - } - if ((prev && prev.value === '(') || opts.regex === false) { - push({ type: 'plus', value, output: PLUS_LITERAL }); - continue; - } +function State(input, options) { + this.input = input; - if ((prev && (prev.type === 'bracket' || prev.type === 'paren' || prev.type === 'brace')) || state.parens > 0) { - push({ type: 'plus', value }); - continue; - } + this.filename = options['filename'] || null; + this.schema = options['schema'] || DEFAULT_SCHEMA; + this.onWarning = options['onWarning'] || null; + // (Hidden) Remove? makes the loader to expect YAML 1.1 documents + // if such documents have no explicit %YAML directive + this.legacy = options['legacy'] || false; - push({ type: 'plus', value: PLUS_LITERAL }); - continue; - } + this.json = options['json'] || false; + this.listener = options['listener'] || null; - /** - * Plain text - */ + this.implicitTypes = this.schema.compiledImplicit; + this.typeMap = this.schema.compiledTypeMap; - if (value === '@') { - if (opts.noextglob !== true && peek() === '(' && peek(2) !== '?') { - push({ type: 'at', extglob: true, value, output: '' }); - continue; - } + this.length = input.length; + this.position = 0; + this.line = 0; + this.lineStart = 0; + this.lineIndent = 0; - push({ type: 'text', value }); - continue; - } + // position of first leading tab in the current line, + // used to make sure there are no tabs in the indentation + this.firstTabInLine = -1; - /** - * Plain text - */ + this.documents = []; - if (value !== '*') { - if (value === '$' || value === '^') { - value = `\\${value}`; - } + /* + this.version; + this.checkLineBreaks; + this.tagMap; + this.anchorMap; + this.tag; + this.anchor; + this.kind; + this.result;*/ - const match = REGEX_NON_SPECIAL_CHARS.exec(remaining()); - if (match) { - value += match[0]; - state.index += match[0].length; - } +} - push({ type: 'text', value }); - continue; - } - /** - * Stars - */ +function generateError(state, message) { + var mark = { + name: state.filename, + buffer: state.input.slice(0, -1), // omit trailing \0 + position: state.position, + line: state.line, + column: state.position - state.lineStart + }; - if (prev && (prev.type === 'globstar' || prev.star === true)) { - prev.type = 'star'; - prev.star = true; - prev.value += value; - prev.output = star; - state.backtrack = true; - state.globstar = true; - consume(value); - continue; - } + mark.snippet = makeSnippet(mark); - let rest = remaining(); - if (opts.noextglob !== true && /^\([^?]/.test(rest)) { - extglobOpen('star', value); - continue; - } + return new YAMLException(message, mark); +} - if (prev.type === 'star') { - if (opts.noglobstar === true) { - consume(value); - continue; - } +function throwError(state, message) { + throw generateError(state, message); +} - const prior = prev.prev; - const before = prior.prev; - const isStart = prior.type === 'slash' || prior.type === 'bos'; - const afterStar = before && (before.type === 'star' || before.type === 'globstar'); +function throwWarning(state, message) { + if (state.onWarning) { + state.onWarning.call(null, generateError(state, message)); + } +} - if (opts.bash === true && (!isStart || (rest[0] && rest[0] !== '/'))) { - push({ type: 'star', value, output: '' }); - continue; - } - const isBrace = state.braces > 0 && (prior.type === 'comma' || prior.type === 'brace'); - const isExtglob = extglobs.length && (prior.type === 'pipe' || prior.type === 'paren'); - if (!isStart && prior.type !== 'paren' && !isBrace && !isExtglob) { - push({ type: 'star', value, output: '' }); - continue; - } +var directiveHandlers = { - // strip consecutive `/**/` - while (rest.slice(0, 3) === '/**') { - const after = input[state.index + 4]; - if (after && after !== '/') { - break; - } - rest = rest.slice(3); - consume('/**', 3); - } + YAML: function handleYamlDirective(state, name, args) { - if (prior.type === 'bos' && eos()) { - prev.type = 'globstar'; - prev.value += value; - prev.output = globstar(opts); - state.output = prev.output; - state.globstar = true; - consume(value); - continue; - } + var match, major, minor; - if (prior.type === 'slash' && prior.prev.type !== 'bos' && !afterStar && eos()) { - state.output = state.output.slice(0, -(prior.output + prev.output).length); - prior.output = `(?:${prior.output}`; + if (state.version !== null) { + throwError(state, 'duplication of %YAML directive'); + } - prev.type = 'globstar'; - prev.output = globstar(opts) + (opts.strictSlashes ? ')' : '|$)'); - prev.value += value; - state.globstar = true; - state.output += prior.output + prev.output; - consume(value); - continue; - } + if (args.length !== 1) { + throwError(state, 'YAML directive accepts exactly one argument'); + } - if (prior.type === 'slash' && prior.prev.type !== 'bos' && rest[0] === '/') { - const end = rest[1] !== void 0 ? '|$' : ''; + match = /^([0-9]+)\.([0-9]+)$/.exec(args[0]); - state.output = state.output.slice(0, -(prior.output + prev.output).length); - prior.output = `(?:${prior.output}`; + if (match === null) { + throwError(state, 'ill-formed argument of the YAML directive'); + } - prev.type = 'globstar'; - prev.output = `${globstar(opts)}${SLASH_LITERAL}|${SLASH_LITERAL}${end})`; - prev.value += value; + major = parseInt(match[1], 10); + minor = parseInt(match[2], 10); - state.output += prior.output + prev.output; - state.globstar = true; + if (major !== 1) { + throwError(state, 'unacceptable YAML version of the document'); + } - consume(value + advance()); + state.version = args[0]; + state.checkLineBreaks = (minor < 2); - push({ type: 'slash', value: '/', output: '' }); - continue; - } + if (minor !== 1 && minor !== 2) { + throwWarning(state, 'unsupported YAML version of the document'); + } + }, - if (prior.type === 'bos' && rest[0] === '/') { - prev.type = 'globstar'; - prev.value += value; - prev.output = `(?:^|${SLASH_LITERAL}|${globstar(opts)}${SLASH_LITERAL})`; - state.output = prev.output; - state.globstar = true; - consume(value + advance()); - push({ type: 'slash', value: '/', output: '' }); - continue; - } + TAG: function handleTagDirective(state, name, args) { - // remove single star from output - state.output = state.output.slice(0, -prev.output.length); + var handle, prefix; - // reset previous token to globstar - prev.type = 'globstar'; - prev.output = globstar(opts); - prev.value += value; + if (args.length !== 2) { + throwError(state, 'TAG directive accepts exactly two arguments'); + } - // reset output with globstar - state.output += prev.output; - state.globstar = true; - consume(value); - continue; + handle = args[0]; + prefix = args[1]; + + if (!PATTERN_TAG_HANDLE.test(handle)) { + throwError(state, 'ill-formed tag handle (first argument) of the TAG directive'); } - const token = { type: 'star', value, output: star }; + if (_hasOwnProperty.call(state.tagMap, handle)) { + throwError(state, 'there is a previously declared suffix for "' + handle + '" tag handle'); + } - if (opts.bash === true) { - token.output = '.*?'; - if (prev.type === 'bos' || prev.type === 'slash') { - token.output = nodot + token.output; - } - push(token); - continue; + if (!PATTERN_TAG_URI.test(prefix)) { + throwError(state, 'ill-formed tag prefix (second argument) of the TAG directive'); } - if (prev && (prev.type === 'bracket' || prev.type === 'paren') && opts.regex === true) { - token.output = value; - push(token); - continue; + try { + prefix = decodeURIComponent(prefix); + } catch (err) { + throwError(state, 'tag prefix is malformed: ' + prefix); } - if (state.index === state.start || prev.type === 'slash' || prev.type === 'dot') { - if (prev.type === 'dot') { - state.output += NO_DOT_SLASH; - prev.output += NO_DOT_SLASH; + state.tagMap[handle] = prefix; + } +}; - } else if (opts.dot === true) { - state.output += NO_DOTS_SLASH; - prev.output += NO_DOTS_SLASH; - } else { - state.output += nodot; - prev.output += nodot; - } +function captureSegment(state, start, end, checkJson) { + var _position, _length, _character, _result; - if (peek() !== '*') { - state.output += ONE_CHAR; - prev.output += ONE_CHAR; + if (start < end) { + _result = state.input.slice(start, end); + + if (checkJson) { + for (_position = 0, _length = _result.length; _position < _length; _position += 1) { + _character = _result.charCodeAt(_position); + if (!(_character === 0x09 || + (0x20 <= _character && _character <= 0x10FFFF))) { + throwError(state, 'expected valid JSON character'); + } } + } else if (PATTERN_NON_PRINTABLE.test(_result)) { + throwError(state, 'the stream contains non-printable characters'); } - push(token); + state.result += _result; } +} - while (state.brackets > 0) { - if (opts.strictBrackets === true) throw new SyntaxError(syntaxError('closing', ']')); - state.output = utils.escapeLast(state.output, '['); - decrement('brackets'); - } +function mergeMappings(state, destination, source, overridableKeys) { + var sourceKeys, key, index, quantity; - while (state.parens > 0) { - if (opts.strictBrackets === true) throw new SyntaxError(syntaxError('closing', ')')); - state.output = utils.escapeLast(state.output, '('); - decrement('parens'); + if (!common.isObject(source)) { + throwError(state, 'cannot merge mappings; the provided source object is unacceptable'); } - while (state.braces > 0) { - if (opts.strictBrackets === true) throw new SyntaxError(syntaxError('closing', '}')); - state.output = utils.escapeLast(state.output, '{'); - decrement('braces'); - } + sourceKeys = Object.keys(source); - if (opts.strictSlashes !== true && (prev.type === 'star' || prev.type === 'bracket')) { - push({ type: 'maybe_slash', value: '', output: `${SLASH_LITERAL}?` }); + for (index = 0, quantity = sourceKeys.length; index < quantity; index += 1) { + key = sourceKeys[index]; + + if (!_hasOwnProperty.call(destination, key)) { + setProperty(destination, key, source[key]); + overridableKeys[key] = true; + } } +} - // rebuild the output if we had to backtrack at any point - if (state.backtrack === true) { - state.output = ''; +function storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, + startLine, startLineStart, startPos) { - for (const token of state.tokens) { - state.output += token.output != null ? token.output : token.value; + var index, quantity; - if (token.suffix) { - state.output += token.suffix; + // The output is a plain object here, so keys can only be strings. + // We need to convert keyNode to a string, but doing so can hang the process + // (deeply nested arrays that explode exponentially using aliases). + if (Array.isArray(keyNode)) { + keyNode = Array.prototype.slice.call(keyNode); + + for (index = 0, quantity = keyNode.length; index < quantity; index += 1) { + if (Array.isArray(keyNode[index])) { + throwError(state, 'nested arrays are not supported inside keys'); + } + + if (typeof keyNode === 'object' && _class(keyNode[index]) === '[object Object]') { + keyNode[index] = '[object Object]'; } } } - return state; -}; - -/** - * Fast paths for creating regular expressions for common glob patterns. - * This can significantly speed up processing and has very little downside - * impact when none of the fast paths match. - */ - -parse.fastpaths = (input, options) => { - const opts = { ...options }; - const max = typeof opts.maxLength === 'number' ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH; - const len = input.length; - if (len > max) { - throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`); + // Avoid code execution in load() via toString property + // (still use its own toString for arrays, timestamps, + // and whatever user schema extensions happen to have @@toStringTag) + if (typeof keyNode === 'object' && _class(keyNode) === '[object Object]') { + keyNode = '[object Object]'; } - input = REPLACEMENTS[input] || input; - const win32 = utils.isWindows(options); - - // create constants based on platform, for windows or posix - const { - DOT_LITERAL, - SLASH_LITERAL, - ONE_CHAR, - DOTS_SLASH, - NO_DOT, - NO_DOTS, - NO_DOTS_SLASH, - STAR, - START_ANCHOR - } = constants.globChars(win32); - const nodot = opts.dot ? NO_DOTS : NO_DOT; - const slashDot = opts.dot ? NO_DOTS_SLASH : NO_DOT; - const capture = opts.capture ? '' : '?:'; - const state = { negated: false, prefix: '' }; - let star = opts.bash === true ? '.*?' : STAR; + keyNode = String(keyNode); - if (opts.capture) { - star = `(${star})`; + if (_result === null) { + _result = {}; } - const globstar = opts => { - if (opts.noglobstar === true) return star; - return `(${capture}(?:(?!${START_ANCHOR}${opts.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`; - }; + if (keyTag === 'tag:yaml.org,2002:merge') { + if (Array.isArray(valueNode)) { + for (index = 0, quantity = valueNode.length; index < quantity; index += 1) { + mergeMappings(state, _result, valueNode[index], overridableKeys); + } + } else { + mergeMappings(state, _result, valueNode, overridableKeys); + } + } else { + if (!state.json && + !_hasOwnProperty.call(overridableKeys, keyNode) && + _hasOwnProperty.call(_result, keyNode)) { + state.line = startLine || state.line; + state.lineStart = startLineStart || state.lineStart; + state.position = startPos || state.position; + throwError(state, 'duplicated mapping key'); + } - const create = str => { - switch (str) { - case '*': - return `${nodot}${ONE_CHAR}${star}`; + setProperty(_result, keyNode, valueNode); + delete overridableKeys[keyNode]; + } - case '.*': - return `${DOT_LITERAL}${ONE_CHAR}${star}`; + return _result; +} - case '*.*': - return `${nodot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`; +function readLineBreak(state) { + var ch; - case '*/*': - return `${nodot}${star}${SLASH_LITERAL}${ONE_CHAR}${slashDot}${star}`; + ch = state.input.charCodeAt(state.position); - case '**': - return nodot + globstar(opts); + if (ch === 0x0A/* LF */) { + state.position++; + } else if (ch === 0x0D/* CR */) { + state.position++; + if (state.input.charCodeAt(state.position) === 0x0A/* LF */) { + state.position++; + } + } else { + throwError(state, 'a line break is expected'); + } - case '**/*': - return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${ONE_CHAR}${star}`; + state.line += 1; + state.lineStart = state.position; + state.firstTabInLine = -1; +} - case '**/*.*': - return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`; +function skipSeparationSpace(state, allowComments, checkIndent) { + var lineBreaks = 0, + ch = state.input.charCodeAt(state.position); - case '**/.*': - return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${DOT_LITERAL}${ONE_CHAR}${star}`; + while (ch !== 0) { + while (is_WHITE_SPACE(ch)) { + if (ch === 0x09/* Tab */ && state.firstTabInLine === -1) { + state.firstTabInLine = state.position; + } + ch = state.input.charCodeAt(++state.position); + } - default: { - const match = /^(.*?)\.(\w+)$/.exec(str); - if (!match) return; + if (allowComments && ch === 0x23/* # */) { + do { + ch = state.input.charCodeAt(++state.position); + } while (ch !== 0x0A/* LF */ && ch !== 0x0D/* CR */ && ch !== 0); + } - const source = create(match[1]); - if (!source) return; + if (is_EOL(ch)) { + readLineBreak(state); - return source + DOT_LITERAL + match[2]; + ch = state.input.charCodeAt(state.position); + lineBreaks++; + state.lineIndent = 0; + + while (ch === 0x20/* Space */) { + state.lineIndent++; + ch = state.input.charCodeAt(++state.position); } + } else { + break; } - }; - - const output = utils.removePrefix(input, state); - let source = create(output); + } - if (source && opts.strictSlashes !== true) { - source += `${SLASH_LITERAL}?`; + if (checkIndent !== -1 && lineBreaks !== 0 && state.lineIndent < checkIndent) { + throwWarning(state, 'deficient indentation'); } - return source; -}; + return lineBreaks; +} -module.exports = parse; +function testDocumentSeparator(state) { + var _position = state.position, + ch; + ch = state.input.charCodeAt(_position); -/***/ }), + // Condition state.position === state.lineStart is tested + // in parent on each call, for efficiency. No needs to test here again. + if ((ch === 0x2D/* - */ || ch === 0x2E/* . */) && + ch === state.input.charCodeAt(_position + 1) && + ch === state.input.charCodeAt(_position + 2)) { -/***/ 27067: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + _position += 3; + ch = state.input.charCodeAt(_position); + if (ch === 0 || is_WS_OR_EOL(ch)) { + return true; + } + } -const path = __nccwpck_require__(16928); -const scan = __nccwpck_require__(97992); -const parse = __nccwpck_require__(37898); -const utils = __nccwpck_require__(36784); -const constants = __nccwpck_require__(20332); -const isObject = val => val && typeof val === 'object' && !Array.isArray(val); + return false; +} -/** - * Creates a matcher function from one or more glob patterns. The - * returned function takes a string to match as its first argument, - * and returns true if the string is a match. The returned matcher - * function also takes a boolean as the second argument that, when true, - * returns an object with additional information. - * - * ```js - * const picomatch = require('picomatch'); - * // picomatch(glob[, options]); - * - * const isMatch = picomatch('*.!(*a)'); - * console.log(isMatch('a.a')); //=> false - * console.log(isMatch('a.b')); //=> true - * ``` - * @name picomatch - * @param {String|Array} `globs` One or more glob patterns. - * @param {Object=} `options` - * @return {Function=} Returns a matcher function. - * @api public - */ +function writeFoldedLines(state, count) { + if (count === 1) { + state.result += ' '; + } else if (count > 1) { + state.result += common.repeat('\n', count - 1); + } +} -const picomatch = (glob, options, returnState = false) => { - if (Array.isArray(glob)) { - const fns = glob.map(input => picomatch(input, options, returnState)); - const arrayMatcher = str => { - for (const isMatch of fns) { - const state = isMatch(str); - if (state) return state; - } - return false; - }; - return arrayMatcher; + +function readPlainScalar(state, nodeIndent, withinFlowCollection) { + var preceding, + following, + captureStart, + captureEnd, + hasPendingContent, + _line, + _lineStart, + _lineIndent, + _kind = state.kind, + _result = state.result, + ch; + + ch = state.input.charCodeAt(state.position); + + if (is_WS_OR_EOL(ch) || + is_FLOW_INDICATOR(ch) || + ch === 0x23/* # */ || + ch === 0x26/* & */ || + ch === 0x2A/* * */ || + ch === 0x21/* ! */ || + ch === 0x7C/* | */ || + ch === 0x3E/* > */ || + ch === 0x27/* ' */ || + ch === 0x22/* " */ || + ch === 0x25/* % */ || + ch === 0x40/* @ */ || + ch === 0x60/* ` */) { + return false; } - const isState = isObject(glob) && glob.tokens && glob.input; + if (ch === 0x3F/* ? */ || ch === 0x2D/* - */) { + following = state.input.charCodeAt(state.position + 1); - if (glob === '' || (typeof glob !== 'string' && !isState)) { - throw new TypeError('Expected pattern to be a non-empty string'); + if (is_WS_OR_EOL(following) || + withinFlowCollection && is_FLOW_INDICATOR(following)) { + return false; + } } - const opts = options || {}; - const posix = utils.isWindows(options); - const regex = isState - ? picomatch.compileRe(glob, options) - : picomatch.makeRe(glob, options, false, true); + state.kind = 'scalar'; + state.result = ''; + captureStart = captureEnd = state.position; + hasPendingContent = false; - const state = regex.state; - delete regex.state; + while (ch !== 0) { + if (ch === 0x3A/* : */) { + following = state.input.charCodeAt(state.position + 1); - let isIgnored = () => false; - if (opts.ignore) { - const ignoreOpts = { ...options, ignore: null, onMatch: null, onResult: null }; - isIgnored = picomatch(opts.ignore, ignoreOpts, returnState); - } + if (is_WS_OR_EOL(following) || + withinFlowCollection && is_FLOW_INDICATOR(following)) { + break; + } - const matcher = (input, returnObject = false) => { - const { isMatch, match, output } = picomatch.test(input, regex, options, { glob, posix }); - const result = { glob, state, regex, posix, input, output, match, isMatch }; + } else if (ch === 0x23/* # */) { + preceding = state.input.charCodeAt(state.position - 1); - if (typeof opts.onResult === 'function') { - opts.onResult(result); - } + if (is_WS_OR_EOL(preceding)) { + break; + } - if (isMatch === false) { - result.isMatch = false; - return returnObject ? result : false; - } + } else if ((state.position === state.lineStart && testDocumentSeparator(state)) || + withinFlowCollection && is_FLOW_INDICATOR(ch)) { + break; - if (isIgnored(input)) { - if (typeof opts.onIgnore === 'function') { - opts.onIgnore(result); + } else if (is_EOL(ch)) { + _line = state.line; + _lineStart = state.lineStart; + _lineIndent = state.lineIndent; + skipSeparationSpace(state, false, -1); + + if (state.lineIndent >= nodeIndent) { + hasPendingContent = true; + ch = state.input.charCodeAt(state.position); + continue; + } else { + state.position = captureEnd; + state.line = _line; + state.lineStart = _lineStart; + state.lineIndent = _lineIndent; + break; } - result.isMatch = false; - return returnObject ? result : false; } - if (typeof opts.onMatch === 'function') { - opts.onMatch(result); + if (hasPendingContent) { + captureSegment(state, captureStart, captureEnd, false); + writeFoldedLines(state, state.line - _line); + captureStart = captureEnd = state.position; + hasPendingContent = false; } - return returnObject ? result : true; - }; - - if (returnState) { - matcher.state = state; - } - - return matcher; -}; - -/** - * Test `input` with the given `regex`. This is used by the main - * `picomatch()` function to test the input string. - * - * ```js - * const picomatch = require('picomatch'); - * // picomatch.test(input, regex[, options]); - * - * console.log(picomatch.test('foo/bar', /^(?:([^/]*?)\/([^/]*?))$/)); - * // { isMatch: true, match: [ 'foo/', 'foo', 'bar' ], output: 'foo/bar' } - * ``` - * @param {String} `input` String to test. - * @param {RegExp} `regex` - * @return {Object} Returns an object with matching info. - * @api public - */ -picomatch.test = (input, regex, options, { glob, posix } = {}) => { - if (typeof input !== 'string') { - throw new TypeError('Expected input to be a string'); - } + if (!is_WHITE_SPACE(ch)) { + captureEnd = state.position + 1; + } - if (input === '') { - return { isMatch: false, output: '' }; + ch = state.input.charCodeAt(++state.position); } - const opts = options || {}; - const format = opts.format || (posix ? utils.toPosixSlashes : null); - let match = input === glob; - let output = (match && format) ? format(input) : input; - - if (match === false) { - output = format ? format(input) : input; - match = output === glob; - } + captureSegment(state, captureStart, captureEnd, false); - if (match === false || opts.capture === true) { - if (opts.matchBase === true || opts.basename === true) { - match = picomatch.matchBase(input, regex, options, posix); - } else { - match = regex.exec(output); - } + if (state.result) { + return true; } - return { isMatch: Boolean(match), match, output }; -}; - -/** - * Match the basename of a filepath. - * - * ```js - * const picomatch = require('picomatch'); - * // picomatch.matchBase(input, glob[, options]); - * console.log(picomatch.matchBase('foo/bar.js', '*.js'); // true - * ``` - * @param {String} `input` String to test. - * @param {RegExp|String} `glob` Glob pattern or regex created by [.makeRe](#makeRe). - * @return {Boolean} - * @api public - */ + state.kind = _kind; + state.result = _result; + return false; +} -picomatch.matchBase = (input, glob, options, posix = utils.isWindows(options)) => { - const regex = glob instanceof RegExp ? glob : picomatch.makeRe(glob, options); - return regex.test(path.basename(input)); -}; +function readSingleQuotedScalar(state, nodeIndent) { + var ch, + captureStart, captureEnd; -/** - * Returns true if **any** of the given glob `patterns` match the specified `string`. - * - * ```js - * const picomatch = require('picomatch'); - * // picomatch.isMatch(string, patterns[, options]); - * - * console.log(picomatch.isMatch('a.a', ['b.*', '*.a'])); //=> true - * console.log(picomatch.isMatch('a.a', 'b.*')); //=> false - * ``` - * @param {String|Array} str The string to test. - * @param {String|Array} patterns One or more glob patterns to use for matching. - * @param {Object} [options] See available [options](#options). - * @return {Boolean} Returns true if any patterns match `str` - * @api public - */ + ch = state.input.charCodeAt(state.position); -picomatch.isMatch = (str, patterns, options) => picomatch(patterns, options)(str); + if (ch !== 0x27/* ' */) { + return false; + } -/** - * Parse a glob pattern to create the source string for a regular - * expression. - * - * ```js - * const picomatch = require('picomatch'); - * const result = picomatch.parse(pattern[, options]); - * ``` - * @param {String} `pattern` - * @param {Object} `options` - * @return {Object} Returns an object with useful properties and output to be used as a regex source string. - * @api public - */ + state.kind = 'scalar'; + state.result = ''; + state.position++; + captureStart = captureEnd = state.position; -picomatch.parse = (pattern, options) => { - if (Array.isArray(pattern)) return pattern.map(p => picomatch.parse(p, options)); - return parse(pattern, { ...options, fastpaths: false }); -}; + while ((ch = state.input.charCodeAt(state.position)) !== 0) { + if (ch === 0x27/* ' */) { + captureSegment(state, captureStart, state.position, true); + ch = state.input.charCodeAt(++state.position); -/** - * Scan a glob pattern to separate the pattern into segments. - * - * ```js - * const picomatch = require('picomatch'); - * // picomatch.scan(input[, options]); - * - * const result = picomatch.scan('!./foo/*.js'); - * console.log(result); - * { prefix: '!./', - * input: '!./foo/*.js', - * start: 3, - * base: 'foo', - * glob: '*.js', - * isBrace: false, - * isBracket: false, - * isGlob: true, - * isExtglob: false, - * isGlobstar: false, - * negated: true } - * ``` - * @param {String} `input` Glob pattern to scan. - * @param {Object} `options` - * @return {Object} Returns an object with - * @api public - */ + if (ch === 0x27/* ' */) { + captureStart = state.position; + state.position++; + captureEnd = state.position; + } else { + return true; + } -picomatch.scan = (input, options) => scan(input, options); + } else if (is_EOL(ch)) { + captureSegment(state, captureStart, captureEnd, true); + writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent)); + captureStart = captureEnd = state.position; -/** - * Compile a regular expression from the `state` object returned by the - * [parse()](#parse) method. - * - * @param {Object} `state` - * @param {Object} `options` - * @param {Boolean} `returnOutput` Intended for implementors, this argument allows you to return the raw output from the parser. - * @param {Boolean} `returnState` Adds the state to a `state` property on the returned regex. Useful for implementors and debugging. - * @return {RegExp} - * @api public - */ + } else if (state.position === state.lineStart && testDocumentSeparator(state)) { + throwError(state, 'unexpected end of the document within a single quoted scalar'); -picomatch.compileRe = (state, options, returnOutput = false, returnState = false) => { - if (returnOutput === true) { - return state.output; + } else { + state.position++; + captureEnd = state.position; + } } - const opts = options || {}; - const prepend = opts.contains ? '' : '^'; - const append = opts.contains ? '' : '$'; + throwError(state, 'unexpected end of the stream within a single quoted scalar'); +} - let source = `${prepend}(?:${state.output})${append}`; - if (state && state.negated === true) { - source = `^(?!${source}).*$`; - } +function readDoubleQuotedScalar(state, nodeIndent) { + var captureStart, + captureEnd, + hexLength, + hexResult, + tmp, + ch; - const regex = picomatch.toRegex(source, options); - if (returnState === true) { - regex.state = state; - } + ch = state.input.charCodeAt(state.position); - return regex; -}; + if (ch !== 0x22/* " */) { + return false; + } -/** - * Create a regular expression from a parsed glob pattern. - * - * ```js - * const picomatch = require('picomatch'); - * const state = picomatch.parse('*.js'); - * // picomatch.compileRe(state[, options]); - * - * console.log(picomatch.compileRe(state)); - * //=> /^(?:(?!\.)(?=.)[^/]*?\.js)$/ - * ``` - * @param {String} `state` The object returned from the `.parse` method. - * @param {Object} `options` - * @param {Boolean} `returnOutput` Implementors may use this argument to return the compiled output, instead of a regular expression. This is not exposed on the options to prevent end-users from mutating the result. - * @param {Boolean} `returnState` Implementors may use this argument to return the state from the parsed glob with the returned regular expression. - * @return {RegExp} Returns a regex created from the given pattern. - * @api public - */ + state.kind = 'scalar'; + state.result = ''; + state.position++; + captureStart = captureEnd = state.position; -picomatch.makeRe = (input, options = {}, returnOutput = false, returnState = false) => { - if (!input || typeof input !== 'string') { - throw new TypeError('Expected a non-empty string'); - } + while ((ch = state.input.charCodeAt(state.position)) !== 0) { + if (ch === 0x22/* " */) { + captureSegment(state, captureStart, state.position, true); + state.position++; + return true; - let parsed = { negated: false, fastpaths: true }; + } else if (ch === 0x5C/* \ */) { + captureSegment(state, captureStart, state.position, true); + ch = state.input.charCodeAt(++state.position); - if (options.fastpaths !== false && (input[0] === '.' || input[0] === '*')) { - parsed.output = parse.fastpaths(input, options); - } + if (is_EOL(ch)) { + skipSeparationSpace(state, false, nodeIndent); - if (!parsed.output) { - parsed = parse(input, options); - } + // TODO: rework to inline fn with no type cast? + } else if (ch < 256 && simpleEscapeCheck[ch]) { + state.result += simpleEscapeMap[ch]; + state.position++; - return picomatch.compileRe(parsed, options, returnOutput, returnState); -}; + } else if ((tmp = escapedHexLen(ch)) > 0) { + hexLength = tmp; + hexResult = 0; -/** - * Create a regular expression from the given regex source string. - * - * ```js - * const picomatch = require('picomatch'); - * // picomatch.toRegex(source[, options]); - * - * const { output } = picomatch.parse('*.js'); - * console.log(picomatch.toRegex(output)); - * //=> /^(?:(?!\.)(?=.)[^/]*?\.js)$/ - * ``` - * @param {String} `source` Regular expression source string. - * @param {Object} `options` - * @return {RegExp} - * @api public - */ + for (; hexLength > 0; hexLength--) { + ch = state.input.charCodeAt(++state.position); -picomatch.toRegex = (source, options) => { - try { - const opts = options || {}; - return new RegExp(source, opts.flags || (opts.nocase ? 'i' : '')); - } catch (err) { - if (options && options.debug === true) throw err; - return /$^/; - } -}; + if ((tmp = fromHexCode(ch)) >= 0) { + hexResult = (hexResult << 4) + tmp; -/** - * Picomatch constants. - * @return {Object} - */ + } else { + throwError(state, 'expected hexadecimal character'); + } + } -picomatch.constants = constants; + state.result += charFromCodepoint(hexResult); -/** - * Expose "picomatch" - */ + state.position++; -module.exports = picomatch; + } else { + throwError(state, 'unknown escape sequence'); + } + captureStart = captureEnd = state.position; -/***/ }), + } else if (is_EOL(ch)) { + captureSegment(state, captureStart, captureEnd, true); + writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent)); + captureStart = captureEnd = state.position; -/***/ 97992: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + } else if (state.position === state.lineStart && testDocumentSeparator(state)) { + throwError(state, 'unexpected end of the document within a double quoted scalar'); + } else { + state.position++; + captureEnd = state.position; + } + } + throwError(state, 'unexpected end of the stream within a double quoted scalar'); +} -const utils = __nccwpck_require__(36784); -const { - CHAR_ASTERISK, /* * */ - CHAR_AT, /* @ */ - CHAR_BACKWARD_SLASH, /* \ */ - CHAR_COMMA, /* , */ - CHAR_DOT, /* . */ - CHAR_EXCLAMATION_MARK, /* ! */ - CHAR_FORWARD_SLASH, /* / */ - CHAR_LEFT_CURLY_BRACE, /* { */ - CHAR_LEFT_PARENTHESES, /* ( */ - CHAR_LEFT_SQUARE_BRACKET, /* [ */ - CHAR_PLUS, /* + */ - CHAR_QUESTION_MARK, /* ? */ - CHAR_RIGHT_CURLY_BRACE, /* } */ - CHAR_RIGHT_PARENTHESES, /* ) */ - CHAR_RIGHT_SQUARE_BRACKET /* ] */ -} = __nccwpck_require__(20332); +function readFlowCollection(state, nodeIndent) { + var readNext = true, + _line, + _lineStart, + _pos, + _tag = state.tag, + _result, + _anchor = state.anchor, + following, + terminator, + isPair, + isExplicitPair, + isMapping, + overridableKeys = Object.create(null), + keyNode, + keyTag, + valueNode, + ch; -const isPathSeparator = code => { - return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH; -}; + ch = state.input.charCodeAt(state.position); -const depth = token => { - if (token.isPrefix !== true) { - token.depth = token.isGlobstar ? Infinity : 1; + if (ch === 0x5B/* [ */) { + terminator = 0x5D;/* ] */ + isMapping = false; + _result = []; + } else if (ch === 0x7B/* { */) { + terminator = 0x7D;/* } */ + isMapping = true; + _result = {}; + } else { + return false; } -}; -/** - * Quickly scans a glob pattern and returns an object with a handful of - * useful properties, like `isGlob`, `path` (the leading non-glob, if it exists), - * `glob` (the actual pattern), `negated` (true if the path starts with `!` but not - * with `!(`) and `negatedExtglob` (true if the path starts with `!(`). - * - * ```js - * const pm = require('picomatch'); - * console.log(pm.scan('foo/bar/*.js')); - * { isGlob: true, input: 'foo/bar/*.js', base: 'foo/bar', glob: '*.js' } - * ``` - * @param {String} `str` - * @param {Object} `options` - * @return {Object} Returns an object with tokens and regex source string. - * @api public - */ + if (state.anchor !== null) { + state.anchorMap[state.anchor] = _result; + } -const scan = (input, options) => { - const opts = options || {}; + ch = state.input.charCodeAt(++state.position); - const length = input.length - 1; - const scanToEnd = opts.parts === true || opts.scanToEnd === true; - const slashes = []; - const tokens = []; - const parts = []; + while (ch !== 0) { + skipSeparationSpace(state, true, nodeIndent); - let str = input; - let index = -1; - let start = 0; - let lastIndex = 0; - let isBrace = false; - let isBracket = false; - let isGlob = false; - let isExtglob = false; - let isGlobstar = false; - let braceEscaped = false; - let backslashes = false; - let negated = false; - let negatedExtglob = false; - let finished = false; - let braces = 0; - let prev; - let code; - let token = { value: '', depth: 0, isGlob: false }; + ch = state.input.charCodeAt(state.position); - const eos = () => index >= length; - const peek = () => str.charCodeAt(index + 1); - const advance = () => { - prev = code; - return str.charCodeAt(++index); - }; + if (ch === terminator) { + state.position++; + state.tag = _tag; + state.anchor = _anchor; + state.kind = isMapping ? 'mapping' : 'sequence'; + state.result = _result; + return true; + } else if (!readNext) { + throwError(state, 'missed comma between flow collection entries'); + } else if (ch === 0x2C/* , */) { + // "flow collection entries can never be completely empty", as per YAML 1.2, section 7.4 + throwError(state, "expected the node content, but found ','"); + } - while (index < length) { - code = advance(); - let next; + keyTag = keyNode = valueNode = null; + isPair = isExplicitPair = false; - if (code === CHAR_BACKWARD_SLASH) { - backslashes = token.backslashes = true; - code = advance(); + if (ch === 0x3F/* ? */) { + following = state.input.charCodeAt(state.position + 1); - if (code === CHAR_LEFT_CURLY_BRACE) { - braceEscaped = true; + if (is_WS_OR_EOL(following)) { + isPair = isExplicitPair = true; + state.position++; + skipSeparationSpace(state, true, nodeIndent); } - continue; } - if (braceEscaped === true || code === CHAR_LEFT_CURLY_BRACE) { - braces++; + _line = state.line; // Save the current line. + _lineStart = state.lineStart; + _pos = state.position; + composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true); + keyTag = state.tag; + keyNode = state.result; + skipSeparationSpace(state, true, nodeIndent); - while (eos() !== true && (code = advance())) { - if (code === CHAR_BACKWARD_SLASH) { - backslashes = token.backslashes = true; - advance(); - continue; - } + ch = state.input.charCodeAt(state.position); - if (code === CHAR_LEFT_CURLY_BRACE) { - braces++; - continue; - } + if ((isExplicitPair || state.line === _line) && ch === 0x3A/* : */) { + isPair = true; + ch = state.input.charCodeAt(++state.position); + skipSeparationSpace(state, true, nodeIndent); + composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true); + valueNode = state.result; + } - if (braceEscaped !== true && code === CHAR_DOT && (code = advance()) === CHAR_DOT) { - isBrace = token.isBrace = true; - isGlob = token.isGlob = true; - finished = true; + if (isMapping) { + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _line, _lineStart, _pos); + } else if (isPair) { + _result.push(storeMappingPair(state, null, overridableKeys, keyTag, keyNode, valueNode, _line, _lineStart, _pos)); + } else { + _result.push(keyNode); + } - if (scanToEnd === true) { - continue; - } + skipSeparationSpace(state, true, nodeIndent); - break; - } + ch = state.input.charCodeAt(state.position); - if (braceEscaped !== true && code === CHAR_COMMA) { - isBrace = token.isBrace = true; - isGlob = token.isGlob = true; - finished = true; + if (ch === 0x2C/* , */) { + readNext = true; + ch = state.input.charCodeAt(++state.position); + } else { + readNext = false; + } + } - if (scanToEnd === true) { - continue; - } + throwError(state, 'unexpected end of the stream within a flow collection'); +} - break; - } +function readBlockScalar(state, nodeIndent) { + var captureStart, + folding, + chomping = CHOMPING_CLIP, + didReadContent = false, + detectedIndent = false, + textIndent = nodeIndent, + emptyLines = 0, + atMoreIndented = false, + tmp, + ch; - if (code === CHAR_RIGHT_CURLY_BRACE) { - braces--; + ch = state.input.charCodeAt(state.position); - if (braces === 0) { - braceEscaped = false; - isBrace = token.isBrace = true; - finished = true; - break; - } - } + if (ch === 0x7C/* | */) { + folding = false; + } else if (ch === 0x3E/* > */) { + folding = true; + } else { + return false; + } + + state.kind = 'scalar'; + state.result = ''; + + while (ch !== 0) { + ch = state.input.charCodeAt(++state.position); + + if (ch === 0x2B/* + */ || ch === 0x2D/* - */) { + if (CHOMPING_CLIP === chomping) { + chomping = (ch === 0x2B/* + */) ? CHOMPING_KEEP : CHOMPING_STRIP; + } else { + throwError(state, 'repeat of a chomping mode identifier'); } - if (scanToEnd === true) { - continue; + } else if ((tmp = fromDecimalCode(ch)) >= 0) { + if (tmp === 0) { + throwError(state, 'bad explicit indentation width of a block scalar; it cannot be less than one'); + } else if (!detectedIndent) { + textIndent = nodeIndent + tmp - 1; + detectedIndent = true; + } else { + throwError(state, 'repeat of an indentation width identifier'); } + } else { break; } + } - if (code === CHAR_FORWARD_SLASH) { - slashes.push(index); - tokens.push(token); - token = { value: '', depth: 0, isGlob: false }; - - if (finished === true) continue; - if (prev === CHAR_DOT && index === (start + 1)) { - start += 2; - continue; - } + if (is_WHITE_SPACE(ch)) { + do { ch = state.input.charCodeAt(++state.position); } + while (is_WHITE_SPACE(ch)); - lastIndex = index + 1; - continue; + if (ch === 0x23/* # */) { + do { ch = state.input.charCodeAt(++state.position); } + while (!is_EOL(ch) && (ch !== 0)); } + } - if (opts.noext !== true) { - const isExtglobChar = code === CHAR_PLUS - || code === CHAR_AT - || code === CHAR_ASTERISK - || code === CHAR_QUESTION_MARK - || code === CHAR_EXCLAMATION_MARK; - - if (isExtglobChar === true && peek() === CHAR_LEFT_PARENTHESES) { - isGlob = token.isGlob = true; - isExtglob = token.isExtglob = true; - finished = true; - if (code === CHAR_EXCLAMATION_MARK && index === start) { - negatedExtglob = true; - } + while (ch !== 0) { + readLineBreak(state); + state.lineIndent = 0; - if (scanToEnd === true) { - while (eos() !== true && (code = advance())) { - if (code === CHAR_BACKWARD_SLASH) { - backslashes = token.backslashes = true; - code = advance(); - continue; - } + ch = state.input.charCodeAt(state.position); - if (code === CHAR_RIGHT_PARENTHESES) { - isGlob = token.isGlob = true; - finished = true; - break; - } - } - continue; - } - break; - } + while ((!detectedIndent || state.lineIndent < textIndent) && + (ch === 0x20/* Space */)) { + state.lineIndent++; + ch = state.input.charCodeAt(++state.position); } - if (code === CHAR_ASTERISK) { - if (prev === CHAR_ASTERISK) isGlobstar = token.isGlobstar = true; - isGlob = token.isGlob = true; - finished = true; + if (!detectedIndent && state.lineIndent > textIndent) { + textIndent = state.lineIndent; + } - if (scanToEnd === true) { - continue; - } - break; + if (is_EOL(ch)) { + emptyLines++; + continue; } - if (code === CHAR_QUESTION_MARK) { - isGlob = token.isGlob = true; - finished = true; + // End of the scalar. + if (state.lineIndent < textIndent) { - if (scanToEnd === true) { - continue; + // Perform the chomping. + if (chomping === CHOMPING_KEEP) { + state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines); + } else if (chomping === CHOMPING_CLIP) { + if (didReadContent) { // i.e. only if the scalar is not empty. + state.result += '\n'; + } } + + // Break this `while` cycle and go to the funciton's epilogue. break; } - if (code === CHAR_LEFT_SQUARE_BRACKET) { - while (eos() !== true && (next = advance())) { - if (next === CHAR_BACKWARD_SLASH) { - backslashes = token.backslashes = true; - advance(); - continue; - } + // Folded style: use fancy rules to handle line breaks. + if (folding) { - if (next === CHAR_RIGHT_SQUARE_BRACKET) { - isBracket = token.isBracket = true; - isGlob = token.isGlob = true; - finished = true; - break; + // Lines starting with white space characters (more-indented lines) are not folded. + if (is_WHITE_SPACE(ch)) { + atMoreIndented = true; + // except for the first content line (cf. Example 8.1) + state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines); + + // End of more-indented block. + } else if (atMoreIndented) { + atMoreIndented = false; + state.result += common.repeat('\n', emptyLines + 1); + + // Just one line break - perceive as the same line. + } else if (emptyLines === 0) { + if (didReadContent) { // i.e. only if we have already read some scalar content. + state.result += ' '; } - } - if (scanToEnd === true) { - continue; + // Several line breaks - perceive as different lines. + } else { + state.result += common.repeat('\n', emptyLines); } - break; + // Literal style: just add exact number of line breaks between content lines. + } else { + // Keep all line breaks except the header line break. + state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines); } - if (opts.nonegate !== true && code === CHAR_EXCLAMATION_MARK && index === start) { - negated = token.negated = true; - start++; - continue; + didReadContent = true; + detectedIndent = true; + emptyLines = 0; + captureStart = state.position; + + while (!is_EOL(ch) && (ch !== 0)) { + ch = state.input.charCodeAt(++state.position); } - if (opts.noparen !== true && code === CHAR_LEFT_PARENTHESES) { - isGlob = token.isGlob = true; + captureSegment(state, captureStart, state.position, false); + } - if (scanToEnd === true) { - while (eos() !== true && (code = advance())) { - if (code === CHAR_LEFT_PARENTHESES) { - backslashes = token.backslashes = true; - code = advance(); - continue; - } + return true; +} - if (code === CHAR_RIGHT_PARENTHESES) { - finished = true; - break; - } - } - continue; - } +function readBlockSequence(state, nodeIndent) { + var _line, + _tag = state.tag, + _anchor = state.anchor, + _result = [], + following, + detected = false, + ch; + + // there is a leading tab before this token, so it can't be a block sequence/mapping; + // it can still be flow sequence/mapping or a scalar + if (state.firstTabInLine !== -1) return false; + + if (state.anchor !== null) { + state.anchorMap[state.anchor] = _result; + } + + ch = state.input.charCodeAt(state.position); + + while (ch !== 0) { + if (state.firstTabInLine !== -1) { + state.position = state.firstTabInLine; + throwError(state, 'tab characters must not be used in indentation'); + } + + if (ch !== 0x2D/* - */) { break; } - if (isGlob === true) { - finished = true; + following = state.input.charCodeAt(state.position + 1); - if (scanToEnd === true) { + if (!is_WS_OR_EOL(following)) { + break; + } + + detected = true; + state.position++; + + if (skipSeparationSpace(state, true, -1)) { + if (state.lineIndent <= nodeIndent) { + _result.push(null); + ch = state.input.charCodeAt(state.position); continue; } + } + _line = state.line; + composeNode(state, nodeIndent, CONTEXT_BLOCK_IN, false, true); + _result.push(state.result); + skipSeparationSpace(state, true, -1); + + ch = state.input.charCodeAt(state.position); + + if ((state.line === _line || state.lineIndent > nodeIndent) && (ch !== 0)) { + throwError(state, 'bad indentation of a sequence entry'); + } else if (state.lineIndent < nodeIndent) { break; } } - if (opts.noext === true) { - isExtglob = false; - isGlob = false; + if (detected) { + state.tag = _tag; + state.anchor = _anchor; + state.kind = 'sequence'; + state.result = _result; + return true; } + return false; +} - let base = str; - let prefix = ''; - let glob = ''; +function readBlockMapping(state, nodeIndent, flowIndent) { + var following, + allowCompact, + _line, + _keyLine, + _keyLineStart, + _keyPos, + _tag = state.tag, + _anchor = state.anchor, + _result = {}, + overridableKeys = Object.create(null), + keyTag = null, + keyNode = null, + valueNode = null, + atExplicitKey = false, + detected = false, + ch; - if (start > 0) { - prefix = str.slice(0, start); - str = str.slice(start); - lastIndex -= start; - } + // there is a leading tab before this token, so it can't be a block sequence/mapping; + // it can still be flow sequence/mapping or a scalar + if (state.firstTabInLine !== -1) return false; - if (base && isGlob === true && lastIndex > 0) { - base = str.slice(0, lastIndex); - glob = str.slice(lastIndex); - } else if (isGlob === true) { - base = ''; - glob = str; - } else { - base = str; + if (state.anchor !== null) { + state.anchorMap[state.anchor] = _result; } - if (base && base !== '' && base !== '/' && base !== str) { - if (isPathSeparator(base.charCodeAt(base.length - 1))) { - base = base.slice(0, -1); + ch = state.input.charCodeAt(state.position); + + while (ch !== 0) { + if (!atExplicitKey && state.firstTabInLine !== -1) { + state.position = state.firstTabInLine; + throwError(state, 'tab characters must not be used in indentation'); } - } - if (opts.unescape === true) { - if (glob) glob = utils.removeBackslashes(glob); + following = state.input.charCodeAt(state.position + 1); + _line = state.line; // Save the current line. - if (base && backslashes === true) { - base = utils.removeBackslashes(base); - } - } + // + // Explicit notation case. There are two separate blocks: + // first for the key (denoted by "?") and second for the value (denoted by ":") + // + if ((ch === 0x3F/* ? */ || ch === 0x3A/* : */) && is_WS_OR_EOL(following)) { - const state = { - prefix, - input, - start, - base, - glob, - isBrace, - isBracket, - isGlob, - isExtglob, - isGlobstar, - negated, - negatedExtglob - }; + if (ch === 0x3F/* ? */) { + if (atExplicitKey) { + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null, _keyLine, _keyLineStart, _keyPos); + keyTag = keyNode = valueNode = null; + } - if (opts.tokens === true) { - state.maxDepth = 0; - if (!isPathSeparator(code)) { - tokens.push(token); - } - state.tokens = tokens; - } + detected = true; + atExplicitKey = true; + allowCompact = true; - if (opts.parts === true || opts.tokens === true) { - let prevIndex; + } else if (atExplicitKey) { + // i.e. 0x3A/* : */ === character after the explicit key. + atExplicitKey = false; + allowCompact = true; - for (let idx = 0; idx < slashes.length; idx++) { - const n = prevIndex ? prevIndex + 1 : start; - const i = slashes[idx]; - const value = input.slice(n, i); - if (opts.tokens) { - if (idx === 0 && start !== 0) { - tokens[idx].isPrefix = true; - tokens[idx].value = prefix; - } else { - tokens[idx].value = value; - } - depth(tokens[idx]); - state.maxDepth += tokens[idx].depth; - } - if (idx !== 0 || value !== '') { - parts.push(value); + } else { + throwError(state, 'incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line'); } - prevIndex = i; - } - if (prevIndex && prevIndex + 1 < input.length) { - const value = input.slice(prevIndex + 1); - parts.push(value); + state.position += 1; + ch = following; - if (opts.tokens) { - tokens[tokens.length - 1].value = value; - depth(tokens[tokens.length - 1]); - state.maxDepth += tokens[tokens.length - 1].depth; + // + // Implicit notation case. Flow-style node as the key first, then ":", and the value. + // + } else { + _keyLine = state.line; + _keyLineStart = state.lineStart; + _keyPos = state.position; + + if (!composeNode(state, flowIndent, CONTEXT_FLOW_OUT, false, true)) { + // Neither implicit nor explicit notation. + // Reading is done. Go to the epilogue. + break; } - } - state.slashes = slashes; - state.parts = parts; - } + if (state.line === _line) { + ch = state.input.charCodeAt(state.position); - return state; -}; + while (is_WHITE_SPACE(ch)) { + ch = state.input.charCodeAt(++state.position); + } -module.exports = scan; + if (ch === 0x3A/* : */) { + ch = state.input.charCodeAt(++state.position); + if (!is_WS_OR_EOL(ch)) { + throwError(state, 'a whitespace character is expected after the key-value separator within a block mapping'); + } -/***/ }), + if (atExplicitKey) { + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null, _keyLine, _keyLineStart, _keyPos); + keyTag = keyNode = valueNode = null; + } -/***/ 36784: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { + detected = true; + atExplicitKey = false; + allowCompact = false; + keyTag = state.tag; + keyNode = state.result; + } else if (detected) { + throwError(state, 'can not read an implicit mapping pair; a colon is missed'); + } else { + state.tag = _tag; + state.anchor = _anchor; + return true; // Keep the result of `composeNode`. + } -const path = __nccwpck_require__(16928); -const win32 = process.platform === 'win32'; -const { - REGEX_BACKSLASH, - REGEX_REMOVE_BACKSLASH, - REGEX_SPECIAL_CHARS, - REGEX_SPECIAL_CHARS_GLOBAL -} = __nccwpck_require__(20332); + } else if (detected) { + throwError(state, 'can not read a block mapping entry; a multiline key may not be an implicit key'); -exports.isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val); -exports.hasRegexChars = str => REGEX_SPECIAL_CHARS.test(str); -exports.isRegexChar = str => str.length === 1 && exports.hasRegexChars(str); -exports.escapeRegex = str => str.replace(REGEX_SPECIAL_CHARS_GLOBAL, '\\$1'); -exports.toPosixSlashes = str => str.replace(REGEX_BACKSLASH, '/'); + } else { + state.tag = _tag; + state.anchor = _anchor; + return true; // Keep the result of `composeNode`. + } + } -exports.removeBackslashes = str => { - return str.replace(REGEX_REMOVE_BACKSLASH, match => { - return match === '\\' ? '' : match; - }); -}; + // + // Common reading code for both explicit and implicit notations. + // + if (state.line === _line || state.lineIndent > nodeIndent) { + if (atExplicitKey) { + _keyLine = state.line; + _keyLineStart = state.lineStart; + _keyPos = state.position; + } -exports.supportsLookbehinds = () => { - const segs = process.version.slice(1).split('.').map(Number); - if (segs.length === 3 && segs[0] >= 9 || (segs[0] === 8 && segs[1] >= 10)) { - return true; - } - return false; -}; + if (composeNode(state, nodeIndent, CONTEXT_BLOCK_OUT, true, allowCompact)) { + if (atExplicitKey) { + keyNode = state.result; + } else { + valueNode = state.result; + } + } -exports.isWindows = options => { - if (options && typeof options.windows === 'boolean') { - return options.windows; - } - return win32 === true || path.sep === '\\'; -}; + if (!atExplicitKey) { + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _keyLine, _keyLineStart, _keyPos); + keyTag = keyNode = valueNode = null; + } -exports.escapeLast = (input, char, lastIdx) => { - const idx = input.lastIndexOf(char, lastIdx); - if (idx === -1) return input; - if (input[idx - 1] === '\\') return exports.escapeLast(input, char, idx - 1); - return `${input.slice(0, idx)}\\${input.slice(idx)}`; -}; + skipSeparationSpace(state, true, -1); + ch = state.input.charCodeAt(state.position); + } -exports.removePrefix = (input, state = {}) => { - let output = input; - if (output.startsWith('./')) { - output = output.slice(2); - state.prefix = './'; + if ((state.line === _line || state.lineIndent > nodeIndent) && (ch !== 0)) { + throwError(state, 'bad indentation of a mapping entry'); + } else if (state.lineIndent < nodeIndent) { + break; + } } - return output; -}; -exports.wrapOutput = (input, state = {}, options = {}) => { - const prepend = options.contains ? '' : '^'; - const append = options.contains ? '' : '$'; + // + // Epilogue. + // - let output = `${prepend}(?:${input})${append}`; - if (state.negated === true) { - output = `(?:^(?!${output}).*$)`; + // Special case: last mapping's node contains only the key in explicit notation. + if (atExplicitKey) { + storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null, _keyLine, _keyLineStart, _keyPos); } - return output; -}; - - -/***/ }), -/***/ 35532: -/***/ ((module) => { - - - -const mimicFn = (to, from) => { - for (const prop of Reflect.ownKeys(from)) { - Object.defineProperty(to, prop, Object.getOwnPropertyDescriptor(from, prop)); - } + // Expose the resulting mapping. + if (detected) { + state.tag = _tag; + state.anchor = _anchor; + state.kind = 'mapping'; + state.result = _result; + } - return to; -}; + return detected; +} -module.exports = mimicFn; -// TODO: Remove this for the next major release -module.exports["default"] = mimicFn; +function readTagProperty(state) { + var _position, + isVerbatim = false, + isNamed = false, + tagHandle, + tagName, + ch; + ch = state.input.charCodeAt(state.position); -/***/ }), + if (ch !== 0x21/* ! */) return false; -/***/ 87079: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if (state.tag !== null) { + throwError(state, 'duplication of a tag property'); + } + ch = state.input.charCodeAt(++state.position); -const path = __nccwpck_require__(16928); -const pathKey = __nccwpck_require__(50661); + if (ch === 0x3C/* < */) { + isVerbatim = true; + ch = state.input.charCodeAt(++state.position); -const npmRunPath = options => { - options = { - cwd: process.cwd(), - path: process.env[pathKey()], - execPath: process.execPath, - ...options - }; + } else if (ch === 0x21/* ! */) { + isNamed = true; + tagHandle = '!!'; + ch = state.input.charCodeAt(++state.position); - let previous; - let cwdPath = path.resolve(options.cwd); - const result = []; + } else { + tagHandle = '!'; + } - while (previous !== cwdPath) { - result.push(path.join(cwdPath, 'node_modules/.bin')); - previous = cwdPath; - cwdPath = path.resolve(cwdPath, '..'); - } + _position = state.position; - // Ensure the running `node` binary is used - const execPathDir = path.resolve(options.cwd, options.execPath, '..'); - result.push(execPathDir); + if (isVerbatim) { + do { ch = state.input.charCodeAt(++state.position); } + while (ch !== 0 && ch !== 0x3E/* > */); - return result.concat(options.path).join(path.delimiter); -}; + if (state.position < state.length) { + tagName = state.input.slice(_position, state.position); + ch = state.input.charCodeAt(++state.position); + } else { + throwError(state, 'unexpected end of the stream within a verbatim tag'); + } + } else { + while (ch !== 0 && !is_WS_OR_EOL(ch)) { -module.exports = npmRunPath; -// TODO: Remove this for the next major release -module.exports["default"] = npmRunPath; + if (ch === 0x21/* ! */) { + if (!isNamed) { + tagHandle = state.input.slice(_position - 1, state.position + 1); -module.exports.env = options => { - options = { - env: process.env, - ...options - }; + if (!PATTERN_TAG_HANDLE.test(tagHandle)) { + throwError(state, 'named tag handle cannot contain such characters'); + } - const env = {...options.env}; - const path = pathKey({env}); + isNamed = true; + _position = state.position + 1; + } else { + throwError(state, 'tag suffix cannot contain exclamation marks'); + } + } - options.path = env[path]; - env[path] = module.exports(options); + ch = state.input.charCodeAt(++state.position); + } - return env; -}; + tagName = state.input.slice(_position, state.position); + if (PATTERN_FLOW_INDICATORS.test(tagName)) { + throwError(state, 'tag suffix cannot contain flow indicator characters'); + } + } -/***/ }), + if (tagName && !PATTERN_TAG_URI.test(tagName)) { + throwError(state, 'tag name cannot contain such characters: ' + tagName); + } -/***/ 82405: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + try { + tagName = decodeURIComponent(tagName); + } catch (err) { + throwError(state, 'tag name is malformed: ' + tagName); + } + if (isVerbatim) { + state.tag = tagName; -const mimicFn = __nccwpck_require__(35532); + } else if (_hasOwnProperty.call(state.tagMap, tagHandle)) { + state.tag = state.tagMap[tagHandle] + tagName; -const calledFunctions = new WeakMap(); + } else if (tagHandle === '!') { + state.tag = '!' + tagName; -const onetime = (function_, options = {}) => { - if (typeof function_ !== 'function') { - throw new TypeError('Expected a function'); - } + } else if (tagHandle === '!!') { + state.tag = 'tag:yaml.org,2002:' + tagName; - let returnValue; - let callCount = 0; - const functionName = function_.displayName || function_.name || ''; + } else { + throwError(state, 'undeclared tag handle "' + tagHandle + '"'); + } - const onetime = function (...arguments_) { - calledFunctions.set(onetime, ++callCount); + return true; +} - if (callCount === 1) { - returnValue = function_.apply(this, arguments_); - function_ = null; - } else if (options.throw === true) { - throw new Error(`Function \`${functionName}\` can only be called once`); - } +function readAnchorProperty(state) { + var _position, + ch; - return returnValue; - }; + ch = state.input.charCodeAt(state.position); - mimicFn(onetime, function_); - calledFunctions.set(onetime, callCount); + if (ch !== 0x26/* & */) return false; - return onetime; -}; + if (state.anchor !== null) { + throwError(state, 'duplication of an anchor property'); + } -module.exports = onetime; -// TODO: Remove this for the next major release -module.exports["default"] = onetime; + ch = state.input.charCodeAt(++state.position); + _position = state.position; -module.exports.callCount = function_ => { - if (!calledFunctions.has(function_)) { - throw new Error(`The given function \`${function_.name}\` is not wrapped by the \`onetime\` package`); - } + while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) { + ch = state.input.charCodeAt(++state.position); + } - return calledFunctions.get(function_); -}; + if (state.position === _position) { + throwError(state, 'name of an anchor node must contain at least one character'); + } + state.anchor = state.input.slice(_position, state.position); + return true; +} -/***/ }), +function readAlias(state) { + var _position, alias, + ch; -/***/ 97465: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + ch = state.input.charCodeAt(state.position); + if (ch !== 0x2A/* * */) return false; -const pMap = __nccwpck_require__(11083); + ch = state.input.charCodeAt(++state.position); + _position = state.position; -const pFilter = async (iterable, filterer, options) => { - const values = await pMap( - iterable, - (element, index) => Promise.all([filterer(element, index), element]), - options - ); - return values.filter(value => Boolean(value[0])).map(value => value[1]); -}; + while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) { + ch = state.input.charCodeAt(++state.position); + } -module.exports = pFilter; -// TODO: Remove this for the next major release -module.exports["default"] = pFilter; + if (state.position === _position) { + throwError(state, 'name of an alias node must contain at least one character'); + } + alias = state.input.slice(_position, state.position); -/***/ }), + if (!_hasOwnProperty.call(state.anchorMap, alias)) { + throwError(state, 'unidentified alias "' + alias + '"'); + } -/***/ 81689: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + state.result = state.anchorMap[alias]; + skipSeparationSpace(state, true, -1); + return true; +} +function composeNode(state, parentIndent, nodeContext, allowToSeek, allowCompact) { + var allowBlockStyles, + allowBlockScalars, + allowBlockCollections, + indentStatus = 1, // 1: this>parent, 0: this=parent, -1: this tester(await element); + allowBlockStyles = allowBlockScalars = allowBlockCollections = + CONTEXT_BLOCK_OUT === nodeContext || + CONTEXT_BLOCK_IN === nodeContext; -// The input can also be a promise, so we `Promise.all()` them both -const finder = async element => { - const values = await Promise.all(element); - if (values[1] === true) { - throw new EndError(values[0]); - } + if (allowToSeek) { + if (skipSeparationSpace(state, true, -1)) { + atNewLine = true; - return false; -}; + if (state.lineIndent > parentIndent) { + indentStatus = 1; + } else if (state.lineIndent === parentIndent) { + indentStatus = 0; + } else if (state.lineIndent < parentIndent) { + indentStatus = -1; + } + } + } -const pLocate = async (iterable, tester, options) => { - options = { - concurrency: Infinity, - preserveOrder: true, - ...options - }; + if (indentStatus === 1) { + while (readTagProperty(state) || readAnchorProperty(state)) { + if (skipSeparationSpace(state, true, -1)) { + atNewLine = true; + allowBlockCollections = allowBlockStyles; - const limit = pLimit(options.concurrency); + if (state.lineIndent > parentIndent) { + indentStatus = 1; + } else if (state.lineIndent === parentIndent) { + indentStatus = 0; + } else if (state.lineIndent < parentIndent) { + indentStatus = -1; + } + } else { + allowBlockCollections = false; + } + } + } - // Start all the promises concurrently with optional limit - const items = [...iterable].map(element => [element, limit(testElement, element, tester)]); + if (allowBlockCollections) { + allowBlockCollections = atNewLine || allowCompact; + } - // Check the promises either serially or concurrently - const checkLimit = pLimit(options.preserveOrder ? 1 : Infinity); + if (indentStatus === 1 || CONTEXT_BLOCK_OUT === nodeContext) { + if (CONTEXT_FLOW_IN === nodeContext || CONTEXT_FLOW_OUT === nodeContext) { + flowIndent = parentIndent; + } else { + flowIndent = parentIndent + 1; + } - try { - await Promise.all(items.map(element => checkLimit(finder, element))); - } catch (error) { - if (error instanceof EndError) { - return error.value; - } + blockIndent = state.position - state.lineStart; - throw error; - } -}; + if (indentStatus === 1) { + if (allowBlockCollections && + (readBlockSequence(state, blockIndent) || + readBlockMapping(state, blockIndent, flowIndent)) || + readFlowCollection(state, flowIndent)) { + hasContent = true; + } else { + if ((allowBlockScalars && readBlockScalar(state, flowIndent)) || + readSingleQuotedScalar(state, flowIndent) || + readDoubleQuotedScalar(state, flowIndent)) { + hasContent = true; -module.exports = pLocate; -// TODO: Remove this for the next major release -module.exports["default"] = pLocate; + } else if (readAlias(state)) { + hasContent = true; + if (state.tag !== null || state.anchor !== null) { + throwError(state, 'alias node should not have any properties'); + } -/***/ }), + } else if (readPlainScalar(state, flowIndent, CONTEXT_FLOW_IN === nodeContext)) { + hasContent = true; -/***/ 89513: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if (state.tag === null) { + state.tag = '?'; + } + } + if (state.anchor !== null) { + state.anchorMap[state.anchor] = state.result; + } + } + } else if (indentStatus === 0) { + // Special case: block sequences are allowed to have same indentation level as the parent. + // http://www.yaml.org/spec/1.2/spec.html#id2799784 + hasContent = allowBlockCollections && readBlockSequence(state, blockIndent); + } + } -const pTry = __nccwpck_require__(4832); + if (state.tag === null) { + if (state.anchor !== null) { + state.anchorMap[state.anchor] = state.result; + } -const pLimit = concurrency => { - if (!((Number.isInteger(concurrency) || concurrency === Infinity) && concurrency > 0)) { - return Promise.reject(new TypeError('Expected `concurrency` to be a number from 1 and up')); - } + } else if (state.tag === '?') { + // Implicit resolving is not allowed for non-scalar types, and '?' + // non-specific tag is only automatically assigned to plain scalars. + // + // We only need to check kind conformity in case user explicitly assigns '?' + // tag, for example like this: "! [0]" + // + if (state.result !== null && state.kind !== 'scalar') { + throwError(state, 'unacceptable node kind for ! tag; it should be "scalar", not "' + state.kind + '"'); + } - const queue = []; - let activeCount = 0; + for (typeIndex = 0, typeQuantity = state.implicitTypes.length; typeIndex < typeQuantity; typeIndex += 1) { + type = state.implicitTypes[typeIndex]; - const next = () => { - activeCount--; + if (type.resolve(state.result)) { // `state.result` updated in resolver if matched + state.result = type.construct(state.result); + state.tag = type.tag; + if (state.anchor !== null) { + state.anchorMap[state.anchor] = state.result; + } + break; + } + } + } else if (state.tag !== '!') { + if (_hasOwnProperty.call(state.typeMap[state.kind || 'fallback'], state.tag)) { + type = state.typeMap[state.kind || 'fallback'][state.tag]; + } else { + // looking for multi type + type = null; + typeList = state.typeMap.multi[state.kind || 'fallback']; - if (queue.length > 0) { - queue.shift()(); - } - }; + for (typeIndex = 0, typeQuantity = typeList.length; typeIndex < typeQuantity; typeIndex += 1) { + if (state.tag.slice(0, typeList[typeIndex].tag.length) === typeList[typeIndex].tag) { + type = typeList[typeIndex]; + break; + } + } + } - const run = (fn, resolve, ...args) => { - activeCount++; + if (!type) { + throwError(state, 'unknown tag !<' + state.tag + '>'); + } - const result = pTry(fn, ...args); + if (state.result !== null && type.kind !== state.kind) { + throwError(state, 'unacceptable node kind for !<' + state.tag + '> tag; it should be "' + type.kind + '", not "' + state.kind + '"'); + } - resolve(result); + if (!type.resolve(state.result, state.tag)) { // `state.result` updated in resolver if matched + throwError(state, 'cannot resolve a node with !<' + state.tag + '> explicit tag'); + } else { + state.result = type.construct(state.result, state.tag); + if (state.anchor !== null) { + state.anchorMap[state.anchor] = state.result; + } + } + } - result.then(next, next); - }; + if (state.listener !== null) { + state.listener('close', state); + } + return state.tag !== null || state.anchor !== null || hasContent; +} - const enqueue = (fn, resolve, ...args) => { - if (activeCount < concurrency) { - run(fn, resolve, ...args); - } else { - queue.push(run.bind(null, fn, resolve, ...args)); - } - }; +function readDocument(state) { + var documentStart = state.position, + _position, + directiveName, + directiveArgs, + hasDirectives = false, + ch; - const generator = (fn, ...args) => new Promise(resolve => enqueue(fn, resolve, ...args)); - Object.defineProperties(generator, { - activeCount: { - get: () => activeCount - }, - pendingCount: { - get: () => queue.length - }, - clearQueue: { - value: () => { - queue.length = 0; - } - } - }); + state.version = null; + state.checkLineBreaks = state.legacy; + state.tagMap = Object.create(null); + state.anchorMap = Object.create(null); - return generator; -}; + while ((ch = state.input.charCodeAt(state.position)) !== 0) { + skipSeparationSpace(state, true, -1); -module.exports = pLimit; -module.exports["default"] = pLimit; + ch = state.input.charCodeAt(state.position); + if (state.lineIndent > 0 || ch !== 0x25/* % */) { + break; + } -/***/ }), + hasDirectives = true; + ch = state.input.charCodeAt(++state.position); + _position = state.position; -/***/ 11083: -/***/ ((module) => { + while (ch !== 0 && !is_WS_OR_EOL(ch)) { + ch = state.input.charCodeAt(++state.position); + } + directiveName = state.input.slice(_position, state.position); + directiveArgs = []; + if (directiveName.length < 1) { + throwError(state, 'directive name must not be less than one character in length'); + } -const pMap = (iterable, mapper, options) => new Promise((resolve, reject) => { - options = Object.assign({ - concurrency: Infinity - }, options); + while (ch !== 0) { + while (is_WHITE_SPACE(ch)) { + ch = state.input.charCodeAt(++state.position); + } - if (typeof mapper !== 'function') { - throw new TypeError('Mapper function is required'); - } + if (ch === 0x23/* # */) { + do { ch = state.input.charCodeAt(++state.position); } + while (ch !== 0 && !is_EOL(ch)); + break; + } - const {concurrency} = options; + if (is_EOL(ch)) break; - if (!(typeof concurrency === 'number' && concurrency >= 1)) { - throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${concurrency}\` (${typeof concurrency})`); - } + _position = state.position; - const ret = []; - const iterator = iterable[Symbol.iterator](); - let isRejected = false; - let isIterableDone = false; - let resolvingCount = 0; - let currentIndex = 0; + while (ch !== 0 && !is_WS_OR_EOL(ch)) { + ch = state.input.charCodeAt(++state.position); + } - const next = () => { - if (isRejected) { - return; - } + directiveArgs.push(state.input.slice(_position, state.position)); + } - const nextItem = iterator.next(); - const i = currentIndex; - currentIndex++; + if (ch !== 0) readLineBreak(state); - if (nextItem.done) { - isIterableDone = true; + if (_hasOwnProperty.call(directiveHandlers, directiveName)) { + directiveHandlers[directiveName](state, directiveName, directiveArgs); + } else { + throwWarning(state, 'unknown document directive "' + directiveName + '"'); + } + } - if (resolvingCount === 0) { - resolve(ret); - } + skipSeparationSpace(state, true, -1); - return; - } + if (state.lineIndent === 0 && + state.input.charCodeAt(state.position) === 0x2D/* - */ && + state.input.charCodeAt(state.position + 1) === 0x2D/* - */ && + state.input.charCodeAt(state.position + 2) === 0x2D/* - */) { + state.position += 3; + skipSeparationSpace(state, true, -1); - resolvingCount++; + } else if (hasDirectives) { + throwError(state, 'directives end mark is expected'); + } - Promise.resolve(nextItem.value) - .then(element => mapper(element, i)) - .then( - value => { - ret[i] = value; - resolvingCount--; - next(); - }, - error => { - isRejected = true; - reject(error); - } - ); - }; + composeNode(state, state.lineIndent - 1, CONTEXT_BLOCK_OUT, false, true); + skipSeparationSpace(state, true, -1); - for (let i = 0; i < concurrency; i++) { - next(); + if (state.checkLineBreaks && + PATTERN_NON_ASCII_LINE_BREAKS.test(state.input.slice(documentStart, state.position))) { + throwWarning(state, 'non-ASCII line breaks are interpreted as content'); + } - if (isIterableDone) { - break; - } - } -}); + state.documents.push(state.result); -module.exports = pMap; -// TODO: Remove this for the next major release -module.exports["default"] = pMap; + if (state.position === state.lineStart && testDocumentSeparator(state)) { + if (state.input.charCodeAt(state.position) === 0x2E/* . */) { + state.position += 3; + skipSeparationSpace(state, true, -1); + } + return; + } -/***/ }), + if (state.position < (state.length - 1)) { + throwError(state, 'end of the stream or a document separator is expected'); + } else { + return; + } +} -/***/ 4832: -/***/ ((module) => { +function loadDocuments(input, options) { + input = String(input); + options = options || {}; + if (input.length !== 0) { -const pTry = (fn, ...arguments_) => new Promise(resolve => { - resolve(fn(...arguments_)); -}); + // Add tailing `\n` if not exists + if (input.charCodeAt(input.length - 1) !== 0x0A/* LF */ && + input.charCodeAt(input.length - 1) !== 0x0D/* CR */) { + input += '\n'; + } -module.exports = pTry; -// TODO: remove this in the next major version -module.exports["default"] = pTry; + // Strip BOM + if (input.charCodeAt(0) === 0xFEFF) { + input = input.slice(1); + } + } + var state = new State(input, options); -/***/ }), + var nullpos = input.indexOf('\0'); -/***/ 25802: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if (nullpos !== -1) { + state.position = nullpos; + throwError(state, 'null byte is not allowed in input'); + } + // Use 0 as string terminator. That significantly simplifies bounds check. + state.input += '\0'; -const fs = __nccwpck_require__(79896); -const {promisify} = __nccwpck_require__(39023); + while (state.input.charCodeAt(state.position) === 0x20/* Space */) { + state.lineIndent += 1; + state.position += 1; + } -const pAccess = promisify(fs.access); + while (state.position < (state.length - 1)) { + readDocument(state); + } -module.exports = async path => { - try { - await pAccess(path); - return true; - } catch (_) { - return false; - } -}; + return state.documents; +} -module.exports.sync = path => { - try { - fs.accessSync(path); - return true; - } catch (_) { - return false; - } -}; +function loadAll(input, iterator, options) { + if (iterator !== null && typeof iterator === 'object' && typeof options === 'undefined') { + options = iterator; + iterator = null; + } -/***/ }), + var documents = loadDocuments(input, options); -/***/ 50661: -/***/ ((module) => { + if (typeof iterator !== 'function') { + return documents; + } + for (var index = 0, length = documents.length; index < length; index += 1) { + iterator(documents[index]); + } +} -const pathKey = (options = {}) => { - const environment = options.env || process.env; - const platform = options.platform || process.platform; +function load(input, options) { + var documents = loadDocuments(input, options); - if (platform !== 'win32') { - return 'PATH'; - } + if (documents.length === 0) { + /*eslint-disable no-undefined*/ + return undefined; + } else if (documents.length === 1) { + return documents[0]; + } + throw new YAMLException('expected a single document in the stream, but found more'); +} - return Object.keys(environment).reverse().find(key => key.toUpperCase() === 'PATH') || 'Path'; -}; -module.exports = pathKey; -// TODO: Remove this for the next major release -module.exports["default"] = pathKey; +module.exports.loadAll = loadAll; +module.exports.load = load; /***/ }), -/***/ 34754: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { +/***/ 8325: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const {promisify} = __nccwpck_require__(39023); -const fs = __nccwpck_require__(79896); -async function isType(fsStatType, statsMethodName, filePath) { - if (typeof filePath !== 'string') { - throw new TypeError(`Expected a string, got ${typeof filePath}`); - } +/*eslint-disable max-len*/ - try { - const stats = await promisify(fs[fsStatType])(filePath); - return stats[statsMethodName](); - } catch (error) { - if (error.code === 'ENOENT') { - return false; - } +var YAMLException = __nccwpck_require__(3716); +var Type = __nccwpck_require__(4313); - throw error; - } -} -function isTypeSync(fsStatType, statsMethodName, filePath) { - if (typeof filePath !== 'string') { - throw new TypeError(`Expected a string, got ${typeof filePath}`); - } +function compileList(schema, name) { + var result = []; - try { - return fs[fsStatType](filePath)[statsMethodName](); - } catch (error) { - if (error.code === 'ENOENT') { - return false; - } + schema[name].forEach(function (currentType) { + var newIndex = result.length; - throw error; - } -} + result.forEach(function (previousType, previousIndex) { + if (previousType.tag === currentType.tag && + previousType.kind === currentType.kind && + previousType.multi === currentType.multi) { -exports.isFile = isType.bind(null, 'stat', 'isFile'); -exports.isDirectory = isType.bind(null, 'stat', 'isDirectory'); -exports.isSymlink = isType.bind(null, 'lstat', 'isSymbolicLink'); -exports.isFileSync = isTypeSync.bind(null, 'statSync', 'isFile'); -exports.isDirectorySync = isTypeSync.bind(null, 'statSync', 'isDirectory'); -exports.isSymlinkSync = isTypeSync.bind(null, 'lstatSync', 'isSymbolicLink'); + newIndex = previousIndex; + } + }); + result[newIndex] = currentType; + }); -/***/ }), + return result; +} -/***/ 96596: -/***/ ((module) => { -let p = process || {}, argv = p.argv || [], env = p.env || {} -let isColorSupported = - !(!!env.NO_COLOR || argv.includes("--no-color")) && - (!!env.FORCE_COLOR || argv.includes("--color") || p.platform === "win32" || ((p.stdout || {}).isTTY && env.TERM !== "dumb") || !!env.CI) +function compileMap(/* lists... */) { + var result = { + scalar: {}, + sequence: {}, + mapping: {}, + fallback: {}, + multi: { + scalar: [], + sequence: [], + mapping: [], + fallback: [] + } + }, index, length; -let formatter = (open, close, replace = open) => - input => { - let string = "" + input, index = string.indexOf(close, open.length) - return ~index ? open + replaceClose(string, close, replace, index) + close : open + string + close - } + function collectType(type) { + if (type.multi) { + result.multi[type.kind].push(type); + result.multi['fallback'].push(type); + } else { + result[type.kind][type.tag] = result['fallback'][type.tag] = type; + } + } -let replaceClose = (string, close, replace, index) => { - let result = "", cursor = 0 - do { - result += string.substring(cursor, index) + replace - cursor = index + close.length - index = string.indexOf(close, cursor) - } while (~index) - return result + string.substring(cursor) + for (index = 0, length = arguments.length; index < length; index += 1) { + arguments[index].forEach(collectType); + } + return result; } -let createColors = (enabled = isColorSupported) => { - let f = enabled ? formatter : () => String - return { - isColorSupported: enabled, - reset: f("\x1b[0m", "\x1b[0m"), - bold: f("\x1b[1m", "\x1b[22m", "\x1b[22m\x1b[1m"), - dim: f("\x1b[2m", "\x1b[22m", "\x1b[22m\x1b[2m"), - italic: f("\x1b[3m", "\x1b[23m"), - underline: f("\x1b[4m", "\x1b[24m"), - inverse: f("\x1b[7m", "\x1b[27m"), - hidden: f("\x1b[8m", "\x1b[28m"), - strikethrough: f("\x1b[9m", "\x1b[29m"), - black: f("\x1b[30m", "\x1b[39m"), - red: f("\x1b[31m", "\x1b[39m"), - green: f("\x1b[32m", "\x1b[39m"), - yellow: f("\x1b[33m", "\x1b[39m"), - blue: f("\x1b[34m", "\x1b[39m"), - magenta: f("\x1b[35m", "\x1b[39m"), - cyan: f("\x1b[36m", "\x1b[39m"), - white: f("\x1b[37m", "\x1b[39m"), - gray: f("\x1b[90m", "\x1b[39m"), +function Schema(definition) { + return this.extend(definition); +} - bgBlack: f("\x1b[40m", "\x1b[49m"), - bgRed: f("\x1b[41m", "\x1b[49m"), - bgGreen: f("\x1b[42m", "\x1b[49m"), - bgYellow: f("\x1b[43m", "\x1b[49m"), - bgBlue: f("\x1b[44m", "\x1b[49m"), - bgMagenta: f("\x1b[45m", "\x1b[49m"), - bgCyan: f("\x1b[46m", "\x1b[49m"), - bgWhite: f("\x1b[47m", "\x1b[49m"), - blackBright: f("\x1b[90m", "\x1b[39m"), - redBright: f("\x1b[91m", "\x1b[39m"), - greenBright: f("\x1b[92m", "\x1b[39m"), - yellowBright: f("\x1b[93m", "\x1b[39m"), - blueBright: f("\x1b[94m", "\x1b[39m"), - magentaBright: f("\x1b[95m", "\x1b[39m"), - cyanBright: f("\x1b[96m", "\x1b[39m"), - whiteBright: f("\x1b[97m", "\x1b[39m"), +Schema.prototype.extend = function extend(definition) { + var implicit = []; + var explicit = []; - bgBlackBright: f("\x1b[100m", "\x1b[49m"), - bgRedBright: f("\x1b[101m", "\x1b[49m"), - bgGreenBright: f("\x1b[102m", "\x1b[49m"), - bgYellowBright: f("\x1b[103m", "\x1b[49m"), - bgBlueBright: f("\x1b[104m", "\x1b[49m"), - bgMagentaBright: f("\x1b[105m", "\x1b[49m"), - bgCyanBright: f("\x1b[106m", "\x1b[49m"), - bgWhiteBright: f("\x1b[107m", "\x1b[49m"), - } -} + if (definition instanceof Type) { + // Schema.extend(type) + explicit.push(definition); -module.exports = createColors() -module.exports.createColors = createColors + } else if (Array.isArray(definition)) { + // Schema.extend([ type1, type2, ... ]) + explicit = explicit.concat(definition); + } else if (definition && (Array.isArray(definition.implicit) || Array.isArray(definition.explicit))) { + // Schema.extend({ explicit: [ type1, type2, ... ], implicit: [ type1, type2, ... ] }) + if (definition.implicit) implicit = implicit.concat(definition.implicit); + if (definition.explicit) explicit = explicit.concat(definition.explicit); -/***/ }), + } else { + throw new YAMLException('Schema.extend argument should be a Type, [ Type ], ' + + 'or a schema definition ({ implicit: [...], explicit: [...] })'); + } -/***/ 12566: -/***/ ((module) => { + implicit.forEach(function (type) { + if (!(type instanceof Type)) { + throw new YAMLException('Specified list of YAML types (or a single Type object) contains a non-Type object.'); + } + if (type.loadKind && type.loadKind !== 'scalar') { + throw new YAMLException('There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.'); + } + if (type.multi) { + throw new YAMLException('There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.'); + } + }); -const processFn = (fn, options) => function (...args) { - const P = options.promiseModule; + explicit.forEach(function (type) { + if (!(type instanceof Type)) { + throw new YAMLException('Specified list of YAML types (or a single Type object) contains a non-Type object.'); + } + }); - return new P((resolve, reject) => { - if (options.multiArgs) { - args.push((...result) => { - if (options.errorFirst) { - if (result[0]) { - reject(result); - } else { - result.shift(); - resolve(result); - } - } else { - resolve(result); - } - }); - } else if (options.errorFirst) { - args.push((error, result) => { - if (error) { - reject(error); - } else { - resolve(result); - } - }); - } else { - args.push(resolve); - } + var result = Object.create(Schema.prototype); + + result.implicit = (this.implicit || []).concat(implicit); + result.explicit = (this.explicit || []).concat(explicit); - fn.apply(this, args); - }); + result.compiledImplicit = compileList(result, 'implicit'); + result.compiledExplicit = compileList(result, 'explicit'); + result.compiledTypeMap = compileMap(result.compiledImplicit, result.compiledExplicit); + + return result; }; -module.exports = (input, options) => { - options = Object.assign({ - exclude: [/.+(Sync|Stream)$/], - errorFirst: true, - promiseModule: Promise - }, options); - const objType = typeof input; - if (!(input !== null && (objType === 'object' || objType === 'function'))) { - throw new TypeError(`Expected \`input\` to be a \`Function\` or \`Object\`, got \`${input === null ? 'null' : objType}\``); - } +module.exports = Schema; - const filter = key => { - const match = pattern => typeof pattern === 'string' ? key === pattern : pattern.test(key); - return options.include ? options.include.some(match) : !options.exclude.some(match); - }; - let ret; - if (objType === 'function') { - ret = function (...args) { - return options.excludeMain ? input(...args) : processFn(input, options).apply(this, args); - }; - } else { - ret = Object.create(Object.getPrototypeOf(input)); - } +/***/ }), - for (const key in input) { // eslint-disable-line guard-for-in - const property = input[key]; - ret[key] = typeof property === 'function' && filter(key) ? processFn(property, options) : property; - } +/***/ 2454: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - return ret; -}; +// Standard YAML's Core schema. +// http://www.yaml.org/spec/1.2/spec.html#id2804923 +// +// NOTE: JS-YAML does not support schema-specific tag resolution restrictions. +// So, Core schema has no distinctions from JSON schema is JS-YAML. -/***/ }), -/***/ 31843: -/***/ ((module) => { -/*! queue-microtask. MIT License. Feross Aboukhadijeh */ -let promise -module.exports = typeof queueMicrotask === 'function' - ? queueMicrotask.bind(typeof window !== 'undefined' ? window : global) - // reuse resolved promise, and allocate it lazily - : cb => (promise || (promise = Promise.resolve())) - .then(cb) - .catch(err => setTimeout(() => { throw err }, 0)) +module.exports = __nccwpck_require__(9875); /***/ }), -/***/ 64109: +/***/ 4260: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +// JS-YAML's default schema for `safeLoad` function. +// It is not described in the YAML specification. +// +// This schema is based on standard YAML's Core schema and includes most of +// extra types described at YAML tag repository. (http://yaml.org/type/) -const fs = __nccwpck_require__(61404) -const pify = __nccwpck_require__(12566) -const stripBom = __nccwpck_require__(64589) -const yaml = __nccwpck_require__(10882) -const parse = data => yaml.safeLoad(stripBom(data)) -const readYamlFile = fp => pify(fs.readFile)(fp, 'utf8').then(data => parse(data)) -module.exports = readYamlFile -module.exports["default"] = readYamlFile -module.exports.sync = fp => parse(fs.readFileSync(fp, 'utf8')) +module.exports = (__nccwpck_require__(2454).extend)({ + implicit: [ + __nccwpck_require__(7098), + __nccwpck_require__(8546) + ], + explicit: [ + __nccwpck_require__(4497), + __nccwpck_require__(1005), + __nccwpck_require__(7399), + __nccwpck_require__(2610) + ] +}); /***/ }), -/***/ 10882: +/***/ 1068: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +// Standard YAML's Failsafe schema. +// http://www.yaml.org/spec/1.2/spec.html#id2802346 + -var yaml = __nccwpck_require__(47251); +var Schema = __nccwpck_require__(8325); -module.exports = yaml; + +module.exports = new Schema({ + explicit: [ + __nccwpck_require__(3501), + __nccwpck_require__(2941), + __nccwpck_require__(4952) + ] +}); /***/ }), -/***/ 47251: +/***/ 9875: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +// Standard YAML's JSON schema. +// http://www.yaml.org/spec/1.2/spec.html#id2803231 +// +// NOTE: JS-YAML does not support schema-specific tag resolution restrictions. +// So, this schema is not such strict as defined in the YAML specification. +// It allows numbers in binary notaion, use `Null` and `NULL` as `null`, etc. -var loader = __nccwpck_require__(75489); -var dumper = __nccwpck_require__(31519); -function deprecated(name) { - return function () { - throw new Error('Function ' + name + ' is deprecated and cannot be used.'); - }; -} +module.exports = (__nccwpck_require__(1068).extend)({ + implicit: [ + __nccwpck_require__(9697), + __nccwpck_require__(4204), + __nccwpck_require__(5707), + __nccwpck_require__(9980) + ] +}); -module.exports.Type = __nccwpck_require__(2346); -module.exports.Schema = __nccwpck_require__(15229); -module.exports.FAILSAFE_SCHEMA = __nccwpck_require__(59537); -module.exports.JSON_SCHEMA = __nccwpck_require__(10606); -module.exports.CORE_SCHEMA = __nccwpck_require__(19323); -module.exports.DEFAULT_SAFE_SCHEMA = __nccwpck_require__(85999); -module.exports.DEFAULT_FULL_SCHEMA = __nccwpck_require__(55067); -module.exports.load = loader.load; -module.exports.loadAll = loader.loadAll; -module.exports.safeLoad = loader.safeLoad; -module.exports.safeLoadAll = loader.safeLoadAll; -module.exports.dump = dumper.dump; -module.exports.safeDump = dumper.safeDump; -module.exports.YAMLException = __nccwpck_require__(51517); +/***/ }), -// Deprecated schema names from JS-YAML 2.0.x -module.exports.MINIMAL_SCHEMA = __nccwpck_require__(59537); -module.exports.SAFE_SCHEMA = __nccwpck_require__(85999); -module.exports.DEFAULT_SCHEMA = __nccwpck_require__(55067); +/***/ 8148: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -// Deprecated functions from JS-YAML 1.x.x -module.exports.scan = deprecated('scan'); -module.exports.parse = deprecated('parse'); -module.exports.compose = deprecated('compose'); -module.exports.addConstructor = deprecated('addConstructor'); -/***/ }), -/***/ 31127: -/***/ ((module) => { +var common = __nccwpck_require__(20); + +// get snippet for a single line, respecting maxLength +function getLine(buffer, lineStart, lineEnd, position, maxLineLength) { + var head = ''; + var tail = ''; + var maxHalfLength = Math.floor(maxLineLength / 2) - 1; + if (position - lineStart > maxHalfLength) { + head = ' ... '; + lineStart = position - maxHalfLength + head.length; + } + if (lineEnd - position > maxHalfLength) { + tail = ' ...'; + lineEnd = position + maxHalfLength - tail.length; + } -function isNothing(subject) { - return (typeof subject === 'undefined') || (subject === null); + return { + str: head + buffer.slice(lineStart, lineEnd).replace(/\t/g, '→') + tail, + pos: position - lineStart + head.length // relative position + }; } -function isObject(subject) { - return (typeof subject === 'object') && (subject !== null); +function padStart(string, max) { + return common.repeat(' ', max - string.length) + string; } -function toArray(sequence) { - if (Array.isArray(sequence)) return sequence; - else if (isNothing(sequence)) return []; +function makeSnippet(mark, options) { + options = Object.create(options || null); - return [ sequence ]; -} + if (!mark.buffer) return null; + if (!options.maxLength) options.maxLength = 79; + if (typeof options.indent !== 'number') options.indent = 1; + if (typeof options.linesBefore !== 'number') options.linesBefore = 3; + if (typeof options.linesAfter !== 'number') options.linesAfter = 2; -function extend(target, source) { - var index, length, key, sourceKeys; + var re = /\r?\n|\r|\0/g; + var lineStarts = [ 0 ]; + var lineEnds = []; + var match; + var foundLineNo = -1; - if (source) { - sourceKeys = Object.keys(source); + while ((match = re.exec(mark.buffer))) { + lineEnds.push(match.index); + lineStarts.push(match.index + match[0].length); - for (index = 0, length = sourceKeys.length; index < length; index += 1) { - key = sourceKeys[index]; - target[key] = source[key]; + if (mark.position <= match.index && foundLineNo < 0) { + foundLineNo = lineStarts.length - 2; } } - return target; + if (foundLineNo < 0) foundLineNo = lineStarts.length - 1; + + var result = '', i, line; + var lineNoLength = Math.min(mark.line + options.linesAfter, lineEnds.length).toString().length; + var maxLineLength = options.maxLength - (options.indent + lineNoLength + 3); + + for (i = 1; i <= options.linesBefore; i++) { + if (foundLineNo - i < 0) break; + line = getLine( + mark.buffer, + lineStarts[foundLineNo - i], + lineEnds[foundLineNo - i], + mark.position - (lineStarts[foundLineNo] - lineStarts[foundLineNo - i]), + maxLineLength + ); + result = common.repeat(' ', options.indent) + padStart((mark.line - i + 1).toString(), lineNoLength) + + ' | ' + line.str + '\n' + result; + } + + line = getLine(mark.buffer, lineStarts[foundLineNo], lineEnds[foundLineNo], mark.position, maxLineLength); + result += common.repeat(' ', options.indent) + padStart((mark.line + 1).toString(), lineNoLength) + + ' | ' + line.str + '\n'; + result += common.repeat('-', options.indent + lineNoLength + 3 + line.pos) + '^' + '\n'; + + for (i = 1; i <= options.linesAfter; i++) { + if (foundLineNo + i >= lineEnds.length) break; + line = getLine( + mark.buffer, + lineStarts[foundLineNo + i], + lineEnds[foundLineNo + i], + mark.position - (lineStarts[foundLineNo] - lineStarts[foundLineNo + i]), + maxLineLength + ); + result += common.repeat(' ', options.indent) + padStart((mark.line + i + 1).toString(), lineNoLength) + + ' | ' + line.str + '\n'; + } + + return result.replace(/\n$/, ''); } -function repeat(string, count) { - var result = '', cycle; +module.exports = makeSnippet; - for (cycle = 0; cycle < count; cycle += 1) { - result += string; + +/***/ }), + +/***/ 4313: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + + + +var YAMLException = __nccwpck_require__(3716); + +var TYPE_CONSTRUCTOR_OPTIONS = [ + 'kind', + 'multi', + 'resolve', + 'construct', + 'instanceOf', + 'predicate', + 'represent', + 'representName', + 'defaultStyle', + 'styleAliases' +]; + +var YAML_NODE_KINDS = [ + 'scalar', + 'sequence', + 'mapping' +]; + +function compileStyleAliases(map) { + var result = {}; + + if (map !== null) { + Object.keys(map).forEach(function (style) { + map[style].forEach(function (alias) { + result[String(alias)] = style; + }); + }); } return result; } +function Type(tag, options) { + options = options || {}; -function isNegativeZero(number) { - return (number === 0) && (Number.NEGATIVE_INFINITY === 1 / number); -} + Object.keys(options).forEach(function (name) { + if (TYPE_CONSTRUCTOR_OPTIONS.indexOf(name) === -1) { + throw new YAMLException('Unknown option "' + name + '" is met in definition of "' + tag + '" YAML type.'); + } + }); + + // TODO: Add tag format check. + this.options = options; // keep original options in case user wants to extend this type later + this.tag = tag; + this.kind = options['kind'] || null; + this.resolve = options['resolve'] || function () { return true; }; + this.construct = options['construct'] || function (data) { return data; }; + this.instanceOf = options['instanceOf'] || null; + this.predicate = options['predicate'] || null; + this.represent = options['represent'] || null; + this.representName = options['representName'] || null; + this.defaultStyle = options['defaultStyle'] || null; + this.multi = options['multi'] || false; + this.styleAliases = compileStyleAliases(options['styleAliases'] || null); + if (YAML_NODE_KINDS.indexOf(this.kind) === -1) { + throw new YAMLException('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.'); + } +} -module.exports.isNothing = isNothing; -module.exports.isObject = isObject; -module.exports.toArray = toArray; -module.exports.repeat = repeat; -module.exports.isNegativeZero = isNegativeZero; -module.exports.extend = extend; +module.exports = Type; /***/ }), -/***/ 31519: +/***/ 4497: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -/*eslint-disable no-use-before-define*/ +/*eslint-disable no-bitwise*/ -var common = __nccwpck_require__(31127); -var YAMLException = __nccwpck_require__(51517); -var DEFAULT_FULL_SCHEMA = __nccwpck_require__(55067); -var DEFAULT_SAFE_SCHEMA = __nccwpck_require__(85999); -var _toString = Object.prototype.toString; -var _hasOwnProperty = Object.prototype.hasOwnProperty; +var Type = __nccwpck_require__(4313); -var CHAR_TAB = 0x09; /* Tab */ -var CHAR_LINE_FEED = 0x0A; /* LF */ -var CHAR_CARRIAGE_RETURN = 0x0D; /* CR */ -var CHAR_SPACE = 0x20; /* Space */ -var CHAR_EXCLAMATION = 0x21; /* ! */ -var CHAR_DOUBLE_QUOTE = 0x22; /* " */ -var CHAR_SHARP = 0x23; /* # */ -var CHAR_PERCENT = 0x25; /* % */ -var CHAR_AMPERSAND = 0x26; /* & */ -var CHAR_SINGLE_QUOTE = 0x27; /* ' */ -var CHAR_ASTERISK = 0x2A; /* * */ -var CHAR_COMMA = 0x2C; /* , */ -var CHAR_MINUS = 0x2D; /* - */ -var CHAR_COLON = 0x3A; /* : */ -var CHAR_EQUALS = 0x3D; /* = */ -var CHAR_GREATER_THAN = 0x3E; /* > */ -var CHAR_QUESTION = 0x3F; /* ? */ -var CHAR_COMMERCIAL_AT = 0x40; /* @ */ -var CHAR_LEFT_SQUARE_BRACKET = 0x5B; /* [ */ -var CHAR_RIGHT_SQUARE_BRACKET = 0x5D; /* ] */ -var CHAR_GRAVE_ACCENT = 0x60; /* ` */ -var CHAR_LEFT_CURLY_BRACKET = 0x7B; /* { */ -var CHAR_VERTICAL_LINE = 0x7C; /* | */ -var CHAR_RIGHT_CURLY_BRACKET = 0x7D; /* } */ -var ESCAPE_SEQUENCES = {}; +// [ 64, 65, 66 ] -> [ padding, CR, LF ] +var BASE64_MAP = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r'; -ESCAPE_SEQUENCES[0x00] = '\\0'; -ESCAPE_SEQUENCES[0x07] = '\\a'; -ESCAPE_SEQUENCES[0x08] = '\\b'; -ESCAPE_SEQUENCES[0x09] = '\\t'; -ESCAPE_SEQUENCES[0x0A] = '\\n'; -ESCAPE_SEQUENCES[0x0B] = '\\v'; -ESCAPE_SEQUENCES[0x0C] = '\\f'; -ESCAPE_SEQUENCES[0x0D] = '\\r'; -ESCAPE_SEQUENCES[0x1B] = '\\e'; -ESCAPE_SEQUENCES[0x22] = '\\"'; -ESCAPE_SEQUENCES[0x5C] = '\\\\'; -ESCAPE_SEQUENCES[0x85] = '\\N'; -ESCAPE_SEQUENCES[0xA0] = '\\_'; -ESCAPE_SEQUENCES[0x2028] = '\\L'; -ESCAPE_SEQUENCES[0x2029] = '\\P'; -var DEPRECATED_BOOLEANS_SYNTAX = [ - 'y', 'Y', 'yes', 'Yes', 'YES', 'on', 'On', 'ON', - 'n', 'N', 'no', 'No', 'NO', 'off', 'Off', 'OFF' -]; +function resolveYamlBinary(data) { + if (data === null) return false; -function compileStyleMap(schema, map) { - var result, keys, index, length, tag, style, type; + var code, idx, bitlen = 0, max = data.length, map = BASE64_MAP; - if (map === null) return {}; + // Convert one by one. + for (idx = 0; idx < max; idx++) { + code = map.indexOf(data.charAt(idx)); - result = {}; - keys = Object.keys(map); + // Skip CR/LF + if (code > 64) continue; - for (index = 0, length = keys.length; index < length; index += 1) { - tag = keys[index]; - style = String(map[tag]); + // Fail on illegal characters + if (code < 0) return false; - if (tag.slice(0, 2) === '!!') { - tag = 'tag:yaml.org,2002:' + tag.slice(2); - } - type = schema.compiledTypeMap['fallback'][tag]; + bitlen += 6; + } - if (type && _hasOwnProperty.call(type.styleAliases, style)) { - style = type.styleAliases[style]; + // If there are any bits left, source was corrupted + return (bitlen % 8) === 0; +} + +function constructYamlBinary(data) { + var idx, tailbits, + input = data.replace(/[\r\n=]/g, ''), // remove CR/LF & padding to simplify scan + max = input.length, + map = BASE64_MAP, + bits = 0, + result = []; + + // Collect by 6*4 bits (3 bytes) + + for (idx = 0; idx < max; idx++) { + if ((idx % 4 === 0) && idx) { + result.push((bits >> 16) & 0xFF); + result.push((bits >> 8) & 0xFF); + result.push(bits & 0xFF); } - result[tag] = style; + bits = (bits << 6) | map.indexOf(input.charAt(idx)); } - return result; + // Dump tail + + tailbits = (max % 4) * 6; + + if (tailbits === 0) { + result.push((bits >> 16) & 0xFF); + result.push((bits >> 8) & 0xFF); + result.push(bits & 0xFF); + } else if (tailbits === 18) { + result.push((bits >> 10) & 0xFF); + result.push((bits >> 2) & 0xFF); + } else if (tailbits === 12) { + result.push((bits >> 4) & 0xFF); + } + + return new Uint8Array(result); } -function encodeHex(character) { - var string, handle, length; +function representYamlBinary(object /*, style*/) { + var result = '', bits = 0, idx, tail, + max = object.length, + map = BASE64_MAP; - string = character.toString(16).toUpperCase(); + // Convert every three bytes to 4 ASCII characters. - if (character <= 0xFF) { - handle = 'x'; - length = 2; - } else if (character <= 0xFFFF) { - handle = 'u'; - length = 4; - } else if (character <= 0xFFFFFFFF) { - handle = 'U'; - length = 8; - } else { - throw new YAMLException('code point within a string may not be greater than 0xFFFFFFFF'); + for (idx = 0; idx < max; idx++) { + if ((idx % 3 === 0) && idx) { + result += map[(bits >> 18) & 0x3F]; + result += map[(bits >> 12) & 0x3F]; + result += map[(bits >> 6) & 0x3F]; + result += map[bits & 0x3F]; + } + + bits = (bits << 8) + object[idx]; } - return '\\' + handle + common.repeat('0', length - string.length) + string; + // Dump tail + + tail = max % 3; + + if (tail === 0) { + result += map[(bits >> 18) & 0x3F]; + result += map[(bits >> 12) & 0x3F]; + result += map[(bits >> 6) & 0x3F]; + result += map[bits & 0x3F]; + } else if (tail === 2) { + result += map[(bits >> 10) & 0x3F]; + result += map[(bits >> 4) & 0x3F]; + result += map[(bits << 2) & 0x3F]; + result += map[64]; + } else if (tail === 1) { + result += map[(bits >> 2) & 0x3F]; + result += map[(bits << 4) & 0x3F]; + result += map[64]; + result += map[64]; + } + + return result; } -function State(options) { - this.schema = options['schema'] || DEFAULT_FULL_SCHEMA; - this.indent = Math.max(1, (options['indent'] || 2)); - this.noArrayIndent = options['noArrayIndent'] || false; - this.skipInvalid = options['skipInvalid'] || false; - this.flowLevel = (common.isNothing(options['flowLevel']) ? -1 : options['flowLevel']); - this.styleMap = compileStyleMap(this.schema, options['styles'] || null); - this.sortKeys = options['sortKeys'] || false; - this.lineWidth = options['lineWidth'] || 80; - this.noRefs = options['noRefs'] || false; - this.noCompatMode = options['noCompatMode'] || false; - this.condenseFlow = options['condenseFlow'] || false; +function isBinary(obj) { + return Object.prototype.toString.call(obj) === '[object Uint8Array]'; +} - this.implicitTypes = this.schema.compiledImplicit; - this.explicitTypes = this.schema.compiledExplicit; +module.exports = new Type('tag:yaml.org,2002:binary', { + kind: 'scalar', + resolve: resolveYamlBinary, + construct: constructYamlBinary, + predicate: isBinary, + represent: representYamlBinary +}); - this.tag = null; - this.result = ''; - this.duplicates = []; - this.usedDuplicates = null; +/***/ }), + +/***/ 4204: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + + + +var Type = __nccwpck_require__(4313); + +function resolveYamlBoolean(data) { + if (data === null) return false; + + var max = data.length; + + return (max === 4 && (data === 'true' || data === 'True' || data === 'TRUE')) || + (max === 5 && (data === 'false' || data === 'False' || data === 'FALSE')); } -// Indents every line in a string. Empty lines (\n only) are not indented. -function indentString(string, spaces) { - var ind = common.repeat(' ', spaces), - position = 0, - next = -1, - result = '', - line, - length = string.length; +function constructYamlBoolean(data) { + return data === 'true' || + data === 'True' || + data === 'TRUE'; +} + +function isBoolean(object) { + return Object.prototype.toString.call(object) === '[object Boolean]'; +} + +module.exports = new Type('tag:yaml.org,2002:bool', { + kind: 'scalar', + resolve: resolveYamlBoolean, + construct: constructYamlBoolean, + predicate: isBoolean, + represent: { + lowercase: function (object) { return object ? 'true' : 'false'; }, + uppercase: function (object) { return object ? 'TRUE' : 'FALSE'; }, + camelcase: function (object) { return object ? 'True' : 'False'; } + }, + defaultStyle: 'lowercase' +}); - while (position < length) { - next = string.indexOf('\n', position); - if (next === -1) { - line = string.slice(position); - position = length; - } else { - line = string.slice(position, next + 1); - position = next + 1; - } - if (line.length && line !== '\n') result += ind; +/***/ }), - result += line; - } +/***/ 9980: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - return result; -} -function generateNextLine(state, level) { - return '\n' + common.repeat(' ', state.indent * level); -} -function testImplicitResolving(state, str) { - var index, length, type; +var common = __nccwpck_require__(20); +var Type = __nccwpck_require__(4313); - for (index = 0, length = state.implicitTypes.length; index < length; index += 1) { - type = state.implicitTypes[index]; +var YAML_FLOAT_PATTERN = new RegExp( + // 2.5e4, 2.5 and integers + '^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?' + + // .2e4, .2 + // special case, seems not from spec + '|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?' + + // .inf + '|[-+]?\\.(?:inf|Inf|INF)' + + // .nan + '|\\.(?:nan|NaN|NAN))$'); - if (type.resolve(str)) { - return true; - } +function resolveYamlFloat(data) { + if (data === null) return false; + + if (!YAML_FLOAT_PATTERN.test(data) || + // Quick hack to not allow integers end with `_` + // Probably should update regexp & check speed + data[data.length - 1] === '_') { + return false; } - return false; + return true; } -// [33] s-white ::= s-space | s-tab -function isWhitespace(c) { - return c === CHAR_SPACE || c === CHAR_TAB; -} +function constructYamlFloat(data) { + var value, sign; -// Returns true if the character can be printed without escaping. -// From YAML 1.2: "any allowed characters known to be non-printable -// should also be escaped. [However,] This isn’t mandatory" -// Derived from nb-char - \t - #x85 - #xA0 - #x2028 - #x2029. -function isPrintable(c) { - return (0x00020 <= c && c <= 0x00007E) - || ((0x000A1 <= c && c <= 0x00D7FF) && c !== 0x2028 && c !== 0x2029) - || ((0x0E000 <= c && c <= 0x00FFFD) && c !== 0xFEFF /* BOM */) - || (0x10000 <= c && c <= 0x10FFFF); -} + value = data.replace(/_/g, '').toLowerCase(); + sign = value[0] === '-' ? -1 : 1; -// [34] ns-char ::= nb-char - s-white -// [27] nb-char ::= c-printable - b-char - c-byte-order-mark -// [26] b-char ::= b-line-feed | b-carriage-return -// [24] b-line-feed ::= #xA /* LF */ -// [25] b-carriage-return ::= #xD /* CR */ -// [3] c-byte-order-mark ::= #xFEFF -function isNsChar(c) { - return isPrintable(c) && !isWhitespace(c) - // byte-order-mark - && c !== 0xFEFF - // b-char - && c !== CHAR_CARRIAGE_RETURN - && c !== CHAR_LINE_FEED; -} + if ('+-'.indexOf(value[0]) >= 0) { + value = value.slice(1); + } -// Simplified test for values allowed after the first character in plain style. -function isPlainSafe(c, prev) { - // Uses a subset of nb-char - c-flow-indicator - ":" - "#" - // where nb-char ::= c-printable - b-char - c-byte-order-mark. - return isPrintable(c) && c !== 0xFEFF - // - c-flow-indicator - && c !== CHAR_COMMA - && c !== CHAR_LEFT_SQUARE_BRACKET - && c !== CHAR_RIGHT_SQUARE_BRACKET - && c !== CHAR_LEFT_CURLY_BRACKET - && c !== CHAR_RIGHT_CURLY_BRACKET - // - ":" - "#" - // /* An ns-char preceding */ "#" - && c !== CHAR_COLON - && ((c !== CHAR_SHARP) || (prev && isNsChar(prev))); -} + if (value === '.inf') { + return (sign === 1) ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY; -// Simplified test for values allowed as the first character in plain style. -function isPlainSafeFirst(c) { - // Uses a subset of ns-char - c-indicator - // where ns-char = nb-char - s-white. - return isPrintable(c) && c !== 0xFEFF - && !isWhitespace(c) // - s-white - // - (c-indicator ::= - // “-” | “?” | “:” | “,” | “[” | “]” | “{” | “}” - && c !== CHAR_MINUS - && c !== CHAR_QUESTION - && c !== CHAR_COLON - && c !== CHAR_COMMA - && c !== CHAR_LEFT_SQUARE_BRACKET - && c !== CHAR_RIGHT_SQUARE_BRACKET - && c !== CHAR_LEFT_CURLY_BRACKET - && c !== CHAR_RIGHT_CURLY_BRACKET - // | “#” | “&” | “*” | “!” | “|” | “=” | “>” | “'” | “"” - && c !== CHAR_SHARP - && c !== CHAR_AMPERSAND - && c !== CHAR_ASTERISK - && c !== CHAR_EXCLAMATION - && c !== CHAR_VERTICAL_LINE - && c !== CHAR_EQUALS - && c !== CHAR_GREATER_THAN - && c !== CHAR_SINGLE_QUOTE - && c !== CHAR_DOUBLE_QUOTE - // | “%” | “@” | “`”) - && c !== CHAR_PERCENT - && c !== CHAR_COMMERCIAL_AT - && c !== CHAR_GRAVE_ACCENT; + } else if (value === '.nan') { + return NaN; + } + return sign * parseFloat(value, 10); } -// Determines whether block indentation indicator is required. -function needIndentIndicator(string) { - var leadingSpaceRe = /^\n* /; - return leadingSpaceRe.test(string); -} -var STYLE_PLAIN = 1, - STYLE_SINGLE = 2, - STYLE_LITERAL = 3, - STYLE_FOLDED = 4, - STYLE_DOUBLE = 5; +var SCIENTIFIC_WITHOUT_DOT = /^[-+]?[0-9]+e/; -// Determines which scalar styles are possible and returns the preferred style. -// lineWidth = -1 => no limit. -// Pre-conditions: str.length > 0. -// Post-conditions: -// STYLE_PLAIN or STYLE_SINGLE => no \n are in the string. -// STYLE_LITERAL => no lines are suitable for folding (or lineWidth is -1). -// STYLE_FOLDED => a line > lineWidth and can be folded (and lineWidth != -1). -function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, testAmbiguousType) { - var i; - var char, prev_char; - var hasLineBreak = false; - var hasFoldableLine = false; // only checked if shouldTrackWidth - var shouldTrackWidth = lineWidth !== -1; - var previousLineBreak = -1; // count the first line correctly - var plain = isPlainSafeFirst(string.charCodeAt(0)) - && !isWhitespace(string.charCodeAt(string.length - 1)); +function representYamlFloat(object, style) { + var res; - if (singleLineOnly) { - // Case: no block styles. - // Check for disallowed characters to rule out plain and single. - for (i = 0; i < string.length; i++) { - char = string.charCodeAt(i); - if (!isPrintable(char)) { - return STYLE_DOUBLE; - } - prev_char = i > 0 ? string.charCodeAt(i - 1) : null; - plain = plain && isPlainSafe(char, prev_char); + if (isNaN(object)) { + switch (style) { + case 'lowercase': return '.nan'; + case 'uppercase': return '.NAN'; + case 'camelcase': return '.NaN'; } - } else { - // Case: block styles permitted. - for (i = 0; i < string.length; i++) { - char = string.charCodeAt(i); - if (char === CHAR_LINE_FEED) { - hasLineBreak = true; - // Check if any line can be folded. - if (shouldTrackWidth) { - hasFoldableLine = hasFoldableLine || - // Foldable line = too long, and not more-indented. - (i - previousLineBreak - 1 > lineWidth && - string[previousLineBreak + 1] !== ' '); - previousLineBreak = i; - } - } else if (!isPrintable(char)) { - return STYLE_DOUBLE; - } - prev_char = i > 0 ? string.charCodeAt(i - 1) : null; - plain = plain && isPlainSafe(char, prev_char); + } else if (Number.POSITIVE_INFINITY === object) { + switch (style) { + case 'lowercase': return '.inf'; + case 'uppercase': return '.INF'; + case 'camelcase': return '.Inf'; } - // in case the end is missing a \n - hasFoldableLine = hasFoldableLine || (shouldTrackWidth && - (i - previousLineBreak - 1 > lineWidth && - string[previousLineBreak + 1] !== ' ')); - } - // Although every style can represent \n without escaping, prefer block styles - // for multiline, since they're more readable and they don't add empty lines. - // Also prefer folding a super-long line. - if (!hasLineBreak && !hasFoldableLine) { - // Strings interpretable as another type have to be quoted; - // e.g. the string 'true' vs. the boolean true. - return plain && !testAmbiguousType(string) - ? STYLE_PLAIN : STYLE_SINGLE; - } - // Edge case: block indentation indicator can only have one digit. - if (indentPerLevel > 9 && needIndentIndicator(string)) { - return STYLE_DOUBLE; + } else if (Number.NEGATIVE_INFINITY === object) { + switch (style) { + case 'lowercase': return '-.inf'; + case 'uppercase': return '-.INF'; + case 'camelcase': return '-.Inf'; + } + } else if (common.isNegativeZero(object)) { + return '-0.0'; } - // At this point we know block styles are valid. - // Prefer literal style unless we want to fold. - return hasFoldableLine ? STYLE_FOLDED : STYLE_LITERAL; -} -// Note: line breaking/folding is implemented for only the folded style. -// NB. We drop the last trailing newline (if any) of a returned block scalar -// since the dumper adds its own newline. This always works: -// • No ending newline => unaffected; already using strip "-" chomping. -// • Ending newline => removed then restored. -// Importantly, this keeps the "+" chomp indicator from gaining an extra line. -function writeScalar(state, string, level, iskey) { - state.dump = (function () { - if (string.length === 0) { - return "''"; - } - if (!state.noCompatMode && - DEPRECATED_BOOLEANS_SYNTAX.indexOf(string) !== -1) { - return "'" + string + "'"; - } + res = object.toString(10); - var indent = state.indent * Math.max(1, level); // no 0-indent scalars - // As indentation gets deeper, let the width decrease monotonically - // to the lower bound min(state.lineWidth, 40). - // Note that this implies - // state.lineWidth ≤ 40 + state.indent: width is fixed at the lower bound. - // state.lineWidth > 40 + state.indent: width decreases until the lower bound. - // This behaves better than a constant minimum width which disallows narrower options, - // or an indent threshold which causes the width to suddenly increase. - var lineWidth = state.lineWidth === -1 - ? -1 : Math.max(Math.min(state.lineWidth, 40), state.lineWidth - indent); + // JS stringifier can build scientific format without dots: 5e-100, + // while YAML requres dot: 5.e-100. Fix it with simple hack - // Without knowing if keys are implicit/explicit, assume implicit for safety. - var singleLineOnly = iskey - // No block styles in flow mode. - || (state.flowLevel > -1 && level >= state.flowLevel); - function testAmbiguity(string) { - return testImplicitResolving(state, string); - } + return SCIENTIFIC_WITHOUT_DOT.test(res) ? res.replace('e', '.e') : res; +} - switch (chooseScalarStyle(string, singleLineOnly, state.indent, lineWidth, testAmbiguity)) { - case STYLE_PLAIN: - return string; - case STYLE_SINGLE: - return "'" + string.replace(/'/g, "''") + "'"; - case STYLE_LITERAL: - return '|' + blockHeader(string, state.indent) - + dropEndingNewline(indentString(string, indent)); - case STYLE_FOLDED: - return '>' + blockHeader(string, state.indent) - + dropEndingNewline(indentString(foldString(string, lineWidth), indent)); - case STYLE_DOUBLE: - return '"' + escapeString(string, lineWidth) + '"'; - default: - throw new YAMLException('impossible error: invalid scalar style'); - } - }()); +function isFloat(object) { + return (Object.prototype.toString.call(object) === '[object Number]') && + (object % 1 !== 0 || common.isNegativeZero(object)); } -// Pre-conditions: string is valid for a block scalar, 1 <= indentPerLevel <= 9. -function blockHeader(string, indentPerLevel) { - var indentIndicator = needIndentIndicator(string) ? String(indentPerLevel) : ''; +module.exports = new Type('tag:yaml.org,2002:float', { + kind: 'scalar', + resolve: resolveYamlFloat, + construct: constructYamlFloat, + predicate: isFloat, + represent: representYamlFloat, + defaultStyle: 'lowercase' +}); - // note the special case: the string '\n' counts as a "trailing" empty line. - var clip = string[string.length - 1] === '\n'; - var keep = clip && (string[string.length - 2] === '\n' || string === '\n'); - var chomp = keep ? '+' : (clip ? '' : '-'); - return indentIndicator + chomp + '\n'; -} +/***/ }), -// (See the note for writeScalar.) -function dropEndingNewline(string) { - return string[string.length - 1] === '\n' ? string.slice(0, -1) : string; -} +/***/ 5707: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -// Note: a long line without a suitable break point will exceed the width limit. -// Pre-conditions: every char in str isPrintable, str.length > 0, width > 0. -function foldString(string, width) { - // In folded style, $k$ consecutive newlines output as $k+1$ newlines— - // unless they're before or after a more-indented line, or at the very - // beginning or end, in which case $k$ maps to $k$. - // Therefore, parse each chunk as newline(s) followed by a content line. - var lineRe = /(\n+)([^\n]*)/g; - // first line (possibly an empty line) - var result = (function () { - var nextLF = string.indexOf('\n'); - nextLF = nextLF !== -1 ? nextLF : string.length; - lineRe.lastIndex = nextLF; - return foldLine(string.slice(0, nextLF), width); - }()); - // If we haven't reached the first content line yet, don't add an extra \n. - var prevMoreIndented = string[0] === '\n' || string[0] === ' '; - var moreIndented; - // rest of the lines - var match; - while ((match = lineRe.exec(string))) { - var prefix = match[1], line = match[2]; - moreIndented = (line[0] === ' '); - result += prefix - + (!prevMoreIndented && !moreIndented && line !== '' - ? '\n' : '') - + foldLine(line, width); - prevMoreIndented = moreIndented; - } +var common = __nccwpck_require__(20); +var Type = __nccwpck_require__(4313); - return result; +function isHexCode(c) { + return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) || + ((0x41/* A */ <= c) && (c <= 0x46/* F */)) || + ((0x61/* a */ <= c) && (c <= 0x66/* f */)); } -// Greedy line breaking. -// Picks the longest line under the limit each time, -// otherwise settles for the shortest line over the limit. -// NB. More-indented lines *cannot* be folded, as that would add an extra \n. -function foldLine(line, width) { - if (line === '' || line[0] === ' ') return line; +function isOctCode(c) { + return ((0x30/* 0 */ <= c) && (c <= 0x37/* 7 */)); +} - // Since a more-indented line adds a \n, breaks can't be followed by a space. - var breakRe = / [^ ]/g; // note: the match index will always be <= length-2. - var match; - // start is an inclusive index. end, curr, and next are exclusive. - var start = 0, end, curr = 0, next = 0; - var result = ''; +function isDecCode(c) { + return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)); +} - // Invariants: 0 <= start <= length-1. - // 0 <= curr <= next <= max(0, length-2). curr - start <= width. - // Inside the loop: - // A match implies length >= 2, so curr and next are <= length-2. - while ((match = breakRe.exec(line))) { - next = match.index; - // maintain invariant: curr - start <= width - if (next - start > width) { - end = (curr > start) ? curr : next; // derive end <= length-2 - result += '\n' + line.slice(start, end); - // skip the space that was output as \n - start = end + 1; // derive start <= length-1 - } - curr = next; - } +function resolveYamlInteger(data) { + if (data === null) return false; - // By the invariants, start <= length-1, so there is something left over. - // It is either the whole string or a part starting from non-whitespace. - result += '\n'; - // Insert a break if the remainder is too long and there is a break available. - if (line.length - start > width && curr > start) { - result += line.slice(start, curr) + '\n' + line.slice(curr + 1); - } else { - result += line.slice(start); - } + var max = data.length, + index = 0, + hasDigits = false, + ch; - return result.slice(1); // drop extra \n joiner -} + if (!max) return false; -// Escapes a double-quoted string. -function escapeString(string) { - var result = ''; - var char, nextChar; - var escapeSeq; + ch = data[index]; - for (var i = 0; i < string.length; i++) { - char = string.charCodeAt(i); - // Check for surrogate pairs (reference Unicode 3.0 section "3.7 Surrogates"). - if (char >= 0xD800 && char <= 0xDBFF/* high surrogate */) { - nextChar = string.charCodeAt(i + 1); - if (nextChar >= 0xDC00 && nextChar <= 0xDFFF/* low surrogate */) { - // Combine the surrogate pair and store it escaped. - result += encodeHex((char - 0xD800) * 0x400 + nextChar - 0xDC00 + 0x10000); - // Advance index one extra since we already used that char here. - i++; continue; - } - } - escapeSeq = ESCAPE_SEQUENCES[char]; - result += !escapeSeq && isPrintable(char) - ? string[i] - : escapeSeq || encodeHex(char); + // sign + if (ch === '-' || ch === '+') { + ch = data[++index]; } - return result; -} + if (ch === '0') { + // 0 + if (index + 1 === max) return true; + ch = data[++index]; -function writeFlowSequence(state, level, object) { - var _result = '', - _tag = state.tag, - index, - length; + // base 2, base 8, base 16 - for (index = 0, length = object.length; index < length; index += 1) { - // Write only valid elements. - if (writeNode(state, level, object[index], false, false)) { - if (index !== 0) _result += ',' + (!state.condenseFlow ? ' ' : ''); - _result += state.dump; + if (ch === 'b') { + // base 2 + index++; + + for (; index < max; index++) { + ch = data[index]; + if (ch === '_') continue; + if (ch !== '0' && ch !== '1') return false; + hasDigits = true; + } + return hasDigits && ch !== '_'; } - } - state.tag = _tag; - state.dump = '[' + _result + ']'; -} -function writeBlockSequence(state, level, object, compact) { - var _result = '', - _tag = state.tag, - index, - length; + if (ch === 'x') { + // base 16 + index++; - for (index = 0, length = object.length; index < length; index += 1) { - // Write only valid elements. - if (writeNode(state, level + 1, object[index], true, true)) { - if (!compact || index !== 0) { - _result += generateNextLine(state, level); + for (; index < max; index++) { + ch = data[index]; + if (ch === '_') continue; + if (!isHexCode(data.charCodeAt(index))) return false; + hasDigits = true; } + return hasDigits && ch !== '_'; + } - if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { - _result += '-'; - } else { - _result += '- '; - } - _result += state.dump; + if (ch === 'o') { + // base 8 + index++; + + for (; index < max; index++) { + ch = data[index]; + if (ch === '_') continue; + if (!isOctCode(data.charCodeAt(index))) return false; + hasDigits = true; + } + return hasDigits && ch !== '_'; } } - state.tag = _tag; - state.dump = _result || '[]'; // Empty sequence if no valid values. -} - -function writeFlowMapping(state, level, object) { - var _result = '', - _tag = state.tag, - objectKeyList = Object.keys(object), - index, - length, - objectKey, - objectValue, - pairBuffer; + // base 10 (except 0) - for (index = 0, length = objectKeyList.length; index < length; index += 1) { + // value should not start with `_`; + if (ch === '_') return false; - pairBuffer = ''; - if (index !== 0) pairBuffer += ', '; + for (; index < max; index++) { + ch = data[index]; + if (ch === '_') continue; + if (!isDecCode(data.charCodeAt(index))) { + return false; + } + hasDigits = true; + } - if (state.condenseFlow) pairBuffer += '"'; + // Should have digits and should not end with `_` + if (!hasDigits || ch === '_') return false; - objectKey = objectKeyList[index]; - objectValue = object[objectKey]; + return true; +} - if (!writeNode(state, level, objectKey, false, false)) { - continue; // Skip this pair because of invalid key; - } +function constructYamlInteger(data) { + var value = data, sign = 1, ch; - if (state.dump.length > 1024) pairBuffer += '? '; + if (value.indexOf('_') !== -1) { + value = value.replace(/_/g, ''); + } - pairBuffer += state.dump + (state.condenseFlow ? '"' : '') + ':' + (state.condenseFlow ? '' : ' '); + ch = value[0]; - if (!writeNode(state, level, objectValue, false, false)) { - continue; // Skip this pair because of invalid value. - } + if (ch === '-' || ch === '+') { + if (ch === '-') sign = -1; + value = value.slice(1); + ch = value[0]; + } - pairBuffer += state.dump; + if (value === '0') return 0; - // Both key and value are valid. - _result += pairBuffer; + if (ch === '0') { + if (value[1] === 'b') return sign * parseInt(value.slice(2), 2); + if (value[1] === 'x') return sign * parseInt(value.slice(2), 16); + if (value[1] === 'o') return sign * parseInt(value.slice(2), 8); } - state.tag = _tag; - state.dump = '{' + _result + '}'; + return sign * parseInt(value, 10); } -function writeBlockMapping(state, level, object, compact) { - var _result = '', - _tag = state.tag, - objectKeyList = Object.keys(object), - index, - length, - objectKey, - objectValue, - explicitPair, - pairBuffer; +function isInteger(object) { + return (Object.prototype.toString.call(object)) === '[object Number]' && + (object % 1 === 0 && !common.isNegativeZero(object)); +} - // Allow sorting keys so that the output file is deterministic - if (state.sortKeys === true) { - // Default sorting - objectKeyList.sort(); - } else if (typeof state.sortKeys === 'function') { - // Custom sort function - objectKeyList.sort(state.sortKeys); - } else if (state.sortKeys) { - // Something is wrong - throw new YAMLException('sortKeys must be a boolean or a function'); +module.exports = new Type('tag:yaml.org,2002:int', { + kind: 'scalar', + resolve: resolveYamlInteger, + construct: constructYamlInteger, + predicate: isInteger, + represent: { + binary: function (obj) { return obj >= 0 ? '0b' + obj.toString(2) : '-0b' + obj.toString(2).slice(1); }, + octal: function (obj) { return obj >= 0 ? '0o' + obj.toString(8) : '-0o' + obj.toString(8).slice(1); }, + decimal: function (obj) { return obj.toString(10); }, + /* eslint-disable max-len */ + hexadecimal: function (obj) { return obj >= 0 ? '0x' + obj.toString(16).toUpperCase() : '-0x' + obj.toString(16).toUpperCase().slice(1); } + }, + defaultStyle: 'decimal', + styleAliases: { + binary: [ 2, 'bin' ], + octal: [ 8, 'oct' ], + decimal: [ 10, 'dec' ], + hexadecimal: [ 16, 'hex' ] } +}); - for (index = 0, length = objectKeyList.length; index < length; index += 1) { - pairBuffer = ''; - if (!compact || index !== 0) { - pairBuffer += generateNextLine(state, level); - } +/***/ }), - objectKey = objectKeyList[index]; - objectValue = object[objectKey]; +/***/ 4952: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - if (!writeNode(state, level + 1, objectKey, true, true, true)) { - continue; // Skip this pair because of invalid key. - } - explicitPair = (state.tag !== null && state.tag !== '?') || - (state.dump && state.dump.length > 1024); - if (explicitPair) { - if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { - pairBuffer += '?'; - } else { - pairBuffer += '? '; - } - } +var Type = __nccwpck_require__(4313); - pairBuffer += state.dump; +module.exports = new Type('tag:yaml.org,2002:map', { + kind: 'mapping', + construct: function (data) { return data !== null ? data : {}; } +}); - if (explicitPair) { - pairBuffer += generateNextLine(state, level); - } - if (!writeNode(state, level + 1, objectValue, true, explicitPair)) { - continue; // Skip this pair because of invalid value. - } +/***/ }), - if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { - pairBuffer += ':'; - } else { - pairBuffer += ': '; - } +/***/ 8546: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - pairBuffer += state.dump; - // Both key and value are valid. - _result += pairBuffer; - } - state.tag = _tag; - state.dump = _result || '{}'; // Empty mapping if no valid pairs. +var Type = __nccwpck_require__(4313); + +function resolveYamlMerge(data) { + return data === '<<' || data === null; } -function detectType(state, object, explicit) { - var _result, typeList, index, length, type, style; +module.exports = new Type('tag:yaml.org,2002:merge', { + kind: 'scalar', + resolve: resolveYamlMerge +}); - typeList = explicit ? state.explicitTypes : state.implicitTypes; - for (index = 0, length = typeList.length; index < length; index += 1) { - type = typeList[index]; +/***/ }), - if ((type.instanceOf || type.predicate) && - (!type.instanceOf || ((typeof object === 'object') && (object instanceof type.instanceOf))) && - (!type.predicate || type.predicate(object))) { +/***/ 9697: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - state.tag = explicit ? type.tag : '?'; - if (type.represent) { - style = state.styleMap[type.tag] || type.defaultStyle; - if (_toString.call(type.represent) === '[object Function]') { - _result = type.represent(object, style); - } else if (_hasOwnProperty.call(type.represent, style)) { - _result = type.represent[style](object, style); - } else { - throw new YAMLException('!<' + type.tag + '> tag resolver accepts not "' + style + '" style'); - } +var Type = __nccwpck_require__(4313); - state.dump = _result; - } +function resolveYamlNull(data) { + if (data === null) return true; - return true; - } - } + var max = data.length; - return false; + return (max === 1 && data === '~') || + (max === 4 && (data === 'null' || data === 'Null' || data === 'NULL')); } -// Serializes `object` and writes it to global `result`. -// Returns true on success, or false on invalid object. -// -function writeNode(state, level, object, block, compact, iskey) { - state.tag = null; - state.dump = object; - - if (!detectType(state, object, false)) { - detectType(state, object, true); - } - - var type = _toString.call(state.dump); +function constructYamlNull() { + return null; +} - if (block) { - block = (state.flowLevel < 0 || state.flowLevel > level); - } +function isNull(object) { + return object === null; +} - var objectOrArray = type === '[object Object]' || type === '[object Array]', - duplicateIndex, - duplicate; +module.exports = new Type('tag:yaml.org,2002:null', { + kind: 'scalar', + resolve: resolveYamlNull, + construct: constructYamlNull, + predicate: isNull, + represent: { + canonical: function () { return '~'; }, + lowercase: function () { return 'null'; }, + uppercase: function () { return 'NULL'; }, + camelcase: function () { return 'Null'; }, + empty: function () { return ''; } + }, + defaultStyle: 'lowercase' +}); - if (objectOrArray) { - duplicateIndex = state.duplicates.indexOf(object); - duplicate = duplicateIndex !== -1; - } - if ((state.tag !== null && state.tag !== '?') || duplicate || (state.indent !== 2 && level > 0)) { - compact = false; - } +/***/ }), - if (duplicate && state.usedDuplicates[duplicateIndex]) { - state.dump = '*ref_' + duplicateIndex; - } else { - if (objectOrArray && duplicate && !state.usedDuplicates[duplicateIndex]) { - state.usedDuplicates[duplicateIndex] = true; - } - if (type === '[object Object]') { - if (block && (Object.keys(state.dump).length !== 0)) { - writeBlockMapping(state, level, state.dump, compact); - if (duplicate) { - state.dump = '&ref_' + duplicateIndex + state.dump; - } - } else { - writeFlowMapping(state, level, state.dump); - if (duplicate) { - state.dump = '&ref_' + duplicateIndex + ' ' + state.dump; - } - } - } else if (type === '[object Array]') { - var arrayLevel = (state.noArrayIndent && (level > 0)) ? level - 1 : level; - if (block && (state.dump.length !== 0)) { - writeBlockSequence(state, arrayLevel, state.dump, compact); - if (duplicate) { - state.dump = '&ref_' + duplicateIndex + state.dump; - } - } else { - writeFlowSequence(state, arrayLevel, state.dump); - if (duplicate) { - state.dump = '&ref_' + duplicateIndex + ' ' + state.dump; - } - } - } else if (type === '[object String]') { - if (state.tag !== '?') { - writeScalar(state, state.dump, level, iskey); - } - } else { - if (state.skipInvalid) return false; - throw new YAMLException('unacceptable kind of an object to dump ' + type); - } +/***/ 1005: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - if (state.tag !== null && state.tag !== '?') { - state.dump = '!<' + state.tag + '> ' + state.dump; - } - } - return true; -} -function getDuplicateReferences(object, state) { - var objects = [], - duplicatesIndexes = [], - index, - length; +var Type = __nccwpck_require__(4313); - inspectNode(object, objects, duplicatesIndexes); +var _hasOwnProperty = Object.prototype.hasOwnProperty; +var _toString = Object.prototype.toString; - for (index = 0, length = duplicatesIndexes.length; index < length; index += 1) { - state.duplicates.push(objects[duplicatesIndexes[index]]); - } - state.usedDuplicates = new Array(length); -} +function resolveYamlOmap(data) { + if (data === null) return true; -function inspectNode(object, objects, duplicatesIndexes) { - var objectKeyList, - index, - length; + var objectKeys = [], index, length, pair, pairKey, pairHasKey, + object = data; - if (object !== null && typeof object === 'object') { - index = objects.indexOf(object); - if (index !== -1) { - if (duplicatesIndexes.indexOf(index) === -1) { - duplicatesIndexes.push(index); - } - } else { - objects.push(object); + for (index = 0, length = object.length; index < length; index += 1) { + pair = object[index]; + pairHasKey = false; - if (Array.isArray(object)) { - for (index = 0, length = object.length; index < length; index += 1) { - inspectNode(object[index], objects, duplicatesIndexes); - } - } else { - objectKeyList = Object.keys(object); + if (_toString.call(pair) !== '[object Object]') return false; - for (index = 0, length = objectKeyList.length; index < length; index += 1) { - inspectNode(object[objectKeyList[index]], objects, duplicatesIndexes); - } + for (pairKey in pair) { + if (_hasOwnProperty.call(pair, pairKey)) { + if (!pairHasKey) pairHasKey = true; + else return false; } } - } -} - -function dump(input, options) { - options = options || {}; - var state = new State(options); - - if (!state.noRefs) getDuplicateReferences(input, state); + if (!pairHasKey) return false; - if (writeNode(state, 0, input, true, true)) return state.dump + '\n'; + if (objectKeys.indexOf(pairKey) === -1) objectKeys.push(pairKey); + else return false; + } - return ''; + return true; } -function safeDump(input, options) { - return dump(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); +function constructYamlOmap(data) { + return data !== null ? data : []; } -module.exports.dump = dump; -module.exports.safeDump = safeDump; +module.exports = new Type('tag:yaml.org,2002:omap', { + kind: 'sequence', + resolve: resolveYamlOmap, + construct: constructYamlOmap +}); /***/ }), -/***/ 51517: -/***/ ((module) => { - -// YAML error class. http://stackoverflow.com/questions/8458984 -// +/***/ 7399: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -function YAMLException(reason, mark) { - // Super constructor - Error.call(this); - this.name = 'YAMLException'; - this.reason = reason; - this.mark = mark; - this.message = (this.reason || '(unknown reason)') + (this.mark ? ' ' + this.mark.toString() : ''); +var Type = __nccwpck_require__(4313); - // Include stack trace in error object - if (Error.captureStackTrace) { - // Chrome and NodeJS - Error.captureStackTrace(this, this.constructor); - } else { - // FF, IE 10+ and Safari 6+. Fallback for others - this.stack = (new Error()).stack || ''; - } -} +var _toString = Object.prototype.toString; +function resolveYamlPairs(data) { + if (data === null) return true; -// Inherit from Error -YAMLException.prototype = Object.create(Error.prototype); -YAMLException.prototype.constructor = YAMLException; + var index, length, pair, keys, result, + object = data; + result = new Array(object.length); -YAMLException.prototype.toString = function toString(compact) { - var result = this.name + ': '; + for (index = 0, length = object.length; index < length; index += 1) { + pair = object[index]; - result += this.reason || '(unknown reason)'; + if (_toString.call(pair) !== '[object Object]') return false; - if (!compact && this.mark) { - result += ' ' + this.mark.toString(); - } + keys = Object.keys(pair); - return result; -}; + if (keys.length !== 1) return false; + result[index] = [ keys[0], pair[keys[0]] ]; + } -module.exports = YAMLException; + return true; +} +function constructYamlPairs(data) { + if (data === null) return []; -/***/ }), + var index, length, pair, keys, result, + object = data; -/***/ 75489: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + result = new Array(object.length); + for (index = 0, length = object.length; index < length; index += 1) { + pair = object[index]; + keys = Object.keys(pair); -/*eslint-disable max-len,no-use-before-define*/ + result[index] = [ keys[0], pair[keys[0]] ]; + } -var common = __nccwpck_require__(31127); -var YAMLException = __nccwpck_require__(51517); -var Mark = __nccwpck_require__(34955); -var DEFAULT_SAFE_SCHEMA = __nccwpck_require__(85999); -var DEFAULT_FULL_SCHEMA = __nccwpck_require__(55067); + return result; +} +module.exports = new Type('tag:yaml.org,2002:pairs', { + kind: 'sequence', + resolve: resolveYamlPairs, + construct: constructYamlPairs +}); -var _hasOwnProperty = Object.prototype.hasOwnProperty; +/***/ }), -var CONTEXT_FLOW_IN = 1; -var CONTEXT_FLOW_OUT = 2; -var CONTEXT_BLOCK_IN = 3; -var CONTEXT_BLOCK_OUT = 4; +/***/ 2941: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var CHOMPING_CLIP = 1; -var CHOMPING_STRIP = 2; -var CHOMPING_KEEP = 3; +var Type = __nccwpck_require__(4313); -var PATTERN_NON_PRINTABLE = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/; -var PATTERN_NON_ASCII_LINE_BREAKS = /[\x85\u2028\u2029]/; -var PATTERN_FLOW_INDICATORS = /[,\[\]\{\}]/; -var PATTERN_TAG_HANDLE = /^(?:!|!!|![a-z\-]+!)$/i; -var PATTERN_TAG_URI = /^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i; +module.exports = new Type('tag:yaml.org,2002:seq', { + kind: 'sequence', + construct: function (data) { return data !== null ? data : []; } +}); -function _class(obj) { return Object.prototype.toString.call(obj); } +/***/ }), -function is_EOL(c) { - return (c === 0x0A/* LF */) || (c === 0x0D/* CR */); -} +/***/ 2610: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -function is_WHITE_SPACE(c) { - return (c === 0x09/* Tab */) || (c === 0x20/* Space */); -} -function is_WS_OR_EOL(c) { - return (c === 0x09/* Tab */) || - (c === 0x20/* Space */) || - (c === 0x0A/* LF */) || - (c === 0x0D/* CR */); -} -function is_FLOW_INDICATOR(c) { - return c === 0x2C/* , */ || - c === 0x5B/* [ */ || - c === 0x5D/* ] */ || - c === 0x7B/* { */ || - c === 0x7D/* } */; -} +var Type = __nccwpck_require__(4313); -function fromHexCode(c) { - var lc; +var _hasOwnProperty = Object.prototype.hasOwnProperty; - if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) { - return c - 0x30; - } +function resolveYamlSet(data) { + if (data === null) return true; - /*eslint-disable no-bitwise*/ - lc = c | 0x20; + var key, object = data; - if ((0x61/* a */ <= lc) && (lc <= 0x66/* f */)) { - return lc - 0x61 + 10; + for (key in object) { + if (_hasOwnProperty.call(object, key)) { + if (object[key] !== null) return false; + } } - return -1; + return true; } -function escapedHexLen(c) { - if (c === 0x78/* x */) { return 2; } - if (c === 0x75/* u */) { return 4; } - if (c === 0x55/* U */) { return 8; } - return 0; +function constructYamlSet(data) { + return data !== null ? data : {}; } -function fromDecimalCode(c) { - if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) { - return c - 0x30; - } +module.exports = new Type('tag:yaml.org,2002:set', { + kind: 'mapping', + resolve: resolveYamlSet, + construct: constructYamlSet +}); - return -1; -} -function simpleEscapeSequence(c) { - /* eslint-disable indent */ - return (c === 0x30/* 0 */) ? '\x00' : - (c === 0x61/* a */) ? '\x07' : - (c === 0x62/* b */) ? '\x08' : - (c === 0x74/* t */) ? '\x09' : - (c === 0x09/* Tab */) ? '\x09' : - (c === 0x6E/* n */) ? '\x0A' : - (c === 0x76/* v */) ? '\x0B' : - (c === 0x66/* f */) ? '\x0C' : - (c === 0x72/* r */) ? '\x0D' : - (c === 0x65/* e */) ? '\x1B' : - (c === 0x20/* Space */) ? ' ' : - (c === 0x22/* " */) ? '\x22' : - (c === 0x2F/* / */) ? '/' : - (c === 0x5C/* \ */) ? '\x5C' : - (c === 0x4E/* N */) ? '\x85' : - (c === 0x5F/* _ */) ? '\xA0' : - (c === 0x4C/* L */) ? '\u2028' : - (c === 0x50/* P */) ? '\u2029' : ''; -} +/***/ }), -function charFromCodepoint(c) { - if (c <= 0xFFFF) { - return String.fromCharCode(c); - } - // Encode UTF-16 surrogate pair - // https://en.wikipedia.org/wiki/UTF-16#Code_points_U.2B010000_to_U.2B10FFFF - return String.fromCharCode( - ((c - 0x010000) >> 10) + 0xD800, - ((c - 0x010000) & 0x03FF) + 0xDC00 - ); -} +/***/ 3501: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var simpleEscapeCheck = new Array(256); // integer, for fast access -var simpleEscapeMap = new Array(256); -for (var i = 0; i < 256; i++) { - simpleEscapeCheck[i] = simpleEscapeSequence(i) ? 1 : 0; - simpleEscapeMap[i] = simpleEscapeSequence(i); -} -function State(input, options) { - this.input = input; +var Type = __nccwpck_require__(4313); - this.filename = options['filename'] || null; - this.schema = options['schema'] || DEFAULT_FULL_SCHEMA; - this.onWarning = options['onWarning'] || null; - this.legacy = options['legacy'] || false; - this.json = options['json'] || false; - this.listener = options['listener'] || null; +module.exports = new Type('tag:yaml.org,2002:str', { + kind: 'scalar', + construct: function (data) { return data !== null ? data : ''; } +}); - this.implicitTypes = this.schema.compiledImplicit; - this.typeMap = this.schema.compiledTypeMap; - this.length = input.length; - this.position = 0; - this.line = 0; - this.lineStart = 0; - this.lineIndent = 0; +/***/ }), - this.documents = []; +/***/ 7098: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - /* - this.version; - this.checkLineBreaks; - this.tagMap; - this.anchorMap; - this.tag; - this.anchor; - this.kind; - this.result;*/ -} +var Type = __nccwpck_require__(4313); -function generateError(state, message) { - return new YAMLException( - message, - new Mark(state.filename, state.input, state.position, state.line, (state.position - state.lineStart))); -} +var YAML_DATE_REGEXP = new RegExp( + '^([0-9][0-9][0-9][0-9])' + // [1] year + '-([0-9][0-9])' + // [2] month + '-([0-9][0-9])$'); // [3] day -function throwError(state, message) { - throw generateError(state, message); -} +var YAML_TIMESTAMP_REGEXP = new RegExp( + '^([0-9][0-9][0-9][0-9])' + // [1] year + '-([0-9][0-9]?)' + // [2] month + '-([0-9][0-9]?)' + // [3] day + '(?:[Tt]|[ \\t]+)' + // ... + '([0-9][0-9]?)' + // [4] hour + ':([0-9][0-9])' + // [5] minute + ':([0-9][0-9])' + // [6] second + '(?:\\.([0-9]*))?' + // [7] fraction + '(?:[ \\t]*(Z|([-+])([0-9][0-9]?)' + // [8] tz [9] tz_sign [10] tz_hour + '(?::([0-9][0-9]))?))?$'); // [11] tz_minute -function throwWarning(state, message) { - if (state.onWarning) { - state.onWarning.call(null, generateError(state, message)); - } +function resolveYamlTimestamp(data) { + if (data === null) return false; + if (YAML_DATE_REGEXP.exec(data) !== null) return true; + if (YAML_TIMESTAMP_REGEXP.exec(data) !== null) return true; + return false; } +function constructYamlTimestamp(data) { + var match, year, month, day, hour, minute, second, fraction = 0, + delta = null, tz_hour, tz_minute, date; -var directiveHandlers = { + match = YAML_DATE_REGEXP.exec(data); + if (match === null) match = YAML_TIMESTAMP_REGEXP.exec(data); - YAML: function handleYamlDirective(state, name, args) { + if (match === null) throw new Error('Date resolve error'); - var match, major, minor; + // match: [1] year [2] month [3] day - if (state.version !== null) { - throwError(state, 'duplication of %YAML directive'); - } + year = +(match[1]); + month = +(match[2]) - 1; // JS month starts with 0 + day = +(match[3]); - if (args.length !== 1) { - throwError(state, 'YAML directive accepts exactly one argument'); - } + if (!match[4]) { // no hour + return new Date(Date.UTC(year, month, day)); + } - match = /^([0-9]+)\.([0-9]+)$/.exec(args[0]); + // match: [4] hour [5] minute [6] second [7] fraction - if (match === null) { - throwError(state, 'ill-formed argument of the YAML directive'); + hour = +(match[4]); + minute = +(match[5]); + second = +(match[6]); + + if (match[7]) { + fraction = match[7].slice(0, 3); + while (fraction.length < 3) { // milli-seconds + fraction += '0'; } + fraction = +fraction; + } - major = parseInt(match[1], 10); - minor = parseInt(match[2], 10); + // match: [8] tz [9] tz_sign [10] tz_hour [11] tz_minute - if (major !== 1) { - throwError(state, 'unacceptable YAML version of the document'); - } + if (match[9]) { + tz_hour = +(match[10]); + tz_minute = +(match[11] || 0); + delta = (tz_hour * 60 + tz_minute) * 60000; // delta in mili-seconds + if (match[9] === '-') delta = -delta; + } - state.version = args[0]; - state.checkLineBreaks = (minor < 2); + date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction)); - if (minor !== 1 && minor !== 2) { - throwWarning(state, 'unsupported YAML version of the document'); - } - }, + if (delta) date.setTime(date.getTime() - delta); - TAG: function handleTagDirective(state, name, args) { + return date; +} - var handle, prefix; +function representYamlTimestamp(object /*, style*/) { + return object.toISOString(); +} - if (args.length !== 2) { - throwError(state, 'TAG directive accepts exactly two arguments'); - } +module.exports = new Type('tag:yaml.org,2002:timestamp', { + kind: 'scalar', + resolve: resolveYamlTimestamp, + construct: constructYamlTimestamp, + instanceOf: Date, + represent: representYamlTimestamp +}); - handle = args[0]; - prefix = args[1]; - if (!PATTERN_TAG_HANDLE.test(handle)) { - throwError(state, 'ill-formed tag handle (first argument) of the TAG directive'); - } +/***/ }), - if (_hasOwnProperty.call(state.tagMap, handle)) { - throwError(state, 'there is a previously declared suffix for "' + handle + '" tag handle'); - } +/***/ 6155: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - if (!PATTERN_TAG_URI.test(prefix)) { - throwError(state, 'ill-formed tag prefix (second argument) of the TAG directive'); - } +var _fs +try { + _fs = __nccwpck_require__(8692) +} catch (_) { + _fs = __nccwpck_require__(9896) +} - state.tagMap[handle] = prefix; +function readFile (file, options, callback) { + if (callback == null) { + callback = options + options = {} } -}; + if (typeof options === 'string') { + options = {encoding: options} + } -function captureSegment(state, start, end, checkJson) { - var _position, _length, _character, _result; + options = options || {} + var fs = options.fs || _fs - if (start < end) { - _result = state.input.slice(start, end); + var shouldThrow = true + if ('throws' in options) { + shouldThrow = options.throws + } - if (checkJson) { - for (_position = 0, _length = _result.length; _position < _length; _position += 1) { - _character = _result.charCodeAt(_position); - if (!(_character === 0x09 || - (0x20 <= _character && _character <= 0x10FFFF))) { - throwError(state, 'expected valid JSON character'); - } + fs.readFile(file, options, function (err, data) { + if (err) return callback(err) + + data = stripBom(data) + + var obj + try { + obj = JSON.parse(data, options ? options.reviver : null) + } catch (err2) { + if (shouldThrow) { + err2.message = file + ': ' + err2.message + return callback(err2) + } else { + return callback(null, null) } - } else if (PATTERN_NON_PRINTABLE.test(_result)) { - throwError(state, 'the stream contains non-printable characters'); } - state.result += _result; - } + callback(null, obj) + }) } -function mergeMappings(state, destination, source, overridableKeys) { - var sourceKeys, key, index, quantity; - - if (!common.isObject(source)) { - throwError(state, 'cannot merge mappings; the provided source object is unacceptable'); +function readFileSync (file, options) { + options = options || {} + if (typeof options === 'string') { + options = {encoding: options} } - sourceKeys = Object.keys(source); + var fs = options.fs || _fs - for (index = 0, quantity = sourceKeys.length; index < quantity; index += 1) { - key = sourceKeys[index]; + var shouldThrow = true + if ('throws' in options) { + shouldThrow = options.throws + } - if (!_hasOwnProperty.call(destination, key)) { - destination[key] = source[key]; - overridableKeys[key] = true; + try { + var content = fs.readFileSync(file, options) + content = stripBom(content) + return JSON.parse(content, options.reviver) + } catch (err) { + if (shouldThrow) { + err.message = file + ': ' + err.message + throw err + } else { + return null } } } -function storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, startLine, startPos) { - var index, quantity; +function stringify (obj, options) { + var spaces + var EOL = '\n' + if (typeof options === 'object' && options !== null) { + if (options.spaces) { + spaces = options.spaces + } + if (options.EOL) { + EOL = options.EOL + } + } - // The output is a plain object here, so keys can only be strings. - // We need to convert keyNode to a string, but doing so can hang the process - // (deeply nested arrays that explode exponentially using aliases). - if (Array.isArray(keyNode)) { - keyNode = Array.prototype.slice.call(keyNode); + var str = JSON.stringify(obj, options ? options.replacer : null, spaces) - for (index = 0, quantity = keyNode.length; index < quantity; index += 1) { - if (Array.isArray(keyNode[index])) { - throwError(state, 'nested arrays are not supported inside keys'); - } + return str.replace(/\n/g, EOL) + EOL +} - if (typeof keyNode === 'object' && _class(keyNode[index]) === '[object Object]') { - keyNode[index] = '[object Object]'; - } - } +function writeFile (file, obj, options, callback) { + if (callback == null) { + callback = options + options = {} } + options = options || {} + var fs = options.fs || _fs - // Avoid code execution in load() via toString property - // (still use its own toString for arrays, timestamps, - // and whatever user schema extensions happen to have @@toStringTag) - if (typeof keyNode === 'object' && _class(keyNode) === '[object Object]') { - keyNode = '[object Object]'; + var str = '' + try { + str = stringify(obj, options) + } catch (err) { + // Need to return whether a callback was passed or not + if (callback) callback(err, null) + return } + fs.writeFile(file, str, options, callback) +} - keyNode = String(keyNode); +function writeFileSync (file, obj, options) { + options = options || {} + var fs = options.fs || _fs - if (_result === null) { - _result = {}; - } + var str = stringify(obj, options) + // not sure if fs.writeFileSync returns anything, but just in case + return fs.writeFileSync(file, str, options) +} - if (keyTag === 'tag:yaml.org,2002:merge') { - if (Array.isArray(valueNode)) { - for (index = 0, quantity = valueNode.length; index < quantity; index += 1) { - mergeMappings(state, _result, valueNode[index], overridableKeys); - } - } else { - mergeMappings(state, _result, valueNode, overridableKeys); - } - } else { - if (!state.json && - !_hasOwnProperty.call(overridableKeys, keyNode) && - _hasOwnProperty.call(_result, keyNode)) { - state.line = startLine || state.line; - state.position = startPos || state.position; - throwError(state, 'duplicated mapping key'); - } - _result[keyNode] = valueNode; - delete overridableKeys[keyNode]; - } +function stripBom (content) { + // we do this because JSON.parse would convert it to a utf8 string if encoding wasn't specified + if (Buffer.isBuffer(content)) content = content.toString('utf8') + content = content.replace(/^\uFEFF/, '') + return content +} - return _result; +var jsonfile = { + readFile: readFile, + readFileSync: readFileSync, + writeFile: writeFile, + writeFileSync: writeFileSync } -function readLineBreak(state) { - var ch; +module.exports = jsonfile - ch = state.input.charCodeAt(state.position); - if (ch === 0x0A/* LF */) { - state.position++; - } else if (ch === 0x0D/* CR */) { - state.position++; - if (state.input.charCodeAt(state.position) === 0x0A/* LF */) { - state.position++; - } - } else { - throwError(state, 'a line break is expected'); - } +/***/ }), - state.line += 1; - state.lineStart = state.position; +/***/ 7738: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + + +const path = __nccwpck_require__(6928); +const fs = __nccwpck_require__(9896); +const {promisify} = __nccwpck_require__(9023); +const pLocate = __nccwpck_require__(4296); + +const fsStat = promisify(fs.stat); +const fsLStat = promisify(fs.lstat); + +const typeMappings = { + directory: 'isDirectory', + file: 'isFile' +}; + +function checkType({type}) { + if (type in typeMappings) { + return; + } + + throw new Error(`Invalid type specified: ${type}`); } -function skipSeparationSpace(state, allowComments, checkIndent) { - var lineBreaks = 0, - ch = state.input.charCodeAt(state.position); +const matchType = (type, stat) => type === undefined || stat[typeMappings[type]](); - while (ch !== 0) { - while (is_WHITE_SPACE(ch)) { - ch = state.input.charCodeAt(++state.position); - } +module.exports = async (paths, options) => { + options = { + cwd: process.cwd(), + type: 'file', + allowSymlinks: true, + ...options + }; + checkType(options); + const statFn = options.allowSymlinks ? fsStat : fsLStat; - if (allowComments && ch === 0x23/* # */) { - do { - ch = state.input.charCodeAt(++state.position); - } while (ch !== 0x0A/* LF */ && ch !== 0x0D/* CR */ && ch !== 0); - } + return pLocate(paths, async path_ => { + try { + const stat = await statFn(path.resolve(options.cwd, path_)); + return matchType(options.type, stat); + } catch (_) { + return false; + } + }, options); +}; - if (is_EOL(ch)) { - readLineBreak(state); +module.exports.sync = (paths, options) => { + options = { + cwd: process.cwd(), + allowSymlinks: true, + type: 'file', + ...options + }; + checkType(options); + const statFn = options.allowSymlinks ? fs.statSync : fs.lstatSync; - ch = state.input.charCodeAt(state.position); - lineBreaks++; - state.lineIndent = 0; + for (const path_ of paths) { + try { + const stat = statFn(path.resolve(options.cwd, path_)); - while (ch === 0x20/* Space */) { - state.lineIndent++; - ch = state.input.charCodeAt(++state.position); - } - } else { - break; - } - } + if (matchType(options.type, stat)) { + return path_; + } + } catch (_) { + } + } +}; - if (checkIndent !== -1 && lineBreaks !== 0 && state.lineIndent < checkIndent) { - throwWarning(state, 'deficient indentation'); - } - return lineBreaks; -} +/***/ }), -function testDocumentSeparator(state) { - var _position = state.position, - ch; +/***/ 353: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - ch = state.input.charCodeAt(_position); - // Condition state.position === state.lineStart is tested - // in parent on each call, for efficiency. No needs to test here again. - if ((ch === 0x2D/* - */ || ch === 0x2E/* . */) && - ch === state.input.charCodeAt(_position + 1) && - ch === state.input.charCodeAt(_position + 2)) { - _position += 3; +const { PassThrough } = __nccwpck_require__(2203); - ch = state.input.charCodeAt(_position); +module.exports = function (/*streams...*/) { + var sources = [] + var output = new PassThrough({objectMode: true}) - if (ch === 0 || is_WS_OR_EOL(ch)) { - return true; + output.setMaxListeners(0) + + output.add = add + output.isEmpty = isEmpty + + output.on('unpipe', remove) + + Array.prototype.slice.call(arguments).forEach(add) + + return output + + function add (source) { + if (Array.isArray(source)) { + source.forEach(add) + return this } + + sources.push(source); + source.once('end', remove.bind(null, source)) + source.once('error', output.emit.bind(output, 'error')) + source.pipe(output, {end: false}) + return this } - return false; -} + function isEmpty () { + return sources.length == 0; + } -function writeFoldedLines(state, count) { - if (count === 1) { - state.result += ' '; - } else if (count > 1) { - state.result += common.repeat('\n', count - 1); + function remove (source) { + sources = sources.filter(function (it) { return it !== source }) + if (!sources.length && output.readable) { output.end() } } } -function readPlainScalar(state, nodeIndent, withinFlowCollection) { - var preceding, - following, - captureStart, - captureEnd, - hasPendingContent, - _line, - _lineStart, - _lineIndent, - _kind = state.kind, - _result = state.result, - ch; +/***/ }), - ch = state.input.charCodeAt(state.position); +/***/ 4031: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + + +/* + * merge2 + * https://github.com/teambition/merge2 + * + * Copyright (c) 2014-2020 Teambition + * Licensed under the MIT license. + */ +const Stream = __nccwpck_require__(2203) +const PassThrough = Stream.PassThrough +const slice = Array.prototype.slice + +module.exports = merge2 + +function merge2 () { + const streamsQueue = [] + const args = slice.call(arguments) + let merging = false + let options = args[args.length - 1] - if (is_WS_OR_EOL(ch) || - is_FLOW_INDICATOR(ch) || - ch === 0x23/* # */ || - ch === 0x26/* & */ || - ch === 0x2A/* * */ || - ch === 0x21/* ! */ || - ch === 0x7C/* | */ || - ch === 0x3E/* > */ || - ch === 0x27/* ' */ || - ch === 0x22/* " */ || - ch === 0x25/* % */ || - ch === 0x40/* @ */ || - ch === 0x60/* ` */) { - return false; + if (options && !Array.isArray(options) && options.pipe == null) { + args.pop() + } else { + options = {} } - if (ch === 0x3F/* ? */ || ch === 0x2D/* - */) { - following = state.input.charCodeAt(state.position + 1); + const doEnd = options.end !== false + const doPipeError = options.pipeError === true + if (options.objectMode == null) { + options.objectMode = true + } + if (options.highWaterMark == null) { + options.highWaterMark = 64 * 1024 + } + const mergedStream = PassThrough(options) - if (is_WS_OR_EOL(following) || - withinFlowCollection && is_FLOW_INDICATOR(following)) { - return false; + function addStream () { + for (let i = 0, len = arguments.length; i < len; i++) { + streamsQueue.push(pauseStreams(arguments[i], options)) } + mergeStream() + return this } - state.kind = 'scalar'; - state.result = ''; - captureStart = captureEnd = state.position; - hasPendingContent = false; - - while (ch !== 0) { - if (ch === 0x3A/* : */) { - following = state.input.charCodeAt(state.position + 1); + function mergeStream () { + if (merging) { + return + } + merging = true - if (is_WS_OR_EOL(following) || - withinFlowCollection && is_FLOW_INDICATOR(following)) { - break; - } + let streams = streamsQueue.shift() + if (!streams) { + process.nextTick(endStream) + return + } + if (!Array.isArray(streams)) { + streams = [streams] + } - } else if (ch === 0x23/* # */) { - preceding = state.input.charCodeAt(state.position - 1); + let pipesCount = streams.length + 1 - if (is_WS_OR_EOL(preceding)) { - break; + function next () { + if (--pipesCount > 0) { + return } + merging = false + mergeStream() + } - } else if ((state.position === state.lineStart && testDocumentSeparator(state)) || - withinFlowCollection && is_FLOW_INDICATOR(ch)) { - break; + function pipe (stream) { + function onend () { + stream.removeListener('merge2UnpipeEnd', onend) + stream.removeListener('end', onend) + if (doPipeError) { + stream.removeListener('error', onerror) + } + next() + } + function onerror (err) { + mergedStream.emit('error', err) + } + // skip ended stream + if (stream._readableState.endEmitted) { + return next() + } - } else if (is_EOL(ch)) { - _line = state.line; - _lineStart = state.lineStart; - _lineIndent = state.lineIndent; - skipSeparationSpace(state, false, -1); + stream.on('merge2UnpipeEnd', onend) + stream.on('end', onend) - if (state.lineIndent >= nodeIndent) { - hasPendingContent = true; - ch = state.input.charCodeAt(state.position); - continue; - } else { - state.position = captureEnd; - state.line = _line; - state.lineStart = _lineStart; - state.lineIndent = _lineIndent; - break; + if (doPipeError) { + stream.on('error', onerror) } - } - if (hasPendingContent) { - captureSegment(state, captureStart, captureEnd, false); - writeFoldedLines(state, state.line - _line); - captureStart = captureEnd = state.position; - hasPendingContent = false; + stream.pipe(mergedStream, { end: false }) + // compatible for old stream + stream.resume() } - if (!is_WHITE_SPACE(ch)) { - captureEnd = state.position + 1; + for (let i = 0; i < streams.length; i++) { + pipe(streams[i]) } - ch = state.input.charCodeAt(++state.position); + next() } - captureSegment(state, captureStart, captureEnd, false); + function endStream () { + merging = false + // emit 'queueDrain' when all streams merged. + mergedStream.emit('queueDrain') + if (doEnd) { + mergedStream.end() + } + } - if (state.result) { - return true; + mergedStream.setMaxListeners(0) + mergedStream.add = addStream + mergedStream.on('unpipe', function (stream) { + stream.emit('merge2UnpipeEnd') + }) + + if (args.length) { + addStream.apply(null, args) } + return mergedStream +} - state.kind = _kind; - state.result = _result; - return false; +// check and pause streams for pipe. +function pauseStreams (streams, options) { + if (!Array.isArray(streams)) { + // Backwards-compat with old-style streams + if (!streams._readableState && streams.pipe) { + streams = streams.pipe(PassThrough(options)) + } + if (!streams._readableState || !streams.pause || !streams.pipe) { + throw new Error('Only readable stream can be merged.') + } + streams.pause() + } else { + for (let i = 0, len = streams.length; i < len; i++) { + streams[i] = pauseStreams(streams[i], options) + } + } + return streams } -function readSingleQuotedScalar(state, nodeIndent) { - var ch, - captureStart, captureEnd; - ch = state.input.charCodeAt(state.position); +/***/ }), - if (ch !== 0x27/* ' */) { - return false; - } +/***/ 9555: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - state.kind = 'scalar'; - state.result = ''; - state.position++; - captureStart = captureEnd = state.position; - while ((ch = state.input.charCodeAt(state.position)) !== 0) { - if (ch === 0x27/* ' */) { - captureSegment(state, captureStart, state.position, true); - ch = state.input.charCodeAt(++state.position); - if (ch === 0x27/* ' */) { - captureStart = state.position; - state.position++; - captureEnd = state.position; - } else { - return true; - } +const util = __nccwpck_require__(9023); +const braces = __nccwpck_require__(8671); +const picomatch = __nccwpck_require__(3268); +const utils = __nccwpck_require__(3753); - } else if (is_EOL(ch)) { - captureSegment(state, captureStart, captureEnd, true); - writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent)); - captureStart = captureEnd = state.position; +const isEmptyString = v => v === '' || v === './'; +const hasBraces = v => { + const index = v.indexOf('{'); + return index > -1 && v.indexOf('}', index) > -1; +}; - } else if (state.position === state.lineStart && testDocumentSeparator(state)) { - throwError(state, 'unexpected end of the document within a single quoted scalar'); +/** + * Returns an array of strings that match one or more glob patterns. + * + * ```js + * const mm = require('micromatch'); + * // mm(list, patterns[, options]); + * + * console.log(mm(['a.js', 'a.txt'], ['*.js'])); + * //=> [ 'a.js' ] + * ``` + * @param {String|Array} `list` List of strings to match. + * @param {String|Array} `patterns` One or more glob patterns to use for matching. + * @param {Object} `options` See available [options](#options) + * @return {Array} Returns an array of matches + * @summary false + * @api public + */ - } else { - state.position++; - captureEnd = state.position; +const micromatch = (list, patterns, options) => { + patterns = [].concat(patterns); + list = [].concat(list); + + let omit = new Set(); + let keep = new Set(); + let items = new Set(); + let negatives = 0; + + let onResult = state => { + items.add(state.output); + if (options && options.onResult) { + options.onResult(state); } - } + }; - throwError(state, 'unexpected end of the stream within a single quoted scalar'); -} + for (let i = 0; i < patterns.length; i++) { + let isMatch = picomatch(String(patterns[i]), { ...options, onResult }, true); + let negated = isMatch.state.negated || isMatch.state.negatedExtglob; + if (negated) negatives++; -function readDoubleQuotedScalar(state, nodeIndent) { - var captureStart, - captureEnd, - hexLength, - hexResult, - tmp, - ch; + for (let item of list) { + let matched = isMatch(item, true); - ch = state.input.charCodeAt(state.position); + let match = negated ? !matched.isMatch : matched.isMatch; + if (!match) continue; - if (ch !== 0x22/* " */) { - return false; + if (negated) { + omit.add(matched.output); + } else { + omit.delete(matched.output); + keep.add(matched.output); + } + } } - state.kind = 'scalar'; - state.result = ''; - state.position++; - captureStart = captureEnd = state.position; + let result = negatives === patterns.length ? [...items] : [...keep]; + let matches = result.filter(item => !omit.has(item)); - while ((ch = state.input.charCodeAt(state.position)) !== 0) { - if (ch === 0x22/* " */) { - captureSegment(state, captureStart, state.position, true); - state.position++; - return true; + if (options && matches.length === 0) { + if (options.failglob === true) { + throw new Error(`No matches found for "${patterns.join(', ')}"`); + } - } else if (ch === 0x5C/* \ */) { - captureSegment(state, captureStart, state.position, true); - ch = state.input.charCodeAt(++state.position); + if (options.nonull === true || options.nullglob === true) { + return options.unescape ? patterns.map(p => p.replace(/\\/g, '')) : patterns; + } + } - if (is_EOL(ch)) { - skipSeparationSpace(state, false, nodeIndent); + return matches; +}; - // TODO: rework to inline fn with no type cast? - } else if (ch < 256 && simpleEscapeCheck[ch]) { - state.result += simpleEscapeMap[ch]; - state.position++; +/** + * Backwards compatibility + */ - } else if ((tmp = escapedHexLen(ch)) > 0) { - hexLength = tmp; - hexResult = 0; +micromatch.match = micromatch; - for (; hexLength > 0; hexLength--) { - ch = state.input.charCodeAt(++state.position); +/** + * Returns a matcher function from the given glob `pattern` and `options`. + * The returned function takes a string to match as its only argument and returns + * true if the string is a match. + * + * ```js + * const mm = require('micromatch'); + * // mm.matcher(pattern[, options]); + * + * const isMatch = mm.matcher('*.!(*a)'); + * console.log(isMatch('a.a')); //=> false + * console.log(isMatch('a.b')); //=> true + * ``` + * @param {String} `pattern` Glob pattern + * @param {Object} `options` + * @return {Function} Returns a matcher function. + * @api public + */ - if ((tmp = fromHexCode(ch)) >= 0) { - hexResult = (hexResult << 4) + tmp; +micromatch.matcher = (pattern, options) => picomatch(pattern, options); - } else { - throwError(state, 'expected hexadecimal character'); - } - } +/** + * Returns true if **any** of the given glob `patterns` match the specified `string`. + * + * ```js + * const mm = require('micromatch'); + * // mm.isMatch(string, patterns[, options]); + * + * console.log(mm.isMatch('a.a', ['b.*', '*.a'])); //=> true + * console.log(mm.isMatch('a.a', 'b.*')); //=> false + * ``` + * @param {String} `str` The string to test. + * @param {String|Array} `patterns` One or more glob patterns to use for matching. + * @param {Object} `[options]` See available [options](#options). + * @return {Boolean} Returns true if any patterns match `str` + * @api public + */ - state.result += charFromCodepoint(hexResult); +micromatch.isMatch = (str, patterns, options) => picomatch(patterns, options)(str); - state.position++; +/** + * Backwards compatibility + */ - } else { - throwError(state, 'unknown escape sequence'); - } +micromatch.any = micromatch.isMatch; - captureStart = captureEnd = state.position; +/** + * Returns a list of strings that _**do not match any**_ of the given `patterns`. + * + * ```js + * const mm = require('micromatch'); + * // mm.not(list, patterns[, options]); + * + * console.log(mm.not(['a.a', 'b.b', 'c.c'], '*.a')); + * //=> ['b.b', 'c.c'] + * ``` + * @param {Array} `list` Array of strings to match. + * @param {String|Array} `patterns` One or more glob pattern to use for matching. + * @param {Object} `options` See available [options](#options) for changing how matches are performed + * @return {Array} Returns an array of strings that **do not match** the given patterns. + * @api public + */ - } else if (is_EOL(ch)) { - captureSegment(state, captureStart, captureEnd, true); - writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent)); - captureStart = captureEnd = state.position; +micromatch.not = (list, patterns, options = {}) => { + patterns = [].concat(patterns).map(String); + let result = new Set(); + let items = []; - } else if (state.position === state.lineStart && testDocumentSeparator(state)) { - throwError(state, 'unexpected end of the document within a double quoted scalar'); + let onResult = state => { + if (options.onResult) options.onResult(state); + items.push(state.output); + }; - } else { - state.position++; - captureEnd = state.position; + let matches = new Set(micromatch(list, patterns, { ...options, onResult })); + + for (let item of items) { + if (!matches.has(item)) { + result.add(item); } } + return [...result]; +}; - throwError(state, 'unexpected end of the stream within a double quoted scalar'); -} - -function readFlowCollection(state, nodeIndent) { - var readNext = true, - _line, - _tag = state.tag, - _result, - _anchor = state.anchor, - following, - terminator, - isPair, - isExplicitPair, - isMapping, - overridableKeys = {}, - keyNode, - keyTag, - valueNode, - ch; +/** + * Returns true if the given `string` contains the given pattern. Similar + * to [.isMatch](#isMatch) but the pattern can match any part of the string. + * + * ```js + * var mm = require('micromatch'); + * // mm.contains(string, pattern[, options]); + * + * console.log(mm.contains('aa/bb/cc', '*b')); + * //=> true + * console.log(mm.contains('aa/bb/cc', '*d')); + * //=> false + * ``` + * @param {String} `str` The string to match. + * @param {String|Array} `patterns` Glob pattern to use for matching. + * @param {Object} `options` See available [options](#options) for changing how matches are performed + * @return {Boolean} Returns true if any of the patterns matches any part of `str`. + * @api public + */ - ch = state.input.charCodeAt(state.position); +micromatch.contains = (str, pattern, options) => { + if (typeof str !== 'string') { + throw new TypeError(`Expected a string: "${util.inspect(str)}"`); + } - if (ch === 0x5B/* [ */) { - terminator = 0x5D;/* ] */ - isMapping = false; - _result = []; - } else if (ch === 0x7B/* { */) { - terminator = 0x7D;/* } */ - isMapping = true; - _result = {}; - } else { - return false; + if (Array.isArray(pattern)) { + return pattern.some(p => micromatch.contains(str, p, options)); } - if (state.anchor !== null) { - state.anchorMap[state.anchor] = _result; + if (typeof pattern === 'string') { + if (isEmptyString(str) || isEmptyString(pattern)) { + return false; + } + + if (str.includes(pattern) || (str.startsWith('./') && str.slice(2).includes(pattern))) { + return true; + } } - ch = state.input.charCodeAt(++state.position); + return micromatch.isMatch(str, pattern, { ...options, contains: true }); +}; - while (ch !== 0) { - skipSeparationSpace(state, true, nodeIndent); +/** + * Filter the keys of the given object with the given `glob` pattern + * and `options`. Does not attempt to match nested keys. If you need this feature, + * use [glob-object][] instead. + * + * ```js + * const mm = require('micromatch'); + * // mm.matchKeys(object, patterns[, options]); + * + * const obj = { aa: 'a', ab: 'b', ac: 'c' }; + * console.log(mm.matchKeys(obj, '*b')); + * //=> { ab: 'b' } + * ``` + * @param {Object} `object` The object with keys to filter. + * @param {String|Array} `patterns` One or more glob patterns to use for matching. + * @param {Object} `options` See available [options](#options) for changing how matches are performed + * @return {Object} Returns an object with only keys that match the given patterns. + * @api public + */ + +micromatch.matchKeys = (obj, patterns, options) => { + if (!utils.isObject(obj)) { + throw new TypeError('Expected the first argument to be an object'); + } + let keys = micromatch(Object.keys(obj), patterns, options); + let res = {}; + for (let key of keys) res[key] = obj[key]; + return res; +}; + +/** + * Returns true if some of the strings in the given `list` match any of the given glob `patterns`. + * + * ```js + * const mm = require('micromatch'); + * // mm.some(list, patterns[, options]); + * + * console.log(mm.some(['foo.js', 'bar.js'], ['*.js', '!foo.js'])); + * // true + * console.log(mm.some(['foo.js'], ['*.js', '!foo.js'])); + * // false + * ``` + * @param {String|Array} `list` The string or array of strings to test. Returns as soon as the first match is found. + * @param {String|Array} `patterns` One or more glob patterns to use for matching. + * @param {Object} `options` See available [options](#options) for changing how matches are performed + * @return {Boolean} Returns true if any `patterns` matches any of the strings in `list` + * @api public + */ - ch = state.input.charCodeAt(state.position); +micromatch.some = (list, patterns, options) => { + let items = [].concat(list); - if (ch === terminator) { - state.position++; - state.tag = _tag; - state.anchor = _anchor; - state.kind = isMapping ? 'mapping' : 'sequence'; - state.result = _result; + for (let pattern of [].concat(patterns)) { + let isMatch = picomatch(String(pattern), options); + if (items.some(item => isMatch(item))) { return true; - } else if (!readNext) { - throwError(state, 'missed comma between flow collection entries'); } + } + return false; +}; - keyTag = keyNode = valueNode = null; - isPair = isExplicitPair = false; +/** + * Returns true if every string in the given `list` matches + * any of the given glob `patterns`. + * + * ```js + * const mm = require('micromatch'); + * // mm.every(list, patterns[, options]); + * + * console.log(mm.every('foo.js', ['foo.js'])); + * // true + * console.log(mm.every(['foo.js', 'bar.js'], ['*.js'])); + * // true + * console.log(mm.every(['foo.js', 'bar.js'], ['*.js', '!foo.js'])); + * // false + * console.log(mm.every(['foo.js'], ['*.js', '!foo.js'])); + * // false + * ``` + * @param {String|Array} `list` The string or array of strings to test. + * @param {String|Array} `patterns` One or more glob patterns to use for matching. + * @param {Object} `options` See available [options](#options) for changing how matches are performed + * @return {Boolean} Returns true if all `patterns` matches all of the strings in `list` + * @api public + */ - if (ch === 0x3F/* ? */) { - following = state.input.charCodeAt(state.position + 1); +micromatch.every = (list, patterns, options) => { + let items = [].concat(list); - if (is_WS_OR_EOL(following)) { - isPair = isExplicitPair = true; - state.position++; - skipSeparationSpace(state, true, nodeIndent); - } + for (let pattern of [].concat(patterns)) { + let isMatch = picomatch(String(pattern), options); + if (!items.every(item => isMatch(item))) { + return false; } + } + return true; +}; - _line = state.line; - composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true); - keyTag = state.tag; - keyNode = state.result; - skipSeparationSpace(state, true, nodeIndent); - - ch = state.input.charCodeAt(state.position); +/** + * Returns true if **all** of the given `patterns` match + * the specified string. + * + * ```js + * const mm = require('micromatch'); + * // mm.all(string, patterns[, options]); + * + * console.log(mm.all('foo.js', ['foo.js'])); + * // true + * + * console.log(mm.all('foo.js', ['*.js', '!foo.js'])); + * // false + * + * console.log(mm.all('foo.js', ['*.js', 'foo.js'])); + * // true + * + * console.log(mm.all('foo.js', ['*.js', 'f*', '*o*', '*o.js'])); + * // true + * ``` + * @param {String|Array} `str` The string to test. + * @param {String|Array} `patterns` One or more glob patterns to use for matching. + * @param {Object} `options` See available [options](#options) for changing how matches are performed + * @return {Boolean} Returns true if any patterns match `str` + * @api public + */ - if ((isExplicitPair || state.line === _line) && ch === 0x3A/* : */) { - isPair = true; - ch = state.input.charCodeAt(++state.position); - skipSeparationSpace(state, true, nodeIndent); - composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true); - valueNode = state.result; - } +micromatch.all = (str, patterns, options) => { + if (typeof str !== 'string') { + throw new TypeError(`Expected a string: "${util.inspect(str)}"`); + } - if (isMapping) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode); - } else if (isPair) { - _result.push(storeMappingPair(state, null, overridableKeys, keyTag, keyNode, valueNode)); - } else { - _result.push(keyNode); - } + return [].concat(patterns).every(p => picomatch(p, options)(str)); +}; - skipSeparationSpace(state, true, nodeIndent); +/** + * Returns an array of matches captured by `pattern` in `string, or `null` if the pattern did not match. + * + * ```js + * const mm = require('micromatch'); + * // mm.capture(pattern, string[, options]); + * + * console.log(mm.capture('test/*.js', 'test/foo.js')); + * //=> ['foo'] + * console.log(mm.capture('test/*.js', 'foo/bar.css')); + * //=> null + * ``` + * @param {String} `glob` Glob pattern to use for matching. + * @param {String} `input` String to match + * @param {Object} `options` See available [options](#options) for changing how matches are performed + * @return {Array|null} Returns an array of captures if the input matches the glob pattern, otherwise `null`. + * @api public + */ - ch = state.input.charCodeAt(state.position); +micromatch.capture = (glob, input, options) => { + let posix = utils.isWindows(options); + let regex = picomatch.makeRe(String(glob), { ...options, capture: true }); + let match = regex.exec(posix ? utils.toPosixSlashes(input) : input); - if (ch === 0x2C/* , */) { - readNext = true; - ch = state.input.charCodeAt(++state.position); - } else { - readNext = false; - } + if (match) { + return match.slice(1).map(v => v === void 0 ? '' : v); } +}; - throwError(state, 'unexpected end of the stream within a flow collection'); -} +/** + * Create a regular expression from the given glob `pattern`. + * + * ```js + * const mm = require('micromatch'); + * // mm.makeRe(pattern[, options]); + * + * console.log(mm.makeRe('*.js')); + * //=> /^(?:(\.[\\\/])?(?!\.)(?=.)[^\/]*?\.js)$/ + * ``` + * @param {String} `pattern` A glob pattern to convert to regex. + * @param {Object} `options` + * @return {RegExp} Returns a regex created from the given pattern. + * @api public + */ -function readBlockScalar(state, nodeIndent) { - var captureStart, - folding, - chomping = CHOMPING_CLIP, - didReadContent = false, - detectedIndent = false, - textIndent = nodeIndent, - emptyLines = 0, - atMoreIndented = false, - tmp, - ch; +micromatch.makeRe = (...args) => picomatch.makeRe(...args); - ch = state.input.charCodeAt(state.position); +/** + * Scan a glob pattern to separate the pattern into segments. Used + * by the [split](#split) method. + * + * ```js + * const mm = require('micromatch'); + * const state = mm.scan(pattern[, options]); + * ``` + * @param {String} `pattern` + * @param {Object} `options` + * @return {Object} Returns an object with + * @api public + */ - if (ch === 0x7C/* | */) { - folding = false; - } else if (ch === 0x3E/* > */) { - folding = true; - } else { - return false; +micromatch.scan = (...args) => picomatch.scan(...args); + +/** + * Parse a glob pattern to create the source string for a regular + * expression. + * + * ```js + * const mm = require('micromatch'); + * const state = mm.parse(pattern[, options]); + * ``` + * @param {String} `glob` + * @param {Object} `options` + * @return {Object} Returns an object with useful properties and output to be used as regex source string. + * @api public + */ + +micromatch.parse = (patterns, options) => { + let res = []; + for (let pattern of [].concat(patterns || [])) { + for (let str of braces(String(pattern), options)) { + res.push(picomatch.parse(str, options)); + } } + return res; +}; - state.kind = 'scalar'; - state.result = ''; +/** + * Process the given brace `pattern`. + * + * ```js + * const { braces } = require('micromatch'); + * console.log(braces('foo/{a,b,c}/bar')); + * //=> [ 'foo/(a|b|c)/bar' ] + * + * console.log(braces('foo/{a,b,c}/bar', { expand: true })); + * //=> [ 'foo/a/bar', 'foo/b/bar', 'foo/c/bar' ] + * ``` + * @param {String} `pattern` String with brace pattern to process. + * @param {Object} `options` Any [options](#options) to change how expansion is performed. See the [braces][] library for all available options. + * @return {Array} + * @api public + */ - while (ch !== 0) { - ch = state.input.charCodeAt(++state.position); +micromatch.braces = (pattern, options) => { + if (typeof pattern !== 'string') throw new TypeError('Expected a string'); + if ((options && options.nobrace === true) || !hasBraces(pattern)) { + return [pattern]; + } + return braces(pattern, options); +}; - if (ch === 0x2B/* + */ || ch === 0x2D/* - */) { - if (CHOMPING_CLIP === chomping) { - chomping = (ch === 0x2B/* + */) ? CHOMPING_KEEP : CHOMPING_STRIP; - } else { - throwError(state, 'repeat of a chomping mode identifier'); - } +/** + * Expand braces + */ - } else if ((tmp = fromDecimalCode(ch)) >= 0) { - if (tmp === 0) { - throwError(state, 'bad explicit indentation width of a block scalar; it cannot be less than one'); - } else if (!detectedIndent) { - textIndent = nodeIndent + tmp - 1; - detectedIndent = true; - } else { - throwError(state, 'repeat of an indentation width identifier'); - } +micromatch.braceExpand = (pattern, options) => { + if (typeof pattern !== 'string') throw new TypeError('Expected a string'); + return micromatch.braces(pattern, { ...options, expand: true }); +}; - } else { - break; - } - } +/** + * Expose micromatch + */ - if (is_WHITE_SPACE(ch)) { - do { ch = state.input.charCodeAt(++state.position); } - while (is_WHITE_SPACE(ch)); +// exposed for tests +micromatch.hasBraces = hasBraces; +module.exports = micromatch; - if (ch === 0x23/* # */) { - do { ch = state.input.charCodeAt(++state.position); } - while (!is_EOL(ch) && (ch !== 0)); - } - } - while (ch !== 0) { - readLineBreak(state); - state.lineIndent = 0; +/***/ }), - ch = state.input.charCodeAt(state.position); +/***/ 7338: +/***/ ((module) => { - while ((!detectedIndent || state.lineIndent < textIndent) && - (ch === 0x20/* Space */)) { - state.lineIndent++; - ch = state.input.charCodeAt(++state.position); - } - if (!detectedIndent && state.lineIndent > textIndent) { - textIndent = state.lineIndent; - } - if (is_EOL(ch)) { - emptyLines++; - continue; - } +const mimicFn = (to, from) => { + for (const prop of Reflect.ownKeys(from)) { + Object.defineProperty(to, prop, Object.getOwnPropertyDescriptor(from, prop)); + } - // End of the scalar. - if (state.lineIndent < textIndent) { + return to; +}; - // Perform the chomping. - if (chomping === CHOMPING_KEEP) { - state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines); - } else if (chomping === CHOMPING_CLIP) { - if (didReadContent) { // i.e. only if the scalar is not empty. - state.result += '\n'; - } - } +module.exports = mimicFn; +// TODO: Remove this for the next major release +module.exports["default"] = mimicFn; - // Break this `while` cycle and go to the funciton's epilogue. - break; - } - // Folded style: use fancy rules to handle line breaks. - if (folding) { +/***/ }), - // Lines starting with white space characters (more-indented lines) are not folded. - if (is_WHITE_SPACE(ch)) { - atMoreIndented = true; - // except for the first content line (cf. Example 8.1) - state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines); +/***/ 4876: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - // End of more-indented block. - } else if (atMoreIndented) { - atMoreIndented = false; - state.result += common.repeat('\n', emptyLines + 1); - // Just one line break - perceive as the same line. - } else if (emptyLines === 0) { - if (didReadContent) { // i.e. only if we have already read some scalar content. - state.result += ' '; - } +const path = __nccwpck_require__(6928); +const pathKey = __nccwpck_require__(4662); - // Several line breaks - perceive as different lines. - } else { - state.result += common.repeat('\n', emptyLines); - } +const npmRunPath = options => { + options = { + cwd: process.cwd(), + path: process.env[pathKey()], + execPath: process.execPath, + ...options + }; - // Literal style: just add exact number of line breaks between content lines. - } else { - // Keep all line breaks except the header line break. - state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines); - } + let previous; + let cwdPath = path.resolve(options.cwd); + const result = []; - didReadContent = true; - detectedIndent = true; - emptyLines = 0; - captureStart = state.position; + while (previous !== cwdPath) { + result.push(path.join(cwdPath, 'node_modules/.bin')); + previous = cwdPath; + cwdPath = path.resolve(cwdPath, '..'); + } - while (!is_EOL(ch) && (ch !== 0)) { - ch = state.input.charCodeAt(++state.position); - } + // Ensure the running `node` binary is used + const execPathDir = path.resolve(options.cwd, options.execPath, '..'); + result.push(execPathDir); - captureSegment(state, captureStart, state.position, false); - } + return result.concat(options.path).join(path.delimiter); +}; - return true; -} +module.exports = npmRunPath; +// TODO: Remove this for the next major release +module.exports["default"] = npmRunPath; -function readBlockSequence(state, nodeIndent) { - var _line, - _tag = state.tag, - _anchor = state.anchor, - _result = [], - following, - detected = false, - ch; +module.exports.env = options => { + options = { + env: process.env, + ...options + }; - if (state.anchor !== null) { - state.anchorMap[state.anchor] = _result; - } + const env = {...options.env}; + const path = pathKey({env}); - ch = state.input.charCodeAt(state.position); + options.path = env[path]; + env[path] = module.exports(options); - while (ch !== 0) { + return env; +}; - if (ch !== 0x2D/* - */) { - break; - } - following = state.input.charCodeAt(state.position + 1); +/***/ }), - if (!is_WS_OR_EOL(following)) { - break; - } +/***/ 7471: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - detected = true; - state.position++; - if (skipSeparationSpace(state, true, -1)) { - if (state.lineIndent <= nodeIndent) { - _result.push(null); - ch = state.input.charCodeAt(state.position); - continue; - } - } +const mimicFn = __nccwpck_require__(7338); - _line = state.line; - composeNode(state, nodeIndent, CONTEXT_BLOCK_IN, false, true); - _result.push(state.result); - skipSeparationSpace(state, true, -1); +const calledFunctions = new WeakMap(); - ch = state.input.charCodeAt(state.position); +const onetime = (function_, options = {}) => { + if (typeof function_ !== 'function') { + throw new TypeError('Expected a function'); + } - if ((state.line === _line || state.lineIndent > nodeIndent) && (ch !== 0)) { - throwError(state, 'bad indentation of a sequence entry'); - } else if (state.lineIndent < nodeIndent) { - break; - } - } + let returnValue; + let callCount = 0; + const functionName = function_.displayName || function_.name || ''; - if (detected) { - state.tag = _tag; - state.anchor = _anchor; - state.kind = 'sequence'; - state.result = _result; - return true; - } - return false; -} + const onetime = function (...arguments_) { + calledFunctions.set(onetime, ++callCount); -function readBlockMapping(state, nodeIndent, flowIndent) { - var following, - allowCompact, - _line, - _pos, - _tag = state.tag, - _anchor = state.anchor, - _result = {}, - overridableKeys = {}, - keyTag = null, - keyNode = null, - valueNode = null, - atExplicitKey = false, - detected = false, - ch; + if (callCount === 1) { + returnValue = function_.apply(this, arguments_); + function_ = null; + } else if (options.throw === true) { + throw new Error(`Function \`${functionName}\` can only be called once`); + } - if (state.anchor !== null) { - state.anchorMap[state.anchor] = _result; - } + return returnValue; + }; - ch = state.input.charCodeAt(state.position); + mimicFn(onetime, function_); + calledFunctions.set(onetime, callCount); - while (ch !== 0) { - following = state.input.charCodeAt(state.position + 1); - _line = state.line; // Save the current line. - _pos = state.position; + return onetime; +}; - // - // Explicit notation case. There are two separate blocks: - // first for the key (denoted by "?") and second for the value (denoted by ":") - // - if ((ch === 0x3F/* ? */ || ch === 0x3A/* : */) && is_WS_OR_EOL(following)) { +module.exports = onetime; +// TODO: Remove this for the next major release +module.exports["default"] = onetime; - if (ch === 0x3F/* ? */) { - if (atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null); - keyTag = keyNode = valueNode = null; - } +module.exports.callCount = function_ => { + if (!calledFunctions.has(function_)) { + throw new Error(`The given function \`${function_.name}\` is not wrapped by the \`onetime\` package`); + } - detected = true; - atExplicitKey = true; - allowCompact = true; + return calledFunctions.get(function_); +}; - } else if (atExplicitKey) { - // i.e. 0x3A/* : */ === character after the explicit key. - atExplicitKey = false; - allowCompact = true; - } else { - throwError(state, 'incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line'); - } +/***/ }), - state.position += 1; - ch = following; +/***/ 6374: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - // - // Implicit notation case. Flow-style node as the key first, then ":", and the value. - // - } else if (composeNode(state, flowIndent, CONTEXT_FLOW_OUT, false, true)) { - if (state.line === _line) { - ch = state.input.charCodeAt(state.position); +const pMap = __nccwpck_require__(4158); - while (is_WHITE_SPACE(ch)) { - ch = state.input.charCodeAt(++state.position); - } +const pFilter = async (iterable, filterer, options) => { + const values = await pMap( + iterable, + (element, index) => Promise.all([filterer(element, index), element]), + options + ); + return values.filter(value => Boolean(value[0])).map(value => value[1]); +}; - if (ch === 0x3A/* : */) { - ch = state.input.charCodeAt(++state.position); +module.exports = pFilter; +// TODO: Remove this for the next major release +module.exports["default"] = pFilter; - if (!is_WS_OR_EOL(ch)) { - throwError(state, 'a whitespace character is expected after the key-value separator within a block mapping'); - } - if (atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null); - keyTag = keyNode = valueNode = null; - } +/***/ }), - detected = true; - atExplicitKey = false; - allowCompact = false; - keyTag = state.tag; - keyNode = state.result; +/***/ 6854: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - } else if (detected) { - throwError(state, 'can not read an implicit mapping pair; a colon is missed'); - } else { - state.tag = _tag; - state.anchor = _anchor; - return true; // Keep the result of `composeNode`. - } +const pTry = __nccwpck_require__(7607); - } else if (detected) { - throwError(state, 'can not read a block mapping entry; a multiline key may not be an implicit key'); +const pLimit = concurrency => { + if (!((Number.isInteger(concurrency) || concurrency === Infinity) && concurrency > 0)) { + return Promise.reject(new TypeError('Expected `concurrency` to be a number from 1 and up')); + } - } else { - state.tag = _tag; - state.anchor = _anchor; - return true; // Keep the result of `composeNode`. - } + const queue = []; + let activeCount = 0; - } else { - break; // Reading is done. Go to the epilogue. - } + const next = () => { + activeCount--; - // - // Common reading code for both explicit and implicit notations. - // - if (state.line === _line || state.lineIndent > nodeIndent) { - if (composeNode(state, nodeIndent, CONTEXT_BLOCK_OUT, true, allowCompact)) { - if (atExplicitKey) { - keyNode = state.result; - } else { - valueNode = state.result; - } - } + if (queue.length > 0) { + queue.shift()(); + } + }; - if (!atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _line, _pos); - keyTag = keyNode = valueNode = null; - } + const run = (fn, resolve, ...args) => { + activeCount++; - skipSeparationSpace(state, true, -1); - ch = state.input.charCodeAt(state.position); - } + const result = pTry(fn, ...args); - if (state.lineIndent > nodeIndent && (ch !== 0)) { - throwError(state, 'bad indentation of a mapping entry'); - } else if (state.lineIndent < nodeIndent) { - break; - } - } + resolve(result); - // - // Epilogue. - // + result.then(next, next); + }; - // Special case: last mapping's node contains only the key in explicit notation. - if (atExplicitKey) { - storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null); - } + const enqueue = (fn, resolve, ...args) => { + if (activeCount < concurrency) { + run(fn, resolve, ...args); + } else { + queue.push(run.bind(null, fn, resolve, ...args)); + } + }; - // Expose the resulting mapping. - if (detected) { - state.tag = _tag; - state.anchor = _anchor; - state.kind = 'mapping'; - state.result = _result; - } + const generator = (fn, ...args) => new Promise(resolve => enqueue(fn, resolve, ...args)); + Object.defineProperties(generator, { + activeCount: { + get: () => activeCount + }, + pendingCount: { + get: () => queue.length + }, + clearQueue: { + value: () => { + queue.length = 0; + } + } + }); - return detected; -} + return generator; +}; -function readTagProperty(state) { - var _position, - isVerbatim = false, - isNamed = false, - tagHandle, - tagName, - ch; +module.exports = pLimit; +module.exports["default"] = pLimit; - ch = state.input.charCodeAt(state.position); - if (ch !== 0x21/* ! */) return false; +/***/ }), - if (state.tag !== null) { - throwError(state, 'duplication of a tag property'); - } +/***/ 4296: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - ch = state.input.charCodeAt(++state.position); - if (ch === 0x3C/* < */) { - isVerbatim = true; - ch = state.input.charCodeAt(++state.position); +const pLimit = __nccwpck_require__(6854); - } else if (ch === 0x21/* ! */) { - isNamed = true; - tagHandle = '!!'; - ch = state.input.charCodeAt(++state.position); +class EndError extends Error { + constructor(value) { + super(); + this.value = value; + } +} - } else { - tagHandle = '!'; - } +// The input can also be a promise, so we await it +const testElement = async (element, tester) => tester(await element); - _position = state.position; +// The input can also be a promise, so we `Promise.all()` them both +const finder = async element => { + const values = await Promise.all(element); + if (values[1] === true) { + throw new EndError(values[0]); + } - if (isVerbatim) { - do { ch = state.input.charCodeAt(++state.position); } - while (ch !== 0 && ch !== 0x3E/* > */); + return false; +}; - if (state.position < state.length) { - tagName = state.input.slice(_position, state.position); - ch = state.input.charCodeAt(++state.position); - } else { - throwError(state, 'unexpected end of the stream within a verbatim tag'); - } - } else { - while (ch !== 0 && !is_WS_OR_EOL(ch)) { +const pLocate = async (iterable, tester, options) => { + options = { + concurrency: Infinity, + preserveOrder: true, + ...options + }; - if (ch === 0x21/* ! */) { - if (!isNamed) { - tagHandle = state.input.slice(_position - 1, state.position + 1); + const limit = pLimit(options.concurrency); - if (!PATTERN_TAG_HANDLE.test(tagHandle)) { - throwError(state, 'named tag handle cannot contain such characters'); - } + // Start all the promises concurrently with optional limit + const items = [...iterable].map(element => [element, limit(testElement, element, tester)]); - isNamed = true; - _position = state.position + 1; - } else { - throwError(state, 'tag suffix cannot contain exclamation marks'); - } - } + // Check the promises either serially or concurrently + const checkLimit = pLimit(options.preserveOrder ? 1 : Infinity); - ch = state.input.charCodeAt(++state.position); - } + try { + await Promise.all(items.map(element => checkLimit(finder, element))); + } catch (error) { + if (error instanceof EndError) { + return error.value; + } - tagName = state.input.slice(_position, state.position); + throw error; + } +}; - if (PATTERN_FLOW_INDICATORS.test(tagName)) { - throwError(state, 'tag suffix cannot contain flow indicator characters'); - } - } +module.exports = pLocate; +// TODO: Remove this for the next major release +module.exports["default"] = pLocate; - if (tagName && !PATTERN_TAG_URI.test(tagName)) { - throwError(state, 'tag name cannot contain such characters: ' + tagName); - } - if (isVerbatim) { - state.tag = tagName; +/***/ }), - } else if (_hasOwnProperty.call(state.tagMap, tagHandle)) { - state.tag = state.tagMap[tagHandle] + tagName; +/***/ 4158: +/***/ ((module) => { - } else if (tagHandle === '!') { - state.tag = '!' + tagName; - } else if (tagHandle === '!!') { - state.tag = 'tag:yaml.org,2002:' + tagName; - } else { - throwError(state, 'undeclared tag handle "' + tagHandle + '"'); - } +const pMap = (iterable, mapper, options) => new Promise((resolve, reject) => { + options = Object.assign({ + concurrency: Infinity + }, options); - return true; -} + if (typeof mapper !== 'function') { + throw new TypeError('Mapper function is required'); + } -function readAnchorProperty(state) { - var _position, - ch; + const {concurrency} = options; - ch = state.input.charCodeAt(state.position); + if (!(typeof concurrency === 'number' && concurrency >= 1)) { + throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${concurrency}\` (${typeof concurrency})`); + } - if (ch !== 0x26/* & */) return false; + const ret = []; + const iterator = iterable[Symbol.iterator](); + let isRejected = false; + let isIterableDone = false; + let resolvingCount = 0; + let currentIndex = 0; - if (state.anchor !== null) { - throwError(state, 'duplication of an anchor property'); - } + const next = () => { + if (isRejected) { + return; + } - ch = state.input.charCodeAt(++state.position); - _position = state.position; + const nextItem = iterator.next(); + const i = currentIndex; + currentIndex++; - while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) { - ch = state.input.charCodeAt(++state.position); - } + if (nextItem.done) { + isIterableDone = true; - if (state.position === _position) { - throwError(state, 'name of an anchor node must contain at least one character'); - } + if (resolvingCount === 0) { + resolve(ret); + } - state.anchor = state.input.slice(_position, state.position); - return true; -} + return; + } -function readAlias(state) { - var _position, alias, - ch; + resolvingCount++; - ch = state.input.charCodeAt(state.position); + Promise.resolve(nextItem.value) + .then(element => mapper(element, i)) + .then( + value => { + ret[i] = value; + resolvingCount--; + next(); + }, + error => { + isRejected = true; + reject(error); + } + ); + }; - if (ch !== 0x2A/* * */) return false; + for (let i = 0; i < concurrency; i++) { + next(); - ch = state.input.charCodeAt(++state.position); - _position = state.position; + if (isIterableDone) { + break; + } + } +}); - while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) { - ch = state.input.charCodeAt(++state.position); - } +module.exports = pMap; +// TODO: Remove this for the next major release +module.exports["default"] = pMap; - if (state.position === _position) { - throwError(state, 'name of an alias node must contain at least one character'); - } - alias = state.input.slice(_position, state.position); +/***/ }), - if (!_hasOwnProperty.call(state.anchorMap, alias)) { - throwError(state, 'unidentified alias "' + alias + '"'); - } +/***/ 7607: +/***/ ((module) => { - state.result = state.anchorMap[alias]; - skipSeparationSpace(state, true, -1); - return true; -} -function composeNode(state, parentIndent, nodeContext, allowToSeek, allowCompact) { - var allowBlockStyles, - allowBlockScalars, - allowBlockCollections, - indentStatus = 1, // 1: this>parent, 0: this=parent, -1: this new Promise(resolve => { + resolve(fn(...arguments_)); +}); - state.tag = null; - state.anchor = null; - state.kind = null; - state.result = null; +module.exports = pTry; +// TODO: remove this in the next major version +module.exports["default"] = pTry; - allowBlockStyles = allowBlockScalars = allowBlockCollections = - CONTEXT_BLOCK_OUT === nodeContext || - CONTEXT_BLOCK_IN === nodeContext; - if (allowToSeek) { - if (skipSeparationSpace(state, true, -1)) { - atNewLine = true; +/***/ }), - if (state.lineIndent > parentIndent) { - indentStatus = 1; - } else if (state.lineIndent === parentIndent) { - indentStatus = 0; - } else if (state.lineIndent < parentIndent) { - indentStatus = -1; - } - } - } +/***/ 4219: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - if (indentStatus === 1) { - while (readTagProperty(state) || readAnchorProperty(state)) { - if (skipSeparationSpace(state, true, -1)) { - atNewLine = true; - allowBlockCollections = allowBlockStyles; - if (state.lineIndent > parentIndent) { - indentStatus = 1; - } else if (state.lineIndent === parentIndent) { - indentStatus = 0; - } else if (state.lineIndent < parentIndent) { - indentStatus = -1; - } - } else { - allowBlockCollections = false; - } - } - } +const fs = __nccwpck_require__(9896); +const {promisify} = __nccwpck_require__(9023); - if (allowBlockCollections) { - allowBlockCollections = atNewLine || allowCompact; - } +const pAccess = promisify(fs.access); - if (indentStatus === 1 || CONTEXT_BLOCK_OUT === nodeContext) { - if (CONTEXT_FLOW_IN === nodeContext || CONTEXT_FLOW_OUT === nodeContext) { - flowIndent = parentIndent; - } else { - flowIndent = parentIndent + 1; - } +module.exports = async path => { + try { + await pAccess(path); + return true; + } catch (_) { + return false; + } +}; - blockIndent = state.position - state.lineStart; +module.exports.sync = path => { + try { + fs.accessSync(path); + return true; + } catch (_) { + return false; + } +}; - if (indentStatus === 1) { - if (allowBlockCollections && - (readBlockSequence(state, blockIndent) || - readBlockMapping(state, blockIndent, flowIndent)) || - readFlowCollection(state, flowIndent)) { - hasContent = true; - } else { - if ((allowBlockScalars && readBlockScalar(state, flowIndent)) || - readSingleQuotedScalar(state, flowIndent) || - readDoubleQuotedScalar(state, flowIndent)) { - hasContent = true; - } else if (readAlias(state)) { - hasContent = true; +/***/ }), - if (state.tag !== null || state.anchor !== null) { - throwError(state, 'alias node should not have any properties'); - } +/***/ 4662: +/***/ ((module) => { - } else if (readPlainScalar(state, flowIndent, CONTEXT_FLOW_IN === nodeContext)) { - hasContent = true; - if (state.tag === null) { - state.tag = '?'; - } - } - if (state.anchor !== null) { - state.anchorMap[state.anchor] = state.result; - } - } - } else if (indentStatus === 0) { - // Special case: block sequences are allowed to have same indentation level as the parent. - // http://www.yaml.org/spec/1.2/spec.html#id2799784 - hasContent = allowBlockCollections && readBlockSequence(state, blockIndent); - } - } +const pathKey = (options = {}) => { + const environment = options.env || process.env; + const platform = options.platform || process.platform; - if (state.tag !== null && state.tag !== '!') { - if (state.tag === '?') { - // Implicit resolving is not allowed for non-scalar types, and '?' - // non-specific tag is only automatically assigned to plain scalars. - // - // We only need to check kind conformity in case user explicitly assigns '?' - // tag, for example like this: "! [0]" - // - if (state.result !== null && state.kind !== 'scalar') { - throwError(state, 'unacceptable node kind for ! tag; it should be "scalar", not "' + state.kind + '"'); - } + if (platform !== 'win32') { + return 'PATH'; + } - for (typeIndex = 0, typeQuantity = state.implicitTypes.length; typeIndex < typeQuantity; typeIndex += 1) { - type = state.implicitTypes[typeIndex]; + return Object.keys(environment).reverse().find(key => key.toUpperCase() === 'PATH') || 'Path'; +}; + +module.exports = pathKey; +// TODO: Remove this for the next major release +module.exports["default"] = pathKey; - if (type.resolve(state.result)) { // `state.result` updated in resolver if matched - state.result = type.construct(state.result); - state.tag = type.tag; - if (state.anchor !== null) { - state.anchorMap[state.anchor] = state.result; - } - break; - } - } - } else if (_hasOwnProperty.call(state.typeMap[state.kind || 'fallback'], state.tag)) { - type = state.typeMap[state.kind || 'fallback'][state.tag]; - if (state.result !== null && type.kind !== state.kind) { - throwError(state, 'unacceptable node kind for !<' + state.tag + '> tag; it should be "' + type.kind + '", not "' + state.kind + '"'); - } +/***/ }), - if (!type.resolve(state.result)) { // `state.result` updated in resolver if matched - throwError(state, 'cannot resolve a node with !<' + state.tag + '> explicit tag'); - } else { - state.result = type.construct(state.result); - if (state.anchor !== null) { - state.anchorMap[state.anchor] = state.result; - } - } - } else { - throwError(state, 'unknown tag !<' + state.tag + '>'); - } - } +/***/ 3051: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - if (state.listener !== null) { - state.listener('close', state); - } - return state.tag !== null || state.anchor !== null || hasContent; -} -function readDocument(state) { - var documentStart = state.position, - _position, - directiveName, - directiveArgs, - hasDirectives = false, - ch; +const {promisify} = __nccwpck_require__(9023); +const fs = __nccwpck_require__(9896); - state.version = null; - state.checkLineBreaks = state.legacy; - state.tagMap = {}; - state.anchorMap = {}; +async function isType(fsStatType, statsMethodName, filePath) { + if (typeof filePath !== 'string') { + throw new TypeError(`Expected a string, got ${typeof filePath}`); + } - while ((ch = state.input.charCodeAt(state.position)) !== 0) { - skipSeparationSpace(state, true, -1); + try { + const stats = await promisify(fs[fsStatType])(filePath); + return stats[statsMethodName](); + } catch (error) { + if (error.code === 'ENOENT') { + return false; + } - ch = state.input.charCodeAt(state.position); + throw error; + } +} - if (state.lineIndent > 0 || ch !== 0x25/* % */) { - break; - } +function isTypeSync(fsStatType, statsMethodName, filePath) { + if (typeof filePath !== 'string') { + throw new TypeError(`Expected a string, got ${typeof filePath}`); + } - hasDirectives = true; - ch = state.input.charCodeAt(++state.position); - _position = state.position; + try { + return fs[fsStatType](filePath)[statsMethodName](); + } catch (error) { + if (error.code === 'ENOENT') { + return false; + } - while (ch !== 0 && !is_WS_OR_EOL(ch)) { - ch = state.input.charCodeAt(++state.position); - } + throw error; + } +} - directiveName = state.input.slice(_position, state.position); - directiveArgs = []; +exports.isFile = isType.bind(null, 'stat', 'isFile'); +exports.isDirectory = isType.bind(null, 'stat', 'isDirectory'); +exports.isSymlink = isType.bind(null, 'lstat', 'isSymbolicLink'); +exports.isFileSync = isTypeSync.bind(null, 'statSync', 'isFile'); +exports.isDirectorySync = isTypeSync.bind(null, 'statSync', 'isDirectory'); +exports.isSymlinkSync = isTypeSync.bind(null, 'lstatSync', 'isSymbolicLink'); - if (directiveName.length < 1) { - throwError(state, 'directive name must not be less than one character in length'); - } - while (ch !== 0) { - while (is_WHITE_SPACE(ch)) { - ch = state.input.charCodeAt(++state.position); - } +/***/ }), - if (ch === 0x23/* # */) { - do { ch = state.input.charCodeAt(++state.position); } - while (ch !== 0 && !is_EOL(ch)); - break; - } +/***/ 6831: +/***/ ((module) => { - if (is_EOL(ch)) break; +let p = process || {}, argv = p.argv || [], env = p.env || {} +let isColorSupported = + !(!!env.NO_COLOR || argv.includes("--no-color")) && + (!!env.FORCE_COLOR || argv.includes("--color") || p.platform === "win32" || ((p.stdout || {}).isTTY && env.TERM !== "dumb") || !!env.CI) - _position = state.position; +let formatter = (open, close, replace = open) => + input => { + let string = "" + input, index = string.indexOf(close, open.length) + return ~index ? open + replaceClose(string, close, replace, index) + close : open + string + close + } - while (ch !== 0 && !is_WS_OR_EOL(ch)) { - ch = state.input.charCodeAt(++state.position); - } +let replaceClose = (string, close, replace, index) => { + let result = "", cursor = 0 + do { + result += string.substring(cursor, index) + replace + cursor = index + close.length + index = string.indexOf(close, cursor) + } while (~index) + return result + string.substring(cursor) +} - directiveArgs.push(state.input.slice(_position, state.position)); - } +let createColors = (enabled = isColorSupported) => { + let f = enabled ? formatter : () => String + return { + isColorSupported: enabled, + reset: f("\x1b[0m", "\x1b[0m"), + bold: f("\x1b[1m", "\x1b[22m", "\x1b[22m\x1b[1m"), + dim: f("\x1b[2m", "\x1b[22m", "\x1b[22m\x1b[2m"), + italic: f("\x1b[3m", "\x1b[23m"), + underline: f("\x1b[4m", "\x1b[24m"), + inverse: f("\x1b[7m", "\x1b[27m"), + hidden: f("\x1b[8m", "\x1b[28m"), + strikethrough: f("\x1b[9m", "\x1b[29m"), - if (ch !== 0) readLineBreak(state); + black: f("\x1b[30m", "\x1b[39m"), + red: f("\x1b[31m", "\x1b[39m"), + green: f("\x1b[32m", "\x1b[39m"), + yellow: f("\x1b[33m", "\x1b[39m"), + blue: f("\x1b[34m", "\x1b[39m"), + magenta: f("\x1b[35m", "\x1b[39m"), + cyan: f("\x1b[36m", "\x1b[39m"), + white: f("\x1b[37m", "\x1b[39m"), + gray: f("\x1b[90m", "\x1b[39m"), - if (_hasOwnProperty.call(directiveHandlers, directiveName)) { - directiveHandlers[directiveName](state, directiveName, directiveArgs); - } else { - throwWarning(state, 'unknown document directive "' + directiveName + '"'); - } - } + bgBlack: f("\x1b[40m", "\x1b[49m"), + bgRed: f("\x1b[41m", "\x1b[49m"), + bgGreen: f("\x1b[42m", "\x1b[49m"), + bgYellow: f("\x1b[43m", "\x1b[49m"), + bgBlue: f("\x1b[44m", "\x1b[49m"), + bgMagenta: f("\x1b[45m", "\x1b[49m"), + bgCyan: f("\x1b[46m", "\x1b[49m"), + bgWhite: f("\x1b[47m", "\x1b[49m"), - skipSeparationSpace(state, true, -1); + blackBright: f("\x1b[90m", "\x1b[39m"), + redBright: f("\x1b[91m", "\x1b[39m"), + greenBright: f("\x1b[92m", "\x1b[39m"), + yellowBright: f("\x1b[93m", "\x1b[39m"), + blueBright: f("\x1b[94m", "\x1b[39m"), + magentaBright: f("\x1b[95m", "\x1b[39m"), + cyanBright: f("\x1b[96m", "\x1b[39m"), + whiteBright: f("\x1b[97m", "\x1b[39m"), - if (state.lineIndent === 0 && - state.input.charCodeAt(state.position) === 0x2D/* - */ && - state.input.charCodeAt(state.position + 1) === 0x2D/* - */ && - state.input.charCodeAt(state.position + 2) === 0x2D/* - */) { - state.position += 3; - skipSeparationSpace(state, true, -1); + bgBlackBright: f("\x1b[100m", "\x1b[49m"), + bgRedBright: f("\x1b[101m", "\x1b[49m"), + bgGreenBright: f("\x1b[102m", "\x1b[49m"), + bgYellowBright: f("\x1b[103m", "\x1b[49m"), + bgBlueBright: f("\x1b[104m", "\x1b[49m"), + bgMagentaBright: f("\x1b[105m", "\x1b[49m"), + bgCyanBright: f("\x1b[106m", "\x1b[49m"), + bgWhiteBright: f("\x1b[107m", "\x1b[49m"), + } +} - } else if (hasDirectives) { - throwError(state, 'directives end mark is expected'); - } +module.exports = createColors() +module.exports.createColors = createColors - composeNode(state, state.lineIndent - 1, CONTEXT_BLOCK_OUT, false, true); - skipSeparationSpace(state, true, -1); - if (state.checkLineBreaks && - PATTERN_NON_ASCII_LINE_BREAKS.test(state.input.slice(documentStart, state.position))) { - throwWarning(state, 'non-ASCII line breaks are interpreted as content'); - } +/***/ }), - state.documents.push(state.result); +/***/ 3268: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - if (state.position === state.lineStart && testDocumentSeparator(state)) { - if (state.input.charCodeAt(state.position) === 0x2E/* . */) { - state.position += 3; - skipSeparationSpace(state, true, -1); - } - return; - } - if (state.position < (state.length - 1)) { - throwError(state, 'end of the stream or a document separator is expected'); - } else { - return; - } -} +module.exports = __nccwpck_require__(1614); -function loadDocuments(input, options) { - input = String(input); - options = options || {}; +/***/ }), - if (input.length !== 0) { +/***/ 1237: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - // Add tailing `\n` if not exists - if (input.charCodeAt(input.length - 1) !== 0x0A/* LF */ && - input.charCodeAt(input.length - 1) !== 0x0D/* CR */) { - input += '\n'; - } - // Strip BOM - if (input.charCodeAt(0) === 0xFEFF) { - input = input.slice(1); - } - } - var state = new State(input, options); +const path = __nccwpck_require__(6928); +const WIN_SLASH = '\\\\/'; +const WIN_NO_SLASH = `[^${WIN_SLASH}]`; - var nullpos = input.indexOf('\0'); +const DEFAULT_MAX_EXTGLOB_RECURSION = 0; - if (nullpos !== -1) { - state.position = nullpos; - throwError(state, 'null byte is not allowed in input'); - } +/** + * Posix glob regex + */ - // Use 0 as string terminator. That significantly simplifies bounds check. - state.input += '\0'; +const DOT_LITERAL = '\\.'; +const PLUS_LITERAL = '\\+'; +const QMARK_LITERAL = '\\?'; +const SLASH_LITERAL = '\\/'; +const ONE_CHAR = '(?=.)'; +const QMARK = '[^/]'; +const END_ANCHOR = `(?:${SLASH_LITERAL}|$)`; +const START_ANCHOR = `(?:^|${SLASH_LITERAL})`; +const DOTS_SLASH = `${DOT_LITERAL}{1,2}${END_ANCHOR}`; +const NO_DOT = `(?!${DOT_LITERAL})`; +const NO_DOTS = `(?!${START_ANCHOR}${DOTS_SLASH})`; +const NO_DOT_SLASH = `(?!${DOT_LITERAL}{0,1}${END_ANCHOR})`; +const NO_DOTS_SLASH = `(?!${DOTS_SLASH})`; +const QMARK_NO_DOT = `[^.${SLASH_LITERAL}]`; +const STAR = `${QMARK}*?`; - while (state.input.charCodeAt(state.position) === 0x20/* Space */) { - state.lineIndent += 1; - state.position += 1; - } +const POSIX_CHARS = { + DOT_LITERAL, + PLUS_LITERAL, + QMARK_LITERAL, + SLASH_LITERAL, + ONE_CHAR, + QMARK, + END_ANCHOR, + DOTS_SLASH, + NO_DOT, + NO_DOTS, + NO_DOT_SLASH, + NO_DOTS_SLASH, + QMARK_NO_DOT, + STAR, + START_ANCHOR +}; - while (state.position < (state.length - 1)) { - readDocument(state); - } +/** + * Windows glob regex + */ - return state.documents; -} +const WINDOWS_CHARS = { + ...POSIX_CHARS, + SLASH_LITERAL: `[${WIN_SLASH}]`, + QMARK: WIN_NO_SLASH, + STAR: `${WIN_NO_SLASH}*?`, + DOTS_SLASH: `${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$)`, + NO_DOT: `(?!${DOT_LITERAL})`, + NO_DOTS: `(?!(?:^|[${WIN_SLASH}])${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`, + NO_DOT_SLASH: `(?!${DOT_LITERAL}{0,1}(?:[${WIN_SLASH}]|$))`, + NO_DOTS_SLASH: `(?!${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`, + QMARK_NO_DOT: `[^.${WIN_SLASH}]`, + START_ANCHOR: `(?:^|[${WIN_SLASH}])`, + END_ANCHOR: `(?:[${WIN_SLASH}]|$)` +}; -function loadAll(input, iterator, options) { - if (iterator !== null && typeof iterator === 'object' && typeof options === 'undefined') { - options = iterator; - iterator = null; - } +/** + * POSIX Bracket Regex + */ - var documents = loadDocuments(input, options); +const POSIX_REGEX_SOURCE = { + __proto__: null, + alnum: 'a-zA-Z0-9', + alpha: 'a-zA-Z', + ascii: '\\x00-\\x7F', + blank: ' \\t', + cntrl: '\\x00-\\x1F\\x7F', + digit: '0-9', + graph: '\\x21-\\x7E', + lower: 'a-z', + print: '\\x20-\\x7E ', + punct: '\\-!"#$%&\'()\\*+,./:;<=>?@[\\]^_`{|}~', + space: ' \\t\\r\\n\\v\\f', + upper: 'A-Z', + word: 'A-Za-z0-9_', + xdigit: 'A-Fa-f0-9' +}; - if (typeof iterator !== 'function') { - return documents; - } +module.exports = { + DEFAULT_MAX_EXTGLOB_RECURSION, + MAX_LENGTH: 1024 * 64, + POSIX_REGEX_SOURCE, - for (var index = 0, length = documents.length; index < length; index += 1) { - iterator(documents[index]); - } -} + // regular expressions + REGEX_BACKSLASH: /\\(?![*+?^${}(|)[\]])/g, + REGEX_NON_SPECIAL_CHARS: /^[^@![\].,$*+?^{}()|\\/]+/, + REGEX_SPECIAL_CHARS: /[-*+?.^${}(|)[\]]/, + REGEX_SPECIAL_CHARS_BACKREF: /(\\?)((\W)(\3*))/g, + REGEX_SPECIAL_CHARS_GLOBAL: /([-*+?.^${}(|)[\]])/g, + REGEX_REMOVE_BACKSLASH: /(?:\[.*?[^\\]\]|\\(?=.))/g, + // Replace globs with equivalent patterns to reduce parsing time. + REPLACEMENTS: { + __proto__: null, + '***': '*', + '**/**': '**', + '**/**/**': '**' + }, -function load(input, options) { - var documents = loadDocuments(input, options); + // Digits + CHAR_0: 48, /* 0 */ + CHAR_9: 57, /* 9 */ - if (documents.length === 0) { - /*eslint-disable no-undefined*/ - return undefined; - } else if (documents.length === 1) { - return documents[0]; - } - throw new YAMLException('expected a single document in the stream, but found more'); -} + // Alphabet chars. + CHAR_UPPERCASE_A: 65, /* A */ + CHAR_LOWERCASE_A: 97, /* a */ + CHAR_UPPERCASE_Z: 90, /* Z */ + CHAR_LOWERCASE_Z: 122, /* z */ + CHAR_LEFT_PARENTHESES: 40, /* ( */ + CHAR_RIGHT_PARENTHESES: 41, /* ) */ -function safeLoadAll(input, iterator, options) { - if (typeof iterator === 'object' && iterator !== null && typeof options === 'undefined') { - options = iterator; - iterator = null; - } + CHAR_ASTERISK: 42, /* * */ - return loadAll(input, iterator, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); -} + // Non-alphabetic chars. + CHAR_AMPERSAND: 38, /* & */ + CHAR_AT: 64, /* @ */ + CHAR_BACKWARD_SLASH: 92, /* \ */ + CHAR_CARRIAGE_RETURN: 13, /* \r */ + CHAR_CIRCUMFLEX_ACCENT: 94, /* ^ */ + CHAR_COLON: 58, /* : */ + CHAR_COMMA: 44, /* , */ + CHAR_DOT: 46, /* . */ + CHAR_DOUBLE_QUOTE: 34, /* " */ + CHAR_EQUAL: 61, /* = */ + CHAR_EXCLAMATION_MARK: 33, /* ! */ + CHAR_FORM_FEED: 12, /* \f */ + CHAR_FORWARD_SLASH: 47, /* / */ + CHAR_GRAVE_ACCENT: 96, /* ` */ + CHAR_HASH: 35, /* # */ + CHAR_HYPHEN_MINUS: 45, /* - */ + CHAR_LEFT_ANGLE_BRACKET: 60, /* < */ + CHAR_LEFT_CURLY_BRACE: 123, /* { */ + CHAR_LEFT_SQUARE_BRACKET: 91, /* [ */ + CHAR_LINE_FEED: 10, /* \n */ + CHAR_NO_BREAK_SPACE: 160, /* \u00A0 */ + CHAR_PERCENT: 37, /* % */ + CHAR_PLUS: 43, /* + */ + CHAR_QUESTION_MARK: 63, /* ? */ + CHAR_RIGHT_ANGLE_BRACKET: 62, /* > */ + CHAR_RIGHT_CURLY_BRACE: 125, /* } */ + CHAR_RIGHT_SQUARE_BRACKET: 93, /* ] */ + CHAR_SEMICOLON: 59, /* ; */ + CHAR_SINGLE_QUOTE: 39, /* ' */ + CHAR_SPACE: 32, /* */ + CHAR_TAB: 9, /* \t */ + CHAR_UNDERSCORE: 95, /* _ */ + CHAR_VERTICAL_LINE: 124, /* | */ + CHAR_ZERO_WIDTH_NOBREAK_SPACE: 65279, /* \uFEFF */ + SEP: path.sep, -function safeLoad(input, options) { - return load(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); -} + /** + * Create EXTGLOB_CHARS + */ + + extglobChars(chars) { + return { + '!': { type: 'negate', open: '(?:(?!(?:', close: `))${chars.STAR})` }, + '?': { type: 'qmark', open: '(?:', close: ')?' }, + '+': { type: 'plus', open: '(?:', close: ')+' }, + '*': { type: 'star', open: '(?:', close: ')*' }, + '@': { type: 'at', open: '(?:', close: ')' } + }; + }, + /** + * Create GLOB_CHARS + */ -module.exports.loadAll = loadAll; -module.exports.load = load; -module.exports.safeLoadAll = safeLoadAll; -module.exports.safeLoad = safeLoad; + globChars(win32) { + return win32 === true ? WINDOWS_CHARS : POSIX_CHARS; + } +}; /***/ }), -/***/ 34955: +/***/ 51: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +const constants = __nccwpck_require__(1237); +const utils = __nccwpck_require__(3753); + +/** + * Constants + */ + +const { + MAX_LENGTH, + POSIX_REGEX_SOURCE, + REGEX_NON_SPECIAL_CHARS, + REGEX_SPECIAL_CHARS_BACKREF, + REPLACEMENTS +} = constants; + +/** + * Helpers + */ -var common = __nccwpck_require__(31127); +const expandRange = (args, options) => { + if (typeof options.expandRange === 'function') { + return options.expandRange(...args, options); + } + args.sort(); + const value = `[${args.join('-')}]`; -function Mark(name, buffer, position, line, column) { - this.name = name; - this.buffer = buffer; - this.position = position; - this.line = line; - this.column = column; -} + try { + /* eslint-disable-next-line no-new */ + new RegExp(value); + } catch (ex) { + return args.map(v => utils.escapeRegex(v)).join('..'); + } + return value; +}; -Mark.prototype.getSnippet = function getSnippet(indent, maxLength) { - var head, start, tail, end, snippet; +/** + * Create the message for a syntax error + */ - if (!this.buffer) return null; +const syntaxError = (type, char) => { + return `Missing ${type}: "${char}" - use "\\\\${char}" to match literal characters`; +}; - indent = indent || 4; - maxLength = maxLength || 75; +const splitTopLevel = input => { + const parts = []; + let bracket = 0; + let paren = 0; + let quote = 0; + let value = ''; + let escaped = false; + + for (const ch of input) { + if (escaped === true) { + value += ch; + escaped = false; + continue; + } - head = ''; - start = this.position; + if (ch === '\\') { + value += ch; + escaped = true; + continue; + } - while (start > 0 && '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(start - 1)) === -1) { - start -= 1; - if (this.position - start > (maxLength / 2 - 1)) { - head = ' ... '; - start += 5; - break; + if (ch === '"') { + quote = quote === 1 ? 0 : 1; + value += ch; + continue; + } + + if (quote === 0) { + if (ch === '[') { + bracket++; + } else if (ch === ']' && bracket > 0) { + bracket--; + } else if (bracket === 0) { + if (ch === '(') { + paren++; + } else if (ch === ')' && paren > 0) { + paren--; + } else if (ch === '|' && paren === 0) { + parts.push(value); + value = ''; + continue; + } + } } + + value += ch; } - tail = ''; - end = this.position; + parts.push(value); + return parts; +}; - while (end < this.buffer.length && '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(end)) === -1) { - end += 1; - if (end - this.position > (maxLength / 2 - 1)) { - tail = ' ... '; - end -= 5; - break; +const isPlainBranch = branch => { + let escaped = false; + + for (const ch of branch) { + if (escaped === true) { + escaped = false; + continue; } - } - snippet = this.buffer.slice(start, end); + if (ch === '\\') { + escaped = true; + continue; + } - return common.repeat(' ', indent) + head + snippet + tail + '\n' + - common.repeat(' ', indent + this.position - start + head.length) + '^'; + if (/[?*+@!()[\]{}]/.test(ch)) { + return false; + } + } + + return true; }; +const normalizeSimpleBranch = branch => { + let value = branch.trim(); + let changed = true; -Mark.prototype.toString = function toString(compact) { - var snippet, where = ''; + while (changed === true) { + changed = false; - if (this.name) { - where += 'in "' + this.name + '" '; + if (/^@\([^\\()[\]{}|]+\)$/.test(value)) { + value = value.slice(2, -1); + changed = true; + } } - where += 'at line ' + (this.line + 1) + ', column ' + (this.column + 1); + if (!isPlainBranch(value)) { + return; + } - if (!compact) { - snippet = this.getSnippet(); + return value.replace(/\\(.)/g, '$1'); +}; - if (snippet) { - where += ':\n' + snippet; +const hasRepeatedCharPrefixOverlap = branches => { + const values = branches.map(normalizeSimpleBranch).filter(Boolean); + + for (let i = 0; i < values.length; i++) { + for (let j = i + 1; j < values.length; j++) { + const a = values[i]; + const b = values[j]; + const char = a[0]; + + if (!char || a !== char.repeat(a.length) || b !== char.repeat(b.length)) { + continue; + } + + if (a === b || a.startsWith(b) || b.startsWith(a)) { + return true; + } } } - return where; + return false; }; +const parseRepeatedExtglob = (pattern, requireEnd = true) => { + if ((pattern[0] !== '+' && pattern[0] !== '*') || pattern[1] !== '(') { + return; + } -module.exports = Mark; + let bracket = 0; + let paren = 0; + let quote = 0; + let escaped = false; + for (let i = 1; i < pattern.length; i++) { + const ch = pattern[i]; -/***/ }), + if (escaped === true) { + escaped = false; + continue; + } -/***/ 15229: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if (ch === '\\') { + escaped = true; + continue; + } + + if (ch === '"') { + quote = quote === 1 ? 0 : 1; + continue; + } + if (quote === 1) { + continue; + } + if (ch === '[') { + bracket++; + continue; + } -/*eslint-disable max-len*/ + if (ch === ']' && bracket > 0) { + bracket--; + continue; + } -var common = __nccwpck_require__(31127); -var YAMLException = __nccwpck_require__(51517); -var Type = __nccwpck_require__(2346); + if (bracket > 0) { + continue; + } + if (ch === '(') { + paren++; + continue; + } -function compileList(schema, name, result) { - var exclude = []; + if (ch === ')') { + paren--; - schema.include.forEach(function (includedSchema) { - result = compileList(includedSchema, name, result); - }); + if (paren === 0) { + if (requireEnd === true && i !== pattern.length - 1) { + return; + } - schema[name].forEach(function (currentType) { - result.forEach(function (previousType, previousIndex) { - if (previousType.tag === currentType.tag && previousType.kind === currentType.kind) { - exclude.push(previousIndex); + return { + type: pattern[0], + body: pattern.slice(2, i), + end: i + }; } - }); + } + } +}; - result.push(currentType); - }); +const getStarExtglobSequenceOutput = pattern => { + let index = 0; + const chars = []; - return result.filter(function (type, index) { - return exclude.indexOf(index) === -1; - }); -} + while (index < pattern.length) { + const match = parseRepeatedExtglob(pattern.slice(index), false); + if (!match || match.type !== '*') { + return; + } -function compileMap(/* lists... */) { - var result = { - scalar: {}, - sequence: {}, - mapping: {}, - fallback: {} - }, index, length; + const branches = splitTopLevel(match.body).map(branch => branch.trim()); + if (branches.length !== 1) { + return; + } - function collectType(type) { - result[type.kind][type.tag] = result['fallback'][type.tag] = type; + const branch = normalizeSimpleBranch(branches[0]); + if (!branch || branch.length !== 1) { + return; + } + + chars.push(branch); + index += match.end + 1; } - for (index = 0, length = arguments.length; index < length; index += 1) { - arguments[index].forEach(collectType); + if (chars.length < 1) { + return; } - return result; -} + const source = chars.length === 1 + ? utils.escapeRegex(chars[0]) + : `[${chars.map(ch => utils.escapeRegex(ch)).join('')}]`; -function Schema(definition) { - this.include = definition.include || []; - this.implicit = definition.implicit || []; - this.explicit = definition.explicit || []; + return `${source}*`; +}; - this.implicit.forEach(function (type) { - if (type.loadKind && type.loadKind !== 'scalar') { - throw new YAMLException('There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.'); - } - }); +const repeatedExtglobRecursion = pattern => { + let depth = 0; + let value = pattern.trim(); + let match = parseRepeatedExtglob(value); - this.compiledImplicit = compileList(this, 'implicit', []); - this.compiledExplicit = compileList(this, 'explicit', []); - this.compiledTypeMap = compileMap(this.compiledImplicit, this.compiledExplicit); -} + while (match) { + depth++; + value = match.body.trim(); + match = parseRepeatedExtglob(value); + } + return depth; +}; -Schema.DEFAULT = null; +const analyzeRepeatedExtglob = (body, options) => { + if (options.maxExtglobRecursion === false) { + return { risky: false }; + } + const max = + typeof options.maxExtglobRecursion === 'number' + ? options.maxExtglobRecursion + : constants.DEFAULT_MAX_EXTGLOB_RECURSION; -Schema.create = function createSchema() { - var schemas, types; + const branches = splitTopLevel(body).map(branch => branch.trim()); - switch (arguments.length) { - case 1: - schemas = Schema.DEFAULT; - types = arguments[0]; - break; + if (branches.length > 1) { + if ( + branches.some(branch => branch === '') || + branches.some(branch => /^[*?]+$/.test(branch)) || + hasRepeatedCharPrefixOverlap(branches) + ) { + return { risky: true }; + } + } - case 2: - schemas = arguments[0]; - types = arguments[1]; - break; + for (const branch of branches) { + const safeOutput = getStarExtglobSequenceOutput(branch); + if (safeOutput) { + return { risky: true, safeOutput }; + } - default: - throw new YAMLException('Wrong number of arguments for Schema.create function'); + if (repeatedExtglobRecursion(branch) > max) { + return { risky: true }; + } } - schemas = common.toArray(schemas); - types = common.toArray(types); + return { risky: false }; +}; - if (!schemas.every(function (schema) { return schema instanceof Schema; })) { - throw new YAMLException('Specified list of super schemas (or a single Schema object) contains a non-Schema object.'); +/** + * Parse the given input string. + * @param {String} input + * @param {Object} options + * @return {Object} + */ + +const parse = (input, options) => { + if (typeof input !== 'string') { + throw new TypeError('Expected a string'); } - if (!types.every(function (type) { return type instanceof Type; })) { - throw new YAMLException('Specified list of YAML types (or a single Type object) contains a non-Type object.'); + input = REPLACEMENTS[input] || input; + + const opts = { ...options }; + const max = typeof opts.maxLength === 'number' ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH; + + let len = input.length; + if (len > max) { + throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`); } - return new Schema({ - include: schemas, - explicit: types - }); -}; + const bos = { type: 'bos', value: '', output: opts.prepend || '' }; + const tokens = [bos]; + + const capture = opts.capture ? '' : '?:'; + const win32 = utils.isWindows(options); + // create constants based on platform, for windows or posix + const PLATFORM_CHARS = constants.globChars(win32); + const EXTGLOB_CHARS = constants.extglobChars(PLATFORM_CHARS); -module.exports = Schema; + const { + DOT_LITERAL, + PLUS_LITERAL, + SLASH_LITERAL, + ONE_CHAR, + DOTS_SLASH, + NO_DOT, + NO_DOT_SLASH, + NO_DOTS_SLASH, + QMARK, + QMARK_NO_DOT, + STAR, + START_ANCHOR + } = PLATFORM_CHARS; + const globstar = opts => { + return `(${capture}(?:(?!${START_ANCHOR}${opts.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`; + }; -/***/ }), + const nodot = opts.dot ? '' : NO_DOT; + const qmarkNoDot = opts.dot ? QMARK : QMARK_NO_DOT; + let star = opts.bash === true ? globstar(opts) : STAR; -/***/ 19323: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if (opts.capture) { + star = `(${star})`; + } -// Standard YAML's Core schema. -// http://www.yaml.org/spec/1.2/spec.html#id2804923 -// -// NOTE: JS-YAML does not support schema-specific tag resolution restrictions. -// So, Core schema has no distinctions from JSON schema is JS-YAML. + // minimatch options support + if (typeof opts.noext === 'boolean') { + opts.noextglob = opts.noext; + } + + const state = { + input, + index: -1, + start: 0, + dot: opts.dot === true, + consumed: '', + output: '', + prefix: '', + backtrack: false, + negated: false, + brackets: 0, + braces: 0, + parens: 0, + quotes: 0, + globstar: false, + tokens + }; + + input = utils.removePrefix(input, state); + len = input.length; + const extglobs = []; + const braces = []; + const stack = []; + let prev = bos; + let value; + /** + * Tokenizing helpers + */ + const eos = () => state.index === len - 1; + const peek = state.peek = (n = 1) => input[state.index + n]; + const advance = state.advance = () => input[++state.index] || ''; + const remaining = () => input.slice(state.index + 1); + const consume = (value = '', num = 0) => { + state.consumed += value; + state.index += num; + }; + const append = token => { + state.output += token.output != null ? token.output : token.value; + consume(token.value); + }; -var Schema = __nccwpck_require__(15229); + const negate = () => { + let count = 1; + while (peek() === '!' && (peek(2) !== '(' || peek(3) === '?')) { + advance(); + state.start++; + count++; + } -module.exports = new Schema({ - include: [ - __nccwpck_require__(10606) - ] -}); + if (count % 2 === 0) { + return false; + } + state.negated = true; + state.start++; + return true; + }; -/***/ }), + const increment = type => { + state[type]++; + stack.push(type); + }; -/***/ 55067: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + const decrement = type => { + state[type]--; + stack.pop(); + }; -// JS-YAML's default schema for `load` function. -// It is not described in the YAML specification. -// -// This schema is based on JS-YAML's default safe schema and includes -// JavaScript-specific types: !!js/undefined, !!js/regexp and !!js/function. -// -// Also this schema is used as default base schema at `Schema.create` function. + /** + * Push tokens onto the tokens array. This helper speeds up + * tokenizing by 1) helping us avoid backtracking as much as possible, + * and 2) helping us avoid creating extra tokens when consecutive + * characters are plain text. This improves performance and simplifies + * lookbehinds. + */ + const push = tok => { + if (prev.type === 'globstar') { + const isBrace = state.braces > 0 && (tok.type === 'comma' || tok.type === 'brace'); + const isExtglob = tok.extglob === true || (extglobs.length && (tok.type === 'pipe' || tok.type === 'paren')); + if (tok.type !== 'slash' && tok.type !== 'paren' && !isBrace && !isExtglob) { + state.output = state.output.slice(0, -prev.output.length); + prev.type = 'star'; + prev.value = '*'; + prev.output = star; + state.output += prev.output; + } + } + if (extglobs.length && tok.type !== 'paren') { + extglobs[extglobs.length - 1].inner += tok.value; + } + if (tok.value || tok.output) append(tok); + if (prev && prev.type === 'text' && tok.type === 'text') { + prev.value += tok.value; + prev.output = (prev.output || '') + tok.value; + return; + } -var Schema = __nccwpck_require__(15229); + tok.prev = prev; + tokens.push(tok); + prev = tok; + }; + const extglobOpen = (type, value) => { + const token = { ...EXTGLOB_CHARS[value], conditions: 1, inner: '' }; -module.exports = Schema.DEFAULT = new Schema({ - include: [ - __nccwpck_require__(85999) - ], - explicit: [ - __nccwpck_require__(26985), - __nccwpck_require__(21932), - __nccwpck_require__(76385) - ] -}); + token.prev = prev; + token.parens = state.parens; + token.output = state.output; + token.startIndex = state.index; + token.tokensIndex = tokens.length; + const output = (opts.capture ? '(' : '') + token.open; + increment('parens'); + push({ type, value, output: state.output ? '' : ONE_CHAR }); + push({ type: 'paren', extglob: true, value: advance(), output }); + extglobs.push(token); + }; -/***/ }), + const extglobClose = token => { + const literal = input.slice(token.startIndex, state.index + 1); + const body = input.slice(token.startIndex + 2, state.index); + const analysis = analyzeRepeatedExtglob(body, opts); -/***/ 85999: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if ((token.type === 'plus' || token.type === 'star') && analysis.risky) { + const safeOutput = analysis.safeOutput + ? (token.output ? '' : ONE_CHAR) + (opts.capture ? `(${analysis.safeOutput})` : analysis.safeOutput) + : undefined; + const open = tokens[token.tokensIndex]; -// JS-YAML's default schema for `safeLoad` function. -// It is not described in the YAML specification. -// -// This schema is based on standard YAML's Core schema and includes most of -// extra types described at YAML tag repository. (http://yaml.org/type/) + open.type = 'text'; + open.value = literal; + open.output = safeOutput || utils.escapeRegex(literal); + for (let i = token.tokensIndex + 1; i < tokens.length; i++) { + tokens[i].value = ''; + tokens[i].output = ''; + delete tokens[i].suffix; + } + state.output = token.output + open.output; + state.backtrack = true; + push({ type: 'paren', extglob: true, value, output: '' }); + decrement('parens'); + return; + } + let output = token.close + (opts.capture ? ')' : ''); + let rest; -var Schema = __nccwpck_require__(15229); + if (token.type === 'negate') { + let extglobStar = star; + if (token.inner && token.inner.length > 1 && token.inner.includes('/')) { + extglobStar = globstar(opts); + } -module.exports = new Schema({ - include: [ - __nccwpck_require__(19323) - ], - implicit: [ - __nccwpck_require__(53173), - __nccwpck_require__(30589) - ], - explicit: [ - __nccwpck_require__(37496), - __nccwpck_require__(10604), - __nccwpck_require__(71176), - __nccwpck_require__(44453) - ] -}); + if (extglobStar !== star || eos() || /^\)+$/.test(remaining())) { + output = token.close = `)$))${extglobStar}`; + } + if (token.inner.includes('*') && (rest = remaining()) && /^\.[^\\/.]+$/.test(rest)) { + // Any non-magical string (`.ts`) or even nested expression (`.{ts,tsx}`) can follow after the closing parenthesis. + // In this case, we need to parse the string and use it in the output of the original pattern. + // Suitable patterns: `/!(*.d).ts`, `/!(*.d).{ts,tsx}`, `**/!(*-dbg).@(js)`. + // + // Disabling the `fastpaths` option due to a problem with parsing strings as `.ts` in the pattern like `**/!(*.d).ts`. + const expression = parse(rest, { ...options, fastpaths: false }).output; -/***/ }), + output = token.close = `)${expression})${extglobStar})`; + } -/***/ 59537: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if (token.prev.type === 'bos') { + state.negatedExtglob = true; + } + } -// Standard YAML's Failsafe schema. -// http://www.yaml.org/spec/1.2/spec.html#id2802346 + push({ type: 'paren', extglob: true, value, output }); + decrement('parens'); + }; + /** + * Fast paths + */ + if (opts.fastpaths !== false && !/(^[*!]|[/()[\]{}"])/.test(input)) { + let backslashes = false; + let output = input.replace(REGEX_SPECIAL_CHARS_BACKREF, (m, esc, chars, first, rest, index) => { + if (first === '\\') { + backslashes = true; + return m; + } + if (first === '?') { + if (esc) { + return esc + first + (rest ? QMARK.repeat(rest.length) : ''); + } + if (index === 0) { + return qmarkNoDot + (rest ? QMARK.repeat(rest.length) : ''); + } + return QMARK.repeat(chars.length); + } -var Schema = __nccwpck_require__(15229); + if (first === '.') { + return DOT_LITERAL.repeat(chars.length); + } + if (first === '*') { + if (esc) { + return esc + first + (rest ? star : ''); + } + return star; + } + return esc ? m : `\\${m}`; + }); -module.exports = new Schema({ - explicit: [ - __nccwpck_require__(1502), - __nccwpck_require__(81274), - __nccwpck_require__(30283) - ] -}); + if (backslashes === true) { + if (opts.unescape === true) { + output = output.replace(/\\/g, ''); + } else { + output = output.replace(/\\+/g, m => { + return m.length % 2 === 0 ? '\\\\' : (m ? '\\' : ''); + }); + } + } + if (output === input && opts.contains === true) { + state.output = input; + return state; + } -/***/ }), + state.output = utils.wrapOutput(output, state, options); + return state; + } -/***/ 10606: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + /** + * Tokenize input until we reach end-of-string + */ -// Standard YAML's JSON schema. -// http://www.yaml.org/spec/1.2/spec.html#id2803231 -// -// NOTE: JS-YAML does not support schema-specific tag resolution restrictions. -// So, this schema is not such strict as defined in the YAML specification. -// It allows numbers in binary notaion, use `Null` and `NULL` as `null`, etc. + while (!eos()) { + value = advance(); + if (value === '\u0000') { + continue; + } + /** + * Escaped characters + */ + if (value === '\\') { + const next = peek(); + if (next === '/' && opts.bash !== true) { + continue; + } -var Schema = __nccwpck_require__(15229); + if (next === '.' || next === ';') { + continue; + } + if (!next) { + value += '\\'; + push({ type: 'text', value }); + continue; + } -module.exports = new Schema({ - include: [ - __nccwpck_require__(59537) - ], - implicit: [ - __nccwpck_require__(1328), - __nccwpck_require__(46025), - __nccwpck_require__(36896), - __nccwpck_require__(56047) - ] -}); + // collapse slashes to reduce potential for exploits + const match = /^\\+/.exec(remaining()); + let slashes = 0; + if (match && match[0].length > 2) { + slashes = match[0].length; + state.index += slashes; + if (slashes % 2 !== 0) { + value += '\\'; + } + } -/***/ }), + if (opts.unescape === true) { + value = advance(); + } else { + value += advance(); + } -/***/ 2346: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if (state.brackets === 0) { + push({ type: 'text', value }); + continue; + } + } + /** + * If we're inside a regex character class, continue + * until we reach the closing bracket. + */ + if (state.brackets > 0 && (value !== ']' || prev.value === '[' || prev.value === '[^')) { + if (opts.posix !== false && value === ':') { + const inner = prev.value.slice(1); + if (inner.includes('[')) { + prev.posix = true; -var YAMLException = __nccwpck_require__(51517); + if (inner.includes(':')) { + const idx = prev.value.lastIndexOf('['); + const pre = prev.value.slice(0, idx); + const rest = prev.value.slice(idx + 2); + const posix = POSIX_REGEX_SOURCE[rest]; + if (posix) { + prev.value = pre + posix; + state.backtrack = true; + advance(); -var TYPE_CONSTRUCTOR_OPTIONS = [ - 'kind', - 'resolve', - 'construct', - 'instanceOf', - 'predicate', - 'represent', - 'defaultStyle', - 'styleAliases' -]; + if (!bos.output && tokens.indexOf(prev) === 1) { + bos.output = ONE_CHAR; + } + continue; + } + } + } + } -var YAML_NODE_KINDS = [ - 'scalar', - 'sequence', - 'mapping' -]; + if ((value === '[' && peek() !== ':') || (value === '-' && peek() === ']')) { + value = `\\${value}`; + } -function compileStyleAliases(map) { - var result = {}; + if (value === ']' && (prev.value === '[' || prev.value === '[^')) { + value = `\\${value}`; + } - if (map !== null) { - Object.keys(map).forEach(function (style) { - map[style].forEach(function (alias) { - result[String(alias)] = style; - }); - }); - } + if (opts.posix === true && value === '!' && prev.value === '[') { + value = '^'; + } - return result; -} + prev.value += value; + append({ value }); + continue; + } -function Type(tag, options) { - options = options || {}; + /** + * If we're inside a quoted string, continue + * until we reach the closing double quote. + */ - Object.keys(options).forEach(function (name) { - if (TYPE_CONSTRUCTOR_OPTIONS.indexOf(name) === -1) { - throw new YAMLException('Unknown option "' + name + '" is met in definition of "' + tag + '" YAML type.'); + if (state.quotes === 1 && value !== '"') { + value = utils.escapeRegex(value); + prev.value += value; + append({ value }); + continue; } - }); - // TODO: Add tag format check. - this.tag = tag; - this.kind = options['kind'] || null; - this.resolve = options['resolve'] || function () { return true; }; - this.construct = options['construct'] || function (data) { return data; }; - this.instanceOf = options['instanceOf'] || null; - this.predicate = options['predicate'] || null; - this.represent = options['represent'] || null; - this.defaultStyle = options['defaultStyle'] || null; - this.styleAliases = compileStyleAliases(options['styleAliases'] || null); + /** + * Double quotes + */ - if (YAML_NODE_KINDS.indexOf(this.kind) === -1) { - throw new YAMLException('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.'); - } -} + if (value === '"') { + state.quotes = state.quotes === 1 ? 0 : 1; + if (opts.keepQuotes === true) { + push({ type: 'text', value }); + } + continue; + } -module.exports = Type; + /** + * Parentheses + */ + if (value === '(') { + increment('parens'); + push({ type: 'paren', value }); + continue; + } -/***/ }), + if (value === ')') { + if (state.parens === 0 && opts.strictBrackets === true) { + throw new SyntaxError(syntaxError('opening', '(')); + } -/***/ 37496: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + const extglob = extglobs[extglobs.length - 1]; + if (extglob && state.parens === extglob.parens + 1) { + extglobClose(extglobs.pop()); + continue; + } + push({ type: 'paren', value, output: state.parens ? ')' : '\\)' }); + decrement('parens'); + continue; + } + /** + * Square brackets + */ -/*eslint-disable no-bitwise*/ + if (value === '[') { + if (opts.nobracket === true || !remaining().includes(']')) { + if (opts.nobracket !== true && opts.strictBrackets === true) { + throw new SyntaxError(syntaxError('closing', ']')); + } -var NodeBuffer; + value = `\\${value}`; + } else { + increment('brackets'); + } -try { - // A trick for browserified version, to not include `Buffer` shim - var _require = __WEBPACK_EXTERNAL_createRequire(import.meta.url); - NodeBuffer = _require('buffer').Buffer; -} catch (__) {} + push({ type: 'bracket', value }); + continue; + } -var Type = __nccwpck_require__(2346); + if (value === ']') { + if (opts.nobracket === true || (prev && prev.type === 'bracket' && prev.value.length === 1)) { + push({ type: 'text', value, output: `\\${value}` }); + continue; + } + if (state.brackets === 0) { + if (opts.strictBrackets === true) { + throw new SyntaxError(syntaxError('opening', '[')); + } -// [ 64, 65, 66 ] -> [ padding, CR, LF ] -var BASE64_MAP = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r'; + push({ type: 'text', value, output: `\\${value}` }); + continue; + } + decrement('brackets'); -function resolveYamlBinary(data) { - if (data === null) return false; + const prevValue = prev.value.slice(1); + if (prev.posix !== true && prevValue[0] === '^' && !prevValue.includes('/')) { + value = `/${value}`; + } - var code, idx, bitlen = 0, max = data.length, map = BASE64_MAP; + prev.value += value; + append({ value }); - // Convert one by one. - for (idx = 0; idx < max; idx++) { - code = map.indexOf(data.charAt(idx)); + // when literal brackets are explicitly disabled + // assume we should match with a regex character class + if (opts.literalBrackets === false || utils.hasRegexChars(prevValue)) { + continue; + } - // Skip CR/LF - if (code > 64) continue; + const escaped = utils.escapeRegex(prev.value); + state.output = state.output.slice(0, -prev.value.length); - // Fail on illegal characters - if (code < 0) return false; + // when literal brackets are explicitly enabled + // assume we should escape the brackets to match literal characters + if (opts.literalBrackets === true) { + state.output += escaped; + prev.value = escaped; + continue; + } - bitlen += 6; - } + // when the user specifies nothing, try to match both + prev.value = `(${capture}${escaped}|${prev.value})`; + state.output += prev.value; + continue; + } - // If there are any bits left, source was corrupted - return (bitlen % 8) === 0; -} + /** + * Braces + */ -function constructYamlBinary(data) { - var idx, tailbits, - input = data.replace(/[\r\n=]/g, ''), // remove CR/LF & padding to simplify scan - max = input.length, - map = BASE64_MAP, - bits = 0, - result = []; + if (value === '{' && opts.nobrace !== true) { + increment('braces'); - // Collect by 6*4 bits (3 bytes) + const open = { + type: 'brace', + value, + output: '(', + outputIndex: state.output.length, + tokensIndex: state.tokens.length + }; - for (idx = 0; idx < max; idx++) { - if ((idx % 4 === 0) && idx) { - result.push((bits >> 16) & 0xFF); - result.push((bits >> 8) & 0xFF); - result.push(bits & 0xFF); + braces.push(open); + push(open); + continue; } - bits = (bits << 6) | map.indexOf(input.charAt(idx)); - } + if (value === '}') { + const brace = braces[braces.length - 1]; - // Dump tail + if (opts.nobrace === true || !brace) { + push({ type: 'text', value, output: value }); + continue; + } - tailbits = (max % 4) * 6; + let output = ')'; - if (tailbits === 0) { - result.push((bits >> 16) & 0xFF); - result.push((bits >> 8) & 0xFF); - result.push(bits & 0xFF); - } else if (tailbits === 18) { - result.push((bits >> 10) & 0xFF); - result.push((bits >> 2) & 0xFF); - } else if (tailbits === 12) { - result.push((bits >> 4) & 0xFF); - } + if (brace.dots === true) { + const arr = tokens.slice(); + const range = []; - // Wrap into Buffer for NodeJS and leave Array for browser - if (NodeBuffer) { - // Support node 6.+ Buffer API when available - return NodeBuffer.from ? NodeBuffer.from(result) : new NodeBuffer(result); - } + for (let i = arr.length - 1; i >= 0; i--) { + tokens.pop(); + if (arr[i].type === 'brace') { + break; + } + if (arr[i].type !== 'dots') { + range.unshift(arr[i].value); + } + } - return result; -} + output = expandRange(range, opts); + state.backtrack = true; + } -function representYamlBinary(object /*, style*/) { - var result = '', bits = 0, idx, tail, - max = object.length, - map = BASE64_MAP; + if (brace.comma !== true && brace.dots !== true) { + const out = state.output.slice(0, brace.outputIndex); + const toks = state.tokens.slice(brace.tokensIndex); + brace.value = brace.output = '\\{'; + value = output = '\\}'; + state.output = out; + for (const t of toks) { + state.output += (t.output || t.value); + } + } - // Convert every three bytes to 4 ASCII characters. + push({ type: 'brace', value, output }); + decrement('braces'); + braces.pop(); + continue; + } - for (idx = 0; idx < max; idx++) { - if ((idx % 3 === 0) && idx) { - result += map[(bits >> 18) & 0x3F]; - result += map[(bits >> 12) & 0x3F]; - result += map[(bits >> 6) & 0x3F]; - result += map[bits & 0x3F]; + /** + * Pipes + */ + + if (value === '|') { + if (extglobs.length > 0) { + extglobs[extglobs.length - 1].conditions++; + } + push({ type: 'text', value }); + continue; } - bits = (bits << 8) + object[idx]; - } + /** + * Commas + */ - // Dump tail + if (value === ',') { + let output = value; - tail = max % 3; + const brace = braces[braces.length - 1]; + if (brace && stack[stack.length - 1] === 'braces') { + brace.comma = true; + output = '|'; + } - if (tail === 0) { - result += map[(bits >> 18) & 0x3F]; - result += map[(bits >> 12) & 0x3F]; - result += map[(bits >> 6) & 0x3F]; - result += map[bits & 0x3F]; - } else if (tail === 2) { - result += map[(bits >> 10) & 0x3F]; - result += map[(bits >> 4) & 0x3F]; - result += map[(bits << 2) & 0x3F]; - result += map[64]; - } else if (tail === 1) { - result += map[(bits >> 2) & 0x3F]; - result += map[(bits << 4) & 0x3F]; - result += map[64]; - result += map[64]; - } + push({ type: 'comma', value, output }); + continue; + } - return result; -} + /** + * Slashes + */ -function isBinary(object) { - return NodeBuffer && NodeBuffer.isBuffer(object); -} + if (value === '/') { + // if the beginning of the glob is "./", advance the start + // to the current index, and don't add the "./" characters + // to the state. This greatly simplifies lookbehinds when + // checking for BOS characters like "!" and "." (not "./") + if (prev.type === 'dot' && state.index === state.start + 1) { + state.start = state.index + 1; + state.consumed = ''; + state.output = ''; + tokens.pop(); + prev = bos; // reset "prev" to the first token + continue; + } -module.exports = new Type('tag:yaml.org,2002:binary', { - kind: 'scalar', - resolve: resolveYamlBinary, - construct: constructYamlBinary, - predicate: isBinary, - represent: representYamlBinary -}); + push({ type: 'slash', value, output: SLASH_LITERAL }); + continue; + } + /** + * Dots + */ -/***/ }), + if (value === '.') { + if (state.braces > 0 && prev.type === 'dot') { + if (prev.value === '.') prev.output = DOT_LITERAL; + const brace = braces[braces.length - 1]; + prev.type = 'dots'; + prev.output += value; + prev.value += value; + brace.dots = true; + continue; + } -/***/ 46025: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if ((state.braces + state.parens) === 0 && prev.type !== 'bos' && prev.type !== 'slash') { + push({ type: 'text', value, output: DOT_LITERAL }); + continue; + } + push({ type: 'dot', value, output: DOT_LITERAL }); + continue; + } + /** + * Question marks + */ -var Type = __nccwpck_require__(2346); + if (value === '?') { + const isGroup = prev && prev.value === '('; + if (!isGroup && opts.noextglob !== true && peek() === '(' && peek(2) !== '?') { + extglobOpen('qmark', value); + continue; + } -function resolveYamlBoolean(data) { - if (data === null) return false; + if (prev && prev.type === 'paren') { + const next = peek(); + let output = value; - var max = data.length; + if (next === '<' && !utils.supportsLookbehinds()) { + throw new Error('Node.js v10 or higher is required for regex lookbehinds'); + } - return (max === 4 && (data === 'true' || data === 'True' || data === 'TRUE')) || - (max === 5 && (data === 'false' || data === 'False' || data === 'FALSE')); -} + if ((prev.value === '(' && !/[!=<:]/.test(next)) || (next === '<' && !/<([!=]|\w+>)/.test(remaining()))) { + output = `\\${value}`; + } -function constructYamlBoolean(data) { - return data === 'true' || - data === 'True' || - data === 'TRUE'; -} + push({ type: 'text', value, output }); + continue; + } -function isBoolean(object) { - return Object.prototype.toString.call(object) === '[object Boolean]'; -} + if (opts.dot !== true && (prev.type === 'slash' || prev.type === 'bos')) { + push({ type: 'qmark', value, output: QMARK_NO_DOT }); + continue; + } -module.exports = new Type('tag:yaml.org,2002:bool', { - kind: 'scalar', - resolve: resolveYamlBoolean, - construct: constructYamlBoolean, - predicate: isBoolean, - represent: { - lowercase: function (object) { return object ? 'true' : 'false'; }, - uppercase: function (object) { return object ? 'TRUE' : 'FALSE'; }, - camelcase: function (object) { return object ? 'True' : 'False'; } - }, - defaultStyle: 'lowercase' -}); + push({ type: 'qmark', value, output: QMARK }); + continue; + } + /** + * Exclamation + */ -/***/ }), + if (value === '!') { + if (opts.noextglob !== true && peek() === '(') { + if (peek(2) !== '?' || !/[!=<:]/.test(peek(3))) { + extglobOpen('negate', value); + continue; + } + } -/***/ 56047: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if (opts.nonegate !== true && state.index === 0) { + negate(); + continue; + } + } + /** + * Plus + */ + if (value === '+') { + if (opts.noextglob !== true && peek() === '(' && peek(2) !== '?') { + extglobOpen('plus', value); + continue; + } -var common = __nccwpck_require__(31127); -var Type = __nccwpck_require__(2346); + if ((prev && prev.value === '(') || opts.regex === false) { + push({ type: 'plus', value, output: PLUS_LITERAL }); + continue; + } -var YAML_FLOAT_PATTERN = new RegExp( - // 2.5e4, 2.5 and integers - '^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?' + - // .2e4, .2 - // special case, seems not from spec - '|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?' + - // 20:59 - '|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*' + - // .inf - '|[-+]?\\.(?:inf|Inf|INF)' + - // .nan - '|\\.(?:nan|NaN|NAN))$'); + if ((prev && (prev.type === 'bracket' || prev.type === 'paren' || prev.type === 'brace')) || state.parens > 0) { + push({ type: 'plus', value }); + continue; + } -function resolveYamlFloat(data) { - if (data === null) return false; + push({ type: 'plus', value: PLUS_LITERAL }); + continue; + } - if (!YAML_FLOAT_PATTERN.test(data) || - // Quick hack to not allow integers end with `_` - // Probably should update regexp & check speed - data[data.length - 1] === '_') { - return false; - } + /** + * Plain text + */ + + if (value === '@') { + if (opts.noextglob !== true && peek() === '(' && peek(2) !== '?') { + push({ type: 'at', extglob: true, value, output: '' }); + continue; + } - return true; -} + push({ type: 'text', value }); + continue; + } -function constructYamlFloat(data) { - var value, sign, base, digits; + /** + * Plain text + */ - value = data.replace(/_/g, '').toLowerCase(); - sign = value[0] === '-' ? -1 : 1; - digits = []; + if (value !== '*') { + if (value === '$' || value === '^') { + value = `\\${value}`; + } - if ('+-'.indexOf(value[0]) >= 0) { - value = value.slice(1); - } + const match = REGEX_NON_SPECIAL_CHARS.exec(remaining()); + if (match) { + value += match[0]; + state.index += match[0].length; + } - if (value === '.inf') { - return (sign === 1) ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY; + push({ type: 'text', value }); + continue; + } - } else if (value === '.nan') { - return NaN; + /** + * Stars + */ - } else if (value.indexOf(':') >= 0) { - value.split(':').forEach(function (v) { - digits.unshift(parseFloat(v, 10)); - }); + if (prev && (prev.type === 'globstar' || prev.star === true)) { + prev.type = 'star'; + prev.star = true; + prev.value += value; + prev.output = star; + state.backtrack = true; + state.globstar = true; + consume(value); + continue; + } - value = 0.0; - base = 1; + let rest = remaining(); + if (opts.noextglob !== true && /^\([^?]/.test(rest)) { + extglobOpen('star', value); + continue; + } - digits.forEach(function (d) { - value += d * base; - base *= 60; - }); + if (prev.type === 'star') { + if (opts.noglobstar === true) { + consume(value); + continue; + } - return sign * value; + const prior = prev.prev; + const before = prior.prev; + const isStart = prior.type === 'slash' || prior.type === 'bos'; + const afterStar = before && (before.type === 'star' || before.type === 'globstar'); - } - return sign * parseFloat(value, 10); -} + if (opts.bash === true && (!isStart || (rest[0] && rest[0] !== '/'))) { + push({ type: 'star', value, output: '' }); + continue; + } + const isBrace = state.braces > 0 && (prior.type === 'comma' || prior.type === 'brace'); + const isExtglob = extglobs.length && (prior.type === 'pipe' || prior.type === 'paren'); + if (!isStart && prior.type !== 'paren' && !isBrace && !isExtglob) { + push({ type: 'star', value, output: '' }); + continue; + } -var SCIENTIFIC_WITHOUT_DOT = /^[-+]?[0-9]+e/; + // strip consecutive `/**/` + while (rest.slice(0, 3) === '/**') { + const after = input[state.index + 4]; + if (after && after !== '/') { + break; + } + rest = rest.slice(3); + consume('/**', 3); + } -function representYamlFloat(object, style) { - var res; + if (prior.type === 'bos' && eos()) { + prev.type = 'globstar'; + prev.value += value; + prev.output = globstar(opts); + state.output = prev.output; + state.globstar = true; + consume(value); + continue; + } - if (isNaN(object)) { - switch (style) { - case 'lowercase': return '.nan'; - case 'uppercase': return '.NAN'; - case 'camelcase': return '.NaN'; - } - } else if (Number.POSITIVE_INFINITY === object) { - switch (style) { - case 'lowercase': return '.inf'; - case 'uppercase': return '.INF'; - case 'camelcase': return '.Inf'; - } - } else if (Number.NEGATIVE_INFINITY === object) { - switch (style) { - case 'lowercase': return '-.inf'; - case 'uppercase': return '-.INF'; - case 'camelcase': return '-.Inf'; - } - } else if (common.isNegativeZero(object)) { - return '-0.0'; - } + if (prior.type === 'slash' && prior.prev.type !== 'bos' && !afterStar && eos()) { + state.output = state.output.slice(0, -(prior.output + prev.output).length); + prior.output = `(?:${prior.output}`; - res = object.toString(10); + prev.type = 'globstar'; + prev.output = globstar(opts) + (opts.strictSlashes ? ')' : '|$)'); + prev.value += value; + state.globstar = true; + state.output += prior.output + prev.output; + consume(value); + continue; + } - // JS stringifier can build scientific format without dots: 5e-100, - // while YAML requres dot: 5.e-100. Fix it with simple hack + if (prior.type === 'slash' && prior.prev.type !== 'bos' && rest[0] === '/') { + const end = rest[1] !== void 0 ? '|$' : ''; - return SCIENTIFIC_WITHOUT_DOT.test(res) ? res.replace('e', '.e') : res; -} + state.output = state.output.slice(0, -(prior.output + prev.output).length); + prior.output = `(?:${prior.output}`; -function isFloat(object) { - return (Object.prototype.toString.call(object) === '[object Number]') && - (object % 1 !== 0 || common.isNegativeZero(object)); -} + prev.type = 'globstar'; + prev.output = `${globstar(opts)}${SLASH_LITERAL}|${SLASH_LITERAL}${end})`; + prev.value += value; -module.exports = new Type('tag:yaml.org,2002:float', { - kind: 'scalar', - resolve: resolveYamlFloat, - construct: constructYamlFloat, - predicate: isFloat, - represent: representYamlFloat, - defaultStyle: 'lowercase' -}); + state.output += prior.output + prev.output; + state.globstar = true; + consume(value + advance()); -/***/ }), + push({ type: 'slash', value: '/', output: '' }); + continue; + } -/***/ 36896: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if (prior.type === 'bos' && rest[0] === '/') { + prev.type = 'globstar'; + prev.value += value; + prev.output = `(?:^|${SLASH_LITERAL}|${globstar(opts)}${SLASH_LITERAL})`; + state.output = prev.output; + state.globstar = true; + consume(value + advance()); + push({ type: 'slash', value: '/', output: '' }); + continue; + } + // remove single star from output + state.output = state.output.slice(0, -prev.output.length); + // reset previous token to globstar + prev.type = 'globstar'; + prev.output = globstar(opts); + prev.value += value; -var common = __nccwpck_require__(31127); -var Type = __nccwpck_require__(2346); + // reset output with globstar + state.output += prev.output; + state.globstar = true; + consume(value); + continue; + } -function isHexCode(c) { - return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) || - ((0x41/* A */ <= c) && (c <= 0x46/* F */)) || - ((0x61/* a */ <= c) && (c <= 0x66/* f */)); -} + const token = { type: 'star', value, output: star }; -function isOctCode(c) { - return ((0x30/* 0 */ <= c) && (c <= 0x37/* 7 */)); -} + if (opts.bash === true) { + token.output = '.*?'; + if (prev.type === 'bos' || prev.type === 'slash') { + token.output = nodot + token.output; + } + push(token); + continue; + } -function isDecCode(c) { - return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)); -} + if (prev && (prev.type === 'bracket' || prev.type === 'paren') && opts.regex === true) { + token.output = value; + push(token); + continue; + } -function resolveYamlInteger(data) { - if (data === null) return false; + if (state.index === state.start || prev.type === 'slash' || prev.type === 'dot') { + if (prev.type === 'dot') { + state.output += NO_DOT_SLASH; + prev.output += NO_DOT_SLASH; - var max = data.length, - index = 0, - hasDigits = false, - ch; + } else if (opts.dot === true) { + state.output += NO_DOTS_SLASH; + prev.output += NO_DOTS_SLASH; - if (!max) return false; + } else { + state.output += nodot; + prev.output += nodot; + } - ch = data[index]; + if (peek() !== '*') { + state.output += ONE_CHAR; + prev.output += ONE_CHAR; + } + } - // sign - if (ch === '-' || ch === '+') { - ch = data[++index]; + push(token); } - if (ch === '0') { - // 0 - if (index + 1 === max) return true; - ch = data[++index]; + while (state.brackets > 0) { + if (opts.strictBrackets === true) throw new SyntaxError(syntaxError('closing', ']')); + state.output = utils.escapeLast(state.output, '['); + decrement('brackets'); + } - // base 2, base 8, base 16 + while (state.parens > 0) { + if (opts.strictBrackets === true) throw new SyntaxError(syntaxError('closing', ')')); + state.output = utils.escapeLast(state.output, '('); + decrement('parens'); + } - if (ch === 'b') { - // base 2 - index++; + while (state.braces > 0) { + if (opts.strictBrackets === true) throw new SyntaxError(syntaxError('closing', '}')); + state.output = utils.escapeLast(state.output, '{'); + decrement('braces'); + } - for (; index < max; index++) { - ch = data[index]; - if (ch === '_') continue; - if (ch !== '0' && ch !== '1') return false; - hasDigits = true; - } - return hasDigits && ch !== '_'; - } + if (opts.strictSlashes !== true && (prev.type === 'star' || prev.type === 'bracket')) { + push({ type: 'maybe_slash', value: '', output: `${SLASH_LITERAL}?` }); + } + // rebuild the output if we had to backtrack at any point + if (state.backtrack === true) { + state.output = ''; - if (ch === 'x') { - // base 16 - index++; + for (const token of state.tokens) { + state.output += token.output != null ? token.output : token.value; - for (; index < max; index++) { - ch = data[index]; - if (ch === '_') continue; - if (!isHexCode(data.charCodeAt(index))) return false; - hasDigits = true; + if (token.suffix) { + state.output += token.suffix; } - return hasDigits && ch !== '_'; - } - - // base 8 - for (; index < max; index++) { - ch = data[index]; - if (ch === '_') continue; - if (!isOctCode(data.charCodeAt(index))) return false; - hasDigits = true; } - return hasDigits && ch !== '_'; } - // base 10 (except 0) or base 60 + return state; +}; - // value should not start with `_`; - if (ch === '_') return false; +/** + * Fast paths for creating regular expressions for common glob patterns. + * This can significantly speed up processing and has very little downside + * impact when none of the fast paths match. + */ - for (; index < max; index++) { - ch = data[index]; - if (ch === '_') continue; - if (ch === ':') break; - if (!isDecCode(data.charCodeAt(index))) { - return false; - } - hasDigits = true; +parse.fastpaths = (input, options) => { + const opts = { ...options }; + const max = typeof opts.maxLength === 'number' ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH; + const len = input.length; + if (len > max) { + throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`); } - // Should have digits and should not end with `_` - if (!hasDigits || ch === '_') return false; - - // if !base60 - done; - if (ch !== ':') return true; + input = REPLACEMENTS[input] || input; + const win32 = utils.isWindows(options); - // base60 almost not used, no needs to optimize - return /^(:[0-5]?[0-9])+$/.test(data.slice(index)); -} + // create constants based on platform, for windows or posix + const { + DOT_LITERAL, + SLASH_LITERAL, + ONE_CHAR, + DOTS_SLASH, + NO_DOT, + NO_DOTS, + NO_DOTS_SLASH, + STAR, + START_ANCHOR + } = constants.globChars(win32); -function constructYamlInteger(data) { - var value = data, sign = 1, ch, base, digits = []; + const nodot = opts.dot ? NO_DOTS : NO_DOT; + const slashDot = opts.dot ? NO_DOTS_SLASH : NO_DOT; + const capture = opts.capture ? '' : '?:'; + const state = { negated: false, prefix: '' }; + let star = opts.bash === true ? '.*?' : STAR; - if (value.indexOf('_') !== -1) { - value = value.replace(/_/g, ''); + if (opts.capture) { + star = `(${star})`; } - ch = value[0]; + const globstar = opts => { + if (opts.noglobstar === true) return star; + return `(${capture}(?:(?!${START_ANCHOR}${opts.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`; + }; - if (ch === '-' || ch === '+') { - if (ch === '-') sign = -1; - value = value.slice(1); - ch = value[0]; - } + const create = str => { + switch (str) { + case '*': + return `${nodot}${ONE_CHAR}${star}`; - if (value === '0') return 0; + case '.*': + return `${DOT_LITERAL}${ONE_CHAR}${star}`; - if (ch === '0') { - if (value[1] === 'b') return sign * parseInt(value.slice(2), 2); - if (value[1] === 'x') return sign * parseInt(value, 16); - return sign * parseInt(value, 8); - } + case '*.*': + return `${nodot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`; - if (value.indexOf(':') !== -1) { - value.split(':').forEach(function (v) { - digits.unshift(parseInt(v, 10)); - }); + case '*/*': + return `${nodot}${star}${SLASH_LITERAL}${ONE_CHAR}${slashDot}${star}`; - value = 0; - base = 1; + case '**': + return nodot + globstar(opts); - digits.forEach(function (d) { - value += (d * base); - base *= 60; - }); + case '**/*': + return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${ONE_CHAR}${star}`; - return sign * value; + case '**/*.*': + return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`; - } + case '**/.*': + return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${DOT_LITERAL}${ONE_CHAR}${star}`; - return sign * parseInt(value, 10); -} + default: { + const match = /^(.*?)\.(\w+)$/.exec(str); + if (!match) return; -function isInteger(object) { - return (Object.prototype.toString.call(object)) === '[object Number]' && - (object % 1 === 0 && !common.isNegativeZero(object)); -} + const source = create(match[1]); + if (!source) return; -module.exports = new Type('tag:yaml.org,2002:int', { - kind: 'scalar', - resolve: resolveYamlInteger, - construct: constructYamlInteger, - predicate: isInteger, - represent: { - binary: function (obj) { return obj >= 0 ? '0b' + obj.toString(2) : '-0b' + obj.toString(2).slice(1); }, - octal: function (obj) { return obj >= 0 ? '0' + obj.toString(8) : '-0' + obj.toString(8).slice(1); }, - decimal: function (obj) { return obj.toString(10); }, - /* eslint-disable max-len */ - hexadecimal: function (obj) { return obj >= 0 ? '0x' + obj.toString(16).toUpperCase() : '-0x' + obj.toString(16).toUpperCase().slice(1); } - }, - defaultStyle: 'decimal', - styleAliases: { - binary: [ 2, 'bin' ], - octal: [ 8, 'oct' ], - decimal: [ 10, 'dec' ], - hexadecimal: [ 16, 'hex' ] - } -}); + return source + DOT_LITERAL + match[2]; + } + } + }; + const output = utils.removePrefix(input, state); + let source = create(output); -/***/ }), + if (source && opts.strictSlashes !== true) { + source += `${SLASH_LITERAL}?`; + } -/***/ 76385: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + return source; +}; +module.exports = parse; -var esprima; +/***/ }), -// Browserified version does not have esprima -// -// 1. For node.js just require module as deps -// 2. For browser try to require mudule via external AMD system. -// If not found - try to fallback to window.esprima. If not -// found too - then fail to parse. -// -try { - // workaround to exclude package from browserify list. - var _require = __WEBPACK_EXTERNAL_createRequire(import.meta.url); - esprima = _require('esprima'); -} catch (_) { - /* eslint-disable no-redeclare */ - /* global window */ - if (typeof window !== 'undefined') esprima = window.esprima; -} +/***/ 1614: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(2346); -function resolveJavascriptFunction(data) { - if (data === null) return false; - try { - var source = '(' + data + ')', - ast = esprima.parse(source, { range: true }); +const path = __nccwpck_require__(6928); +const scan = __nccwpck_require__(3999); +const parse = __nccwpck_require__(51); +const utils = __nccwpck_require__(3753); +const constants = __nccwpck_require__(1237); +const isObject = val => val && typeof val === 'object' && !Array.isArray(val); - if (ast.type !== 'Program' || - ast.body.length !== 1 || - ast.body[0].type !== 'ExpressionStatement' || - (ast.body[0].expression.type !== 'ArrowFunctionExpression' && - ast.body[0].expression.type !== 'FunctionExpression')) { +/** + * Creates a matcher function from one or more glob patterns. The + * returned function takes a string to match as its first argument, + * and returns true if the string is a match. The returned matcher + * function also takes a boolean as the second argument that, when true, + * returns an object with additional information. + * + * ```js + * const picomatch = require('picomatch'); + * // picomatch(glob[, options]); + * + * const isMatch = picomatch('*.!(*a)'); + * console.log(isMatch('a.a')); //=> false + * console.log(isMatch('a.b')); //=> true + * ``` + * @name picomatch + * @param {String|Array} `globs` One or more glob patterns. + * @param {Object=} `options` + * @return {Function=} Returns a matcher function. + * @api public + */ + +const picomatch = (glob, options, returnState = false) => { + if (Array.isArray(glob)) { + const fns = glob.map(input => picomatch(input, options, returnState)); + const arrayMatcher = str => { + for (const isMatch of fns) { + const state = isMatch(str); + if (state) return state; + } return false; - } - - return true; - } catch (err) { - return false; + }; + return arrayMatcher; } -} -function constructJavascriptFunction(data) { - /*jslint evil:true*/ - - var source = '(' + data + ')', - ast = esprima.parse(source, { range: true }), - params = [], - body; + const isState = isObject(glob) && glob.tokens && glob.input; - if (ast.type !== 'Program' || - ast.body.length !== 1 || - ast.body[0].type !== 'ExpressionStatement' || - (ast.body[0].expression.type !== 'ArrowFunctionExpression' && - ast.body[0].expression.type !== 'FunctionExpression')) { - throw new Error('Failed to resolve function'); + if (glob === '' || (typeof glob !== 'string' && !isState)) { + throw new TypeError('Expected pattern to be a non-empty string'); } - ast.body[0].expression.params.forEach(function (param) { - params.push(param.name); - }); + const opts = options || {}; + const posix = utils.isWindows(options); + const regex = isState + ? picomatch.compileRe(glob, options) + : picomatch.makeRe(glob, options, false, true); - body = ast.body[0].expression.body.range; + const state = regex.state; + delete regex.state; - // Esprima's ranges include the first '{' and the last '}' characters on - // function expressions. So cut them out. - if (ast.body[0].expression.body.type === 'BlockStatement') { - /*eslint-disable no-new-func*/ - return new Function(params, source.slice(body[0] + 1, body[1] - 1)); + let isIgnored = () => false; + if (opts.ignore) { + const ignoreOpts = { ...options, ignore: null, onMatch: null, onResult: null }; + isIgnored = picomatch(opts.ignore, ignoreOpts, returnState); } - // ES6 arrow functions can omit the BlockStatement. In that case, just return - // the body. - /*eslint-disable no-new-func*/ - return new Function(params, 'return ' + source.slice(body[0], body[1])); -} -function representJavascriptFunction(object /*, style*/) { - return object.toString(); -} + const matcher = (input, returnObject = false) => { + const { isMatch, match, output } = picomatch.test(input, regex, options, { glob, posix }); + const result = { glob, state, regex, posix, input, output, match, isMatch }; -function isFunction(object) { - return Object.prototype.toString.call(object) === '[object Function]'; -} + if (typeof opts.onResult === 'function') { + opts.onResult(result); + } -module.exports = new Type('tag:yaml.org,2002:js/function', { - kind: 'scalar', - resolve: resolveJavascriptFunction, - construct: constructJavascriptFunction, - predicate: isFunction, - represent: representJavascriptFunction -}); + if (isMatch === false) { + result.isMatch = false; + return returnObject ? result : false; + } + if (isIgnored(input)) { + if (typeof opts.onIgnore === 'function') { + opts.onIgnore(result); + } + result.isMatch = false; + return returnObject ? result : false; + } -/***/ }), + if (typeof opts.onMatch === 'function') { + opts.onMatch(result); + } + return returnObject ? result : true; + }; -/***/ 21932: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if (returnState) { + matcher.state = state; + } + return matcher; +}; +/** + * Test `input` with the given `regex`. This is used by the main + * `picomatch()` function to test the input string. + * + * ```js + * const picomatch = require('picomatch'); + * // picomatch.test(input, regex[, options]); + * + * console.log(picomatch.test('foo/bar', /^(?:([^/]*?)\/([^/]*?))$/)); + * // { isMatch: true, match: [ 'foo/', 'foo', 'bar' ], output: 'foo/bar' } + * ``` + * @param {String} `input` String to test. + * @param {RegExp} `regex` + * @return {Object} Returns an object with matching info. + * @api public + */ -var Type = __nccwpck_require__(2346); +picomatch.test = (input, regex, options, { glob, posix } = {}) => { + if (typeof input !== 'string') { + throw new TypeError('Expected input to be a string'); + } -function resolveJavascriptRegExp(data) { - if (data === null) return false; - if (data.length === 0) return false; + if (input === '') { + return { isMatch: false, output: '' }; + } - var regexp = data, - tail = /\/([gim]*)$/.exec(data), - modifiers = ''; + const opts = options || {}; + const format = opts.format || (posix ? utils.toPosixSlashes : null); + let match = input === glob; + let output = (match && format) ? format(input) : input; - // if regexp starts with '/' it can have modifiers and must be properly closed - // `/foo/gim` - modifiers tail can be maximum 3 chars - if (regexp[0] === '/') { - if (tail) modifiers = tail[1]; + if (match === false) { + output = format ? format(input) : input; + match = output === glob; + } - if (modifiers.length > 3) return false; - // if expression starts with /, is should be properly terminated - if (regexp[regexp.length - modifiers.length - 1] !== '/') return false; + if (match === false || opts.capture === true) { + if (opts.matchBase === true || opts.basename === true) { + match = picomatch.matchBase(input, regex, options, posix); + } else { + match = regex.exec(output); + } } - return true; -} + return { isMatch: Boolean(match), match, output }; +}; -function constructJavascriptRegExp(data) { - var regexp = data, - tail = /\/([gim]*)$/.exec(data), - modifiers = ''; +/** + * Match the basename of a filepath. + * + * ```js + * const picomatch = require('picomatch'); + * // picomatch.matchBase(input, glob[, options]); + * console.log(picomatch.matchBase('foo/bar.js', '*.js'); // true + * ``` + * @param {String} `input` String to test. + * @param {RegExp|String} `glob` Glob pattern or regex created by [.makeRe](#makeRe). + * @return {Boolean} + * @api public + */ - // `/foo/gim` - tail can be maximum 4 chars - if (regexp[0] === '/') { - if (tail) modifiers = tail[1]; - regexp = regexp.slice(1, regexp.length - modifiers.length - 1); - } +picomatch.matchBase = (input, glob, options, posix = utils.isWindows(options)) => { + const regex = glob instanceof RegExp ? glob : picomatch.makeRe(glob, options); + return regex.test(path.basename(input)); +}; - return new RegExp(regexp, modifiers); -} +/** + * Returns true if **any** of the given glob `patterns` match the specified `string`. + * + * ```js + * const picomatch = require('picomatch'); + * // picomatch.isMatch(string, patterns[, options]); + * + * console.log(picomatch.isMatch('a.a', ['b.*', '*.a'])); //=> true + * console.log(picomatch.isMatch('a.a', 'b.*')); //=> false + * ``` + * @param {String|Array} str The string to test. + * @param {String|Array} patterns One or more glob patterns to use for matching. + * @param {Object} [options] See available [options](#options). + * @return {Boolean} Returns true if any patterns match `str` + * @api public + */ -function representJavascriptRegExp(object /*, style*/) { - var result = '/' + object.source + '/'; +picomatch.isMatch = (str, patterns, options) => picomatch(patterns, options)(str); - if (object.global) result += 'g'; - if (object.multiline) result += 'm'; - if (object.ignoreCase) result += 'i'; +/** + * Parse a glob pattern to create the source string for a regular + * expression. + * + * ```js + * const picomatch = require('picomatch'); + * const result = picomatch.parse(pattern[, options]); + * ``` + * @param {String} `pattern` + * @param {Object} `options` + * @return {Object} Returns an object with useful properties and output to be used as a regex source string. + * @api public + */ - return result; -} +picomatch.parse = (pattern, options) => { + if (Array.isArray(pattern)) return pattern.map(p => picomatch.parse(p, options)); + return parse(pattern, { ...options, fastpaths: false }); +}; -function isRegExp(object) { - return Object.prototype.toString.call(object) === '[object RegExp]'; -} +/** + * Scan a glob pattern to separate the pattern into segments. + * + * ```js + * const picomatch = require('picomatch'); + * // picomatch.scan(input[, options]); + * + * const result = picomatch.scan('!./foo/*.js'); + * console.log(result); + * { prefix: '!./', + * input: '!./foo/*.js', + * start: 3, + * base: 'foo', + * glob: '*.js', + * isBrace: false, + * isBracket: false, + * isGlob: true, + * isExtglob: false, + * isGlobstar: false, + * negated: true } + * ``` + * @param {String} `input` Glob pattern to scan. + * @param {Object} `options` + * @return {Object} Returns an object with + * @api public + */ -module.exports = new Type('tag:yaml.org,2002:js/regexp', { - kind: 'scalar', - resolve: resolveJavascriptRegExp, - construct: constructJavascriptRegExp, - predicate: isRegExp, - represent: representJavascriptRegExp -}); +picomatch.scan = (input, options) => scan(input, options); +/** + * Compile a regular expression from the `state` object returned by the + * [parse()](#parse) method. + * + * @param {Object} `state` + * @param {Object} `options` + * @param {Boolean} `returnOutput` Intended for implementors, this argument allows you to return the raw output from the parser. + * @param {Boolean} `returnState` Adds the state to a `state` property on the returned regex. Useful for implementors and debugging. + * @return {RegExp} + * @api public + */ -/***/ }), +picomatch.compileRe = (state, options, returnOutput = false, returnState = false) => { + if (returnOutput === true) { + return state.output; + } -/***/ 26985: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + const opts = options || {}; + const prepend = opts.contains ? '' : '^'; + const append = opts.contains ? '' : '$'; + let source = `${prepend}(?:${state.output})${append}`; + if (state && state.negated === true) { + source = `^(?!${source}).*$`; + } + const regex = picomatch.toRegex(source, options); + if (returnState === true) { + regex.state = state; + } -var Type = __nccwpck_require__(2346); + return regex; +}; -function resolveJavascriptUndefined() { - return true; -} +/** + * Create a regular expression from a parsed glob pattern. + * + * ```js + * const picomatch = require('picomatch'); + * const state = picomatch.parse('*.js'); + * // picomatch.compileRe(state[, options]); + * + * console.log(picomatch.compileRe(state)); + * //=> /^(?:(?!\.)(?=.)[^/]*?\.js)$/ + * ``` + * @param {String} `state` The object returned from the `.parse` method. + * @param {Object} `options` + * @param {Boolean} `returnOutput` Implementors may use this argument to return the compiled output, instead of a regular expression. This is not exposed on the options to prevent end-users from mutating the result. + * @param {Boolean} `returnState` Implementors may use this argument to return the state from the parsed glob with the returned regular expression. + * @return {RegExp} Returns a regex created from the given pattern. + * @api public + */ -function constructJavascriptUndefined() { - /*eslint-disable no-undefined*/ - return undefined; -} +picomatch.makeRe = (input, options = {}, returnOutput = false, returnState = false) => { + if (!input || typeof input !== 'string') { + throw new TypeError('Expected a non-empty string'); + } -function representJavascriptUndefined() { - return ''; -} + let parsed = { negated: false, fastpaths: true }; -function isUndefined(object) { - return typeof object === 'undefined'; -} + if (options.fastpaths !== false && (input[0] === '.' || input[0] === '*')) { + parsed.output = parse.fastpaths(input, options); + } -module.exports = new Type('tag:yaml.org,2002:js/undefined', { - kind: 'scalar', - resolve: resolveJavascriptUndefined, - construct: constructJavascriptUndefined, - predicate: isUndefined, - represent: representJavascriptUndefined -}); + if (!parsed.output) { + parsed = parse(input, options); + } + return picomatch.compileRe(parsed, options, returnOutput, returnState); +}; -/***/ }), +/** + * Create a regular expression from the given regex source string. + * + * ```js + * const picomatch = require('picomatch'); + * // picomatch.toRegex(source[, options]); + * + * const { output } = picomatch.parse('*.js'); + * console.log(picomatch.toRegex(output)); + * //=> /^(?:(?!\.)(?=.)[^/]*?\.js)$/ + * ``` + * @param {String} `source` Regular expression source string. + * @param {Object} `options` + * @return {RegExp} + * @api public + */ -/***/ 30283: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +picomatch.toRegex = (source, options) => { + try { + const opts = options || {}; + return new RegExp(source, opts.flags || (opts.nocase ? 'i' : '')); + } catch (err) { + if (options && options.debug === true) throw err; + return /$^/; + } +}; +/** + * Picomatch constants. + * @return {Object} + */ +picomatch.constants = constants; -var Type = __nccwpck_require__(2346); +/** + * Expose "picomatch" + */ -module.exports = new Type('tag:yaml.org,2002:map', { - kind: 'mapping', - construct: function (data) { return data !== null ? data : {}; } -}); +module.exports = picomatch; /***/ }), -/***/ 30589: +/***/ 3999: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(2346); - -function resolveYamlMerge(data) { - return data === '<<' || data === null; -} +const utils = __nccwpck_require__(3753); +const { + CHAR_ASTERISK, /* * */ + CHAR_AT, /* @ */ + CHAR_BACKWARD_SLASH, /* \ */ + CHAR_COMMA, /* , */ + CHAR_DOT, /* . */ + CHAR_EXCLAMATION_MARK, /* ! */ + CHAR_FORWARD_SLASH, /* / */ + CHAR_LEFT_CURLY_BRACE, /* { */ + CHAR_LEFT_PARENTHESES, /* ( */ + CHAR_LEFT_SQUARE_BRACKET, /* [ */ + CHAR_PLUS, /* + */ + CHAR_QUESTION_MARK, /* ? */ + CHAR_RIGHT_CURLY_BRACE, /* } */ + CHAR_RIGHT_PARENTHESES, /* ) */ + CHAR_RIGHT_SQUARE_BRACKET /* ] */ +} = __nccwpck_require__(1237); -module.exports = new Type('tag:yaml.org,2002:merge', { - kind: 'scalar', - resolve: resolveYamlMerge -}); +const isPathSeparator = code => { + return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH; +}; +const depth = token => { + if (token.isPrefix !== true) { + token.depth = token.isGlobstar ? Infinity : 1; + } +}; -/***/ }), +/** + * Quickly scans a glob pattern and returns an object with a handful of + * useful properties, like `isGlob`, `path` (the leading non-glob, if it exists), + * `glob` (the actual pattern), `negated` (true if the path starts with `!` but not + * with `!(`) and `negatedExtglob` (true if the path starts with `!(`). + * + * ```js + * const pm = require('picomatch'); + * console.log(pm.scan('foo/bar/*.js')); + * { isGlob: true, input: 'foo/bar/*.js', base: 'foo/bar', glob: '*.js' } + * ``` + * @param {String} `str` + * @param {Object} `options` + * @return {Object} Returns an object with tokens and regex source string. + * @api public + */ -/***/ 1328: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +const scan = (input, options) => { + const opts = options || {}; + const length = input.length - 1; + const scanToEnd = opts.parts === true || opts.scanToEnd === true; + const slashes = []; + const tokens = []; + const parts = []; + let str = input; + let index = -1; + let start = 0; + let lastIndex = 0; + let isBrace = false; + let isBracket = false; + let isGlob = false; + let isExtglob = false; + let isGlobstar = false; + let braceEscaped = false; + let backslashes = false; + let negated = false; + let negatedExtglob = false; + let finished = false; + let braces = 0; + let prev; + let code; + let token = { value: '', depth: 0, isGlob: false }; -var Type = __nccwpck_require__(2346); + const eos = () => index >= length; + const peek = () => str.charCodeAt(index + 1); + const advance = () => { + prev = code; + return str.charCodeAt(++index); + }; -function resolveYamlNull(data) { - if (data === null) return true; + while (index < length) { + code = advance(); + let next; - var max = data.length; + if (code === CHAR_BACKWARD_SLASH) { + backslashes = token.backslashes = true; + code = advance(); - return (max === 1 && data === '~') || - (max === 4 && (data === 'null' || data === 'Null' || data === 'NULL')); -} + if (code === CHAR_LEFT_CURLY_BRACE) { + braceEscaped = true; + } + continue; + } -function constructYamlNull() { - return null; -} + if (braceEscaped === true || code === CHAR_LEFT_CURLY_BRACE) { + braces++; -function isNull(object) { - return object === null; -} + while (eos() !== true && (code = advance())) { + if (code === CHAR_BACKWARD_SLASH) { + backslashes = token.backslashes = true; + advance(); + continue; + } -module.exports = new Type('tag:yaml.org,2002:null', { - kind: 'scalar', - resolve: resolveYamlNull, - construct: constructYamlNull, - predicate: isNull, - represent: { - canonical: function () { return '~'; }, - lowercase: function () { return 'null'; }, - uppercase: function () { return 'NULL'; }, - camelcase: function () { return 'Null'; } - }, - defaultStyle: 'lowercase' -}); + if (code === CHAR_LEFT_CURLY_BRACE) { + braces++; + continue; + } + if (braceEscaped !== true && code === CHAR_DOT && (code = advance()) === CHAR_DOT) { + isBrace = token.isBrace = true; + isGlob = token.isGlob = true; + finished = true; -/***/ }), + if (scanToEnd === true) { + continue; + } -/***/ 10604: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + break; + } + if (braceEscaped !== true && code === CHAR_COMMA) { + isBrace = token.isBrace = true; + isGlob = token.isGlob = true; + finished = true; + if (scanToEnd === true) { + continue; + } -var Type = __nccwpck_require__(2346); + break; + } -var _hasOwnProperty = Object.prototype.hasOwnProperty; -var _toString = Object.prototype.toString; + if (code === CHAR_RIGHT_CURLY_BRACE) { + braces--; -function resolveYamlOmap(data) { - if (data === null) return true; + if (braces === 0) { + braceEscaped = false; + isBrace = token.isBrace = true; + finished = true; + break; + } + } + } - var objectKeys = [], index, length, pair, pairKey, pairHasKey, - object = data; + if (scanToEnd === true) { + continue; + } - for (index = 0, length = object.length; index < length; index += 1) { - pair = object[index]; - pairHasKey = false; + break; + } - if (_toString.call(pair) !== '[object Object]') return false; + if (code === CHAR_FORWARD_SLASH) { + slashes.push(index); + tokens.push(token); + token = { value: '', depth: 0, isGlob: false }; - for (pairKey in pair) { - if (_hasOwnProperty.call(pair, pairKey)) { - if (!pairHasKey) pairHasKey = true; - else return false; + if (finished === true) continue; + if (prev === CHAR_DOT && index === (start + 1)) { + start += 2; + continue; } - } - if (!pairHasKey) return false; + lastIndex = index + 1; + continue; + } - if (objectKeys.indexOf(pairKey) === -1) objectKeys.push(pairKey); - else return false; - } + if (opts.noext !== true) { + const isExtglobChar = code === CHAR_PLUS + || code === CHAR_AT + || code === CHAR_ASTERISK + || code === CHAR_QUESTION_MARK + || code === CHAR_EXCLAMATION_MARK; - return true; -} + if (isExtglobChar === true && peek() === CHAR_LEFT_PARENTHESES) { + isGlob = token.isGlob = true; + isExtglob = token.isExtglob = true; + finished = true; + if (code === CHAR_EXCLAMATION_MARK && index === start) { + negatedExtglob = true; + } -function constructYamlOmap(data) { - return data !== null ? data : []; -} + if (scanToEnd === true) { + while (eos() !== true && (code = advance())) { + if (code === CHAR_BACKWARD_SLASH) { + backslashes = token.backslashes = true; + code = advance(); + continue; + } -module.exports = new Type('tag:yaml.org,2002:omap', { - kind: 'sequence', - resolve: resolveYamlOmap, - construct: constructYamlOmap -}); + if (code === CHAR_RIGHT_PARENTHESES) { + isGlob = token.isGlob = true; + finished = true; + break; + } + } + continue; + } + break; + } + } + if (code === CHAR_ASTERISK) { + if (prev === CHAR_ASTERISK) isGlobstar = token.isGlobstar = true; + isGlob = token.isGlob = true; + finished = true; -/***/ }), + if (scanToEnd === true) { + continue; + } + break; + } -/***/ 71176: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if (code === CHAR_QUESTION_MARK) { + isGlob = token.isGlob = true; + finished = true; + if (scanToEnd === true) { + continue; + } + break; + } + if (code === CHAR_LEFT_SQUARE_BRACKET) { + while (eos() !== true && (next = advance())) { + if (next === CHAR_BACKWARD_SLASH) { + backslashes = token.backslashes = true; + advance(); + continue; + } -var Type = __nccwpck_require__(2346); + if (next === CHAR_RIGHT_SQUARE_BRACKET) { + isBracket = token.isBracket = true; + isGlob = token.isGlob = true; + finished = true; + break; + } + } -var _toString = Object.prototype.toString; + if (scanToEnd === true) { + continue; + } -function resolveYamlPairs(data) { - if (data === null) return true; + break; + } - var index, length, pair, keys, result, - object = data; + if (opts.nonegate !== true && code === CHAR_EXCLAMATION_MARK && index === start) { + negated = token.negated = true; + start++; + continue; + } - result = new Array(object.length); + if (opts.noparen !== true && code === CHAR_LEFT_PARENTHESES) { + isGlob = token.isGlob = true; - for (index = 0, length = object.length; index < length; index += 1) { - pair = object[index]; + if (scanToEnd === true) { + while (eos() !== true && (code = advance())) { + if (code === CHAR_LEFT_PARENTHESES) { + backslashes = token.backslashes = true; + code = advance(); + continue; + } - if (_toString.call(pair) !== '[object Object]') return false; + if (code === CHAR_RIGHT_PARENTHESES) { + finished = true; + break; + } + } + continue; + } + break; + } - keys = Object.keys(pair); + if (isGlob === true) { + finished = true; - if (keys.length !== 1) return false; + if (scanToEnd === true) { + continue; + } - result[index] = [ keys[0], pair[keys[0]] ]; + break; + } } - return true; -} + if (opts.noext === true) { + isExtglob = false; + isGlob = false; + } -function constructYamlPairs(data) { - if (data === null) return []; + let base = str; + let prefix = ''; + let glob = ''; - var index, length, pair, keys, result, - object = data; + if (start > 0) { + prefix = str.slice(0, start); + str = str.slice(start); + lastIndex -= start; + } - result = new Array(object.length); + if (base && isGlob === true && lastIndex > 0) { + base = str.slice(0, lastIndex); + glob = str.slice(lastIndex); + } else if (isGlob === true) { + base = ''; + glob = str; + } else { + base = str; + } - for (index = 0, length = object.length; index < length; index += 1) { - pair = object[index]; + if (base && base !== '' && base !== '/' && base !== str) { + if (isPathSeparator(base.charCodeAt(base.length - 1))) { + base = base.slice(0, -1); + } + } - keys = Object.keys(pair); + if (opts.unescape === true) { + if (glob) glob = utils.removeBackslashes(glob); - result[index] = [ keys[0], pair[keys[0]] ]; + if (base && backslashes === true) { + base = utils.removeBackslashes(base); + } } - return result; -} + const state = { + prefix, + input, + start, + base, + glob, + isBrace, + isBracket, + isGlob, + isExtglob, + isGlobstar, + negated, + negatedExtglob + }; -module.exports = new Type('tag:yaml.org,2002:pairs', { - kind: 'sequence', - resolve: resolveYamlPairs, - construct: constructYamlPairs -}); + if (opts.tokens === true) { + state.maxDepth = 0; + if (!isPathSeparator(code)) { + tokens.push(token); + } + state.tokens = tokens; + } + if (opts.parts === true || opts.tokens === true) { + let prevIndex; -/***/ }), + for (let idx = 0; idx < slashes.length; idx++) { + const n = prevIndex ? prevIndex + 1 : start; + const i = slashes[idx]; + const value = input.slice(n, i); + if (opts.tokens) { + if (idx === 0 && start !== 0) { + tokens[idx].isPrefix = true; + tokens[idx].value = prefix; + } else { + tokens[idx].value = value; + } + depth(tokens[idx]); + state.maxDepth += tokens[idx].depth; + } + if (idx !== 0 || value !== '') { + parts.push(value); + } + prevIndex = i; + } -/***/ 81274: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + if (prevIndex && prevIndex + 1 < input.length) { + const value = input.slice(prevIndex + 1); + parts.push(value); + if (opts.tokens) { + tokens[tokens.length - 1].value = value; + depth(tokens[tokens.length - 1]); + state.maxDepth += tokens[tokens.length - 1].depth; + } + } + state.slashes = slashes; + state.parts = parts; + } -var Type = __nccwpck_require__(2346); + return state; +}; -module.exports = new Type('tag:yaml.org,2002:seq', { - kind: 'sequence', - construct: function (data) { return data !== null ? data : []; } -}); +module.exports = scan; /***/ }), -/***/ 44453: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - +/***/ 3753: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(2346); -var _hasOwnProperty = Object.prototype.hasOwnProperty; +const path = __nccwpck_require__(6928); +const win32 = process.platform === 'win32'; +const { + REGEX_BACKSLASH, + REGEX_REMOVE_BACKSLASH, + REGEX_SPECIAL_CHARS, + REGEX_SPECIAL_CHARS_GLOBAL +} = __nccwpck_require__(1237); -function resolveYamlSet(data) { - if (data === null) return true; +exports.isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val); +exports.hasRegexChars = str => REGEX_SPECIAL_CHARS.test(str); +exports.isRegexChar = str => str.length === 1 && exports.hasRegexChars(str); +exports.escapeRegex = str => str.replace(REGEX_SPECIAL_CHARS_GLOBAL, '\\$1'); +exports.toPosixSlashes = str => str.replace(REGEX_BACKSLASH, '/'); - var key, object = data; +exports.removeBackslashes = str => { + return str.replace(REGEX_REMOVE_BACKSLASH, match => { + return match === '\\' ? '' : match; + }); +}; - for (key in object) { - if (_hasOwnProperty.call(object, key)) { - if (object[key] !== null) return false; - } +exports.supportsLookbehinds = () => { + const segs = process.version.slice(1).split('.').map(Number); + if (segs.length === 3 && segs[0] >= 9 || (segs[0] === 8 && segs[1] >= 10)) { + return true; } + return false; +}; - return true; -} - -function constructYamlSet(data) { - return data !== null ? data : {}; -} - -module.exports = new Type('tag:yaml.org,2002:set', { - kind: 'mapping', - resolve: resolveYamlSet, - construct: constructYamlSet -}); +exports.isWindows = options => { + if (options && typeof options.windows === 'boolean') { + return options.windows; + } + return win32 === true || path.sep === '\\'; +}; +exports.escapeLast = (input, char, lastIdx) => { + const idx = input.lastIndexOf(char, lastIdx); + if (idx === -1) return input; + if (input[idx - 1] === '\\') return exports.escapeLast(input, char, idx - 1); + return `${input.slice(0, idx)}\\${input.slice(idx)}`; +}; -/***/ }), +exports.removePrefix = (input, state = {}) => { + let output = input; + if (output.startsWith('./')) { + output = output.slice(2); + state.prefix = './'; + } + return output; +}; -/***/ 1502: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +exports.wrapOutput = (input, state = {}, options = {}) => { + const prepend = options.contains ? '' : '^'; + const append = options.contains ? '' : '$'; + let output = `${prepend}(?:${input})${append}`; + if (state.negated === true) { + output = `(?:^(?!${output}).*$)`; + } + return output; +}; -var Type = __nccwpck_require__(2346); +/***/ }), -module.exports = new Type('tag:yaml.org,2002:str', { - kind: 'scalar', - construct: function (data) { return data !== null ? data : ''; } -}); +/***/ 9420: +/***/ ((module) => { -/***/ }), -/***/ 53173: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +const processFn = (fn, options) => function (...args) { + const P = options.promiseModule; + return new P((resolve, reject) => { + if (options.multiArgs) { + args.push((...result) => { + if (options.errorFirst) { + if (result[0]) { + reject(result); + } else { + result.shift(); + resolve(result); + } + } else { + resolve(result); + } + }); + } else if (options.errorFirst) { + args.push((error, result) => { + if (error) { + reject(error); + } else { + resolve(result); + } + }); + } else { + args.push(resolve); + } + fn.apply(this, args); + }); +}; -var Type = __nccwpck_require__(2346); +module.exports = (input, options) => { + options = Object.assign({ + exclude: [/.+(Sync|Stream)$/], + errorFirst: true, + promiseModule: Promise + }, options); -var YAML_DATE_REGEXP = new RegExp( - '^([0-9][0-9][0-9][0-9])' + // [1] year - '-([0-9][0-9])' + // [2] month - '-([0-9][0-9])$'); // [3] day + const objType = typeof input; + if (!(input !== null && (objType === 'object' || objType === 'function'))) { + throw new TypeError(`Expected \`input\` to be a \`Function\` or \`Object\`, got \`${input === null ? 'null' : objType}\``); + } -var YAML_TIMESTAMP_REGEXP = new RegExp( - '^([0-9][0-9][0-9][0-9])' + // [1] year - '-([0-9][0-9]?)' + // [2] month - '-([0-9][0-9]?)' + // [3] day - '(?:[Tt]|[ \\t]+)' + // ... - '([0-9][0-9]?)' + // [4] hour - ':([0-9][0-9])' + // [5] minute - ':([0-9][0-9])' + // [6] second - '(?:\\.([0-9]*))?' + // [7] fraction - '(?:[ \\t]*(Z|([-+])([0-9][0-9]?)' + // [8] tz [9] tz_sign [10] tz_hour - '(?::([0-9][0-9]))?))?$'); // [11] tz_minute + const filter = key => { + const match = pattern => typeof pattern === 'string' ? key === pattern : pattern.test(key); + return options.include ? options.include.some(match) : !options.exclude.some(match); + }; -function resolveYamlTimestamp(data) { - if (data === null) return false; - if (YAML_DATE_REGEXP.exec(data) !== null) return true; - if (YAML_TIMESTAMP_REGEXP.exec(data) !== null) return true; - return false; -} + let ret; + if (objType === 'function') { + ret = function (...args) { + return options.excludeMain ? input(...args) : processFn(input, options).apply(this, args); + }; + } else { + ret = Object.create(Object.getPrototypeOf(input)); + } -function constructYamlTimestamp(data) { - var match, year, month, day, hour, minute, second, fraction = 0, - delta = null, tz_hour, tz_minute, date; + for (const key in input) { // eslint-disable-line guard-for-in + const property = input[key]; + ret[key] = typeof property === 'function' && filter(key) ? processFn(property, options) : property; + } - match = YAML_DATE_REGEXP.exec(data); - if (match === null) match = YAML_TIMESTAMP_REGEXP.exec(data); + return ret; +}; - if (match === null) throw new Error('Date resolve error'); - // match: [1] year [2] month [3] day +/***/ }), - year = +(match[1]); - month = +(match[2]) - 1; // JS month starts with 0 - day = +(match[3]); +/***/ 1989: +/***/ ((module) => { - if (!match[4]) { // no hour - return new Date(Date.UTC(year, month, day)); - } +/*! queue-microtask. MIT License. Feross Aboukhadijeh */ +let promise - // match: [4] hour [5] minute [6] second [7] fraction +module.exports = typeof queueMicrotask === 'function' + ? queueMicrotask.bind(typeof window !== 'undefined' ? window : global) + // reuse resolved promise, and allocate it lazily + : cb => (promise || (promise = Promise.resolve())) + .then(cb) + .catch(err => setTimeout(() => { throw err }, 0)) - hour = +(match[4]); - minute = +(match[5]); - second = +(match[6]); - if (match[7]) { - fraction = match[7].slice(0, 3); - while (fraction.length < 3) { // milli-seconds - fraction += '0'; - } - fraction = +fraction; - } +/***/ }), - // match: [8] tz [9] tz_sign [10] tz_hour [11] tz_minute +/***/ 6143: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - if (match[9]) { - tz_hour = +(match[10]); - tz_minute = +(match[11] || 0); - delta = (tz_hour * 60 + tz_minute) * 60000; // delta in mili-seconds - if (match[9] === '-') delta = -delta; - } - date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction)); - if (delta) date.setTime(date.getTime() - delta); +const fs = __nccwpck_require__(8692) +const pify = __nccwpck_require__(9420) +const stripBom = __nccwpck_require__(4938) +const yaml = __nccwpck_require__(2301) - return date; -} +const parse = data => yaml.safeLoad(stripBom(data)) -function representYamlTimestamp(object /*, style*/) { - return object.toISOString(); -} +const readYamlFile = fp => pify(fs.readFile)(fp, 'utf8').then(data => parse(data)) -module.exports = new Type('tag:yaml.org,2002:timestamp', { - kind: 'scalar', - resolve: resolveYamlTimestamp, - construct: constructYamlTimestamp, - instanceOf: Date, - represent: representYamlTimestamp -}); +module.exports = readYamlFile +module.exports["default"] = readYamlFile +module.exports.sync = fp => parse(fs.readFileSync(fp, 'utf8')) /***/ }), -/***/ 14088: +/***/ 3728: /***/ ((module) => { @@ -30155,13 +27626,13 @@ module.exports = reusify /***/ }), -/***/ 90347: +/***/ 7906: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*! run-parallel. MIT License. Feross Aboukhadijeh */ module.exports = runParallel -const queueMicrotask = __nccwpck_require__(31843) +const queueMicrotask = __nccwpck_require__(1989) function runParallel (tasks, cb) { let results, pending, keys @@ -30213,7 +27684,7 @@ function runParallel (tasks, cb) { /***/ }), -/***/ 15895: +/***/ 402: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -30353,17 +27824,17 @@ class Comparator { module.exports = Comparator -const parseOptions = __nccwpck_require__(74464) -const { safeRe: re, t } = __nccwpck_require__(23227) -const cmp = __nccwpck_require__(55594) -const debug = __nccwpck_require__(28195) -const SemVer = __nccwpck_require__(69855) -const Range = __nccwpck_require__(32946) +const parseOptions = __nccwpck_require__(4141) +const { safeRe: re, t } = __nccwpck_require__(7515) +const cmp = __nccwpck_require__(5109) +const debug = __nccwpck_require__(8626) +const SemVer = __nccwpck_require__(5281) +const Range = __nccwpck_require__(6629) /***/ }), -/***/ 32946: +/***/ 6629: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -30582,21 +28053,21 @@ class Range { module.exports = Range -const LRU = __nccwpck_require__(5587) +const LRU = __nccwpck_require__(8412) const cache = new LRU() -const parseOptions = __nccwpck_require__(74464) -const Comparator = __nccwpck_require__(15895) -const debug = __nccwpck_require__(28195) -const SemVer = __nccwpck_require__(69855) +const parseOptions = __nccwpck_require__(4141) +const Comparator = __nccwpck_require__(402) +const debug = __nccwpck_require__(8626) +const SemVer = __nccwpck_require__(5281) const { safeRe: re, t, comparatorTrimReplace, tildeTrimReplace, caretTrimReplace, -} = __nccwpck_require__(23227) -const { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = __nccwpck_require__(1825) +} = __nccwpck_require__(7515) +const { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = __nccwpck_require__(2532) const isNullSet = c => c.value === '<0.0.0-0' const isAny = c => c.value === '' @@ -30927,17 +28398,17 @@ const testSet = (set, version, options) => { /***/ }), -/***/ 69855: +/***/ 5281: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const debug = __nccwpck_require__(28195) -const { MAX_LENGTH, MAX_SAFE_INTEGER } = __nccwpck_require__(1825) -const { safeRe: re, t } = __nccwpck_require__(23227) +const debug = __nccwpck_require__(8626) +const { MAX_LENGTH, MAX_SAFE_INTEGER } = __nccwpck_require__(2532) +const { safeRe: re, t } = __nccwpck_require__(7515) -const parseOptions = __nccwpck_require__(74464) -const { compareIdentifiers } = __nccwpck_require__(14192) +const parseOptions = __nccwpck_require__(4141) +const { compareIdentifiers } = __nccwpck_require__(6237) class SemVer { constructor (version, options) { options = parseOptions(options) @@ -31267,12 +28738,12 @@ module.exports = SemVer /***/ }), -/***/ 83307: +/***/ 9976: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const parse = __nccwpck_require__(15797) +const parse = __nccwpck_require__(8866) const clean = (version, options) => { const s = parse(version.trim().replace(/^[=v]+/, ''), options) return s ? s.version : null @@ -31282,17 +28753,17 @@ module.exports = clean /***/ }), -/***/ 55594: +/***/ 5109: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const eq = __nccwpck_require__(37014) -const neq = __nccwpck_require__(66186) -const gt = __nccwpck_require__(60955) -const gte = __nccwpck_require__(75048) -const lt = __nccwpck_require__(90004) -const lte = __nccwpck_require__(73329) +const eq = __nccwpck_require__(204) +const neq = __nccwpck_require__(8509) +const gt = __nccwpck_require__(8934) +const gte = __nccwpck_require__(9503) +const lt = __nccwpck_require__(4281) +const lte = __nccwpck_require__(4730) const cmp = (a, op, b, loose) => { switch (op) { @@ -31343,14 +28814,14 @@ module.exports = cmp /***/ }), -/***/ 13525: +/***/ 5144: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const SemVer = __nccwpck_require__(69855) -const parse = __nccwpck_require__(15797) -const { safeRe: re, t } = __nccwpck_require__(23227) +const SemVer = __nccwpck_require__(5281) +const parse = __nccwpck_require__(8866) +const { safeRe: re, t } = __nccwpck_require__(7515) const coerce = (version, options) => { if (version instanceof SemVer) { @@ -31412,12 +28883,12 @@ module.exports = coerce /***/ }), -/***/ 95204: +/***/ 9967: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const SemVer = __nccwpck_require__(69855) +const SemVer = __nccwpck_require__(5281) const compareBuild = (a, b, loose) => { const versionA = new SemVer(a, loose) const versionB = new SemVer(b, loose) @@ -31428,24 +28899,24 @@ module.exports = compareBuild /***/ }), -/***/ 98150: +/***/ 565: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const compare = __nccwpck_require__(66841) +const compare = __nccwpck_require__(238) const compareLoose = (a, b) => compare(a, b, true) module.exports = compareLoose /***/ }), -/***/ 66841: +/***/ 238: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const SemVer = __nccwpck_require__(69855) +const SemVer = __nccwpck_require__(5281) const compare = (a, b, loose) => new SemVer(a, loose).compare(new SemVer(b, loose)) @@ -31454,12 +28925,12 @@ module.exports = compare /***/ }), -/***/ 8515: +/***/ 8833: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const parse = __nccwpck_require__(15797) +const parse = __nccwpck_require__(8866) const diff = (version1, version2) => { const v1 = parse(version1, null, true) @@ -31521,48 +28992,48 @@ module.exports = diff /***/ }), -/***/ 37014: +/***/ 204: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const compare = __nccwpck_require__(66841) +const compare = __nccwpck_require__(238) const eq = (a, b, loose) => compare(a, b, loose) === 0 module.exports = eq /***/ }), -/***/ 60955: +/***/ 8934: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const compare = __nccwpck_require__(66841) +const compare = __nccwpck_require__(238) const gt = (a, b, loose) => compare(a, b, loose) > 0 module.exports = gt /***/ }), -/***/ 75048: +/***/ 9503: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const compare = __nccwpck_require__(66841) +const compare = __nccwpck_require__(238) const gte = (a, b, loose) => compare(a, b, loose) >= 0 module.exports = gte /***/ }), -/***/ 35542: +/***/ 4121: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const SemVer = __nccwpck_require__(69855) +const SemVer = __nccwpck_require__(5281) const inc = (version, release, options, identifier, identifierBase) => { if (typeof (options) === 'string') { @@ -31585,72 +29056,72 @@ module.exports = inc /***/ }), -/***/ 90004: +/***/ 4281: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const compare = __nccwpck_require__(66841) +const compare = __nccwpck_require__(238) const lt = (a, b, loose) => compare(a, b, loose) < 0 module.exports = lt /***/ }), -/***/ 73329: +/***/ 4730: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const compare = __nccwpck_require__(66841) +const compare = __nccwpck_require__(238) const lte = (a, b, loose) => compare(a, b, loose) <= 0 module.exports = lte /***/ }), -/***/ 70459: +/***/ 4864: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const SemVer = __nccwpck_require__(69855) +const SemVer = __nccwpck_require__(5281) const major = (a, loose) => new SemVer(a, loose).major module.exports = major /***/ }), -/***/ 20463: +/***/ 6108: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const SemVer = __nccwpck_require__(69855) +const SemVer = __nccwpck_require__(5281) const minor = (a, loose) => new SemVer(a, loose).minor module.exports = minor /***/ }), -/***/ 66186: +/***/ 8509: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const compare = __nccwpck_require__(66841) +const compare = __nccwpck_require__(238) const neq = (a, b, loose) => compare(a, b, loose) !== 0 module.exports = neq /***/ }), -/***/ 15797: +/***/ 8866: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const SemVer = __nccwpck_require__(69855) +const SemVer = __nccwpck_require__(5281) const parse = (version, options, throwErrors = false) => { if (version instanceof SemVer) { return version @@ -31670,24 +29141,24 @@ module.exports = parse /***/ }), -/***/ 80760: +/***/ 1475: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const SemVer = __nccwpck_require__(69855) +const SemVer = __nccwpck_require__(5281) const patch = (a, loose) => new SemVer(a, loose).patch module.exports = patch /***/ }), -/***/ 4686: +/***/ 6979: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const parse = __nccwpck_require__(15797) +const parse = __nccwpck_require__(8866) const prerelease = (version, options) => { const parsed = parse(version, options) return (parsed && parsed.prerelease.length) ? parsed.prerelease : null @@ -31697,36 +29168,36 @@ module.exports = prerelease /***/ }), -/***/ 29961: +/***/ 184: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const compare = __nccwpck_require__(66841) +const compare = __nccwpck_require__(238) const rcompare = (a, b, loose) => compare(b, a, loose) module.exports = rcompare /***/ }), -/***/ 3828: +/***/ 1903: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const compareBuild = __nccwpck_require__(95204) +const compareBuild = __nccwpck_require__(9967) const rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose)) module.exports = rsort /***/ }), -/***/ 17871: +/***/ 1672: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const Range = __nccwpck_require__(32946) +const Range = __nccwpck_require__(6629) const satisfies = (version, range, options) => { try { range = new Range(range, options) @@ -31740,24 +29211,24 @@ module.exports = satisfies /***/ }), -/***/ 98212: +/***/ 2849: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const compareBuild = __nccwpck_require__(95204) +const compareBuild = __nccwpck_require__(9967) const sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose)) module.exports = sort /***/ }), -/***/ 76432: +/***/ 1399: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const parse = __nccwpck_require__(15797) +const parse = __nccwpck_require__(8866) const valid = (version, options) => { const v = parse(version, options) return v ? v.version : null @@ -31767,53 +29238,53 @@ module.exports = valid /***/ }), -/***/ 90084: +/***/ 4423: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // just pre-load all the stuff that index.js lazily exports -const internalRe = __nccwpck_require__(23227) -const constants = __nccwpck_require__(1825) -const SemVer = __nccwpck_require__(69855) -const identifiers = __nccwpck_require__(14192) -const parse = __nccwpck_require__(15797) -const valid = __nccwpck_require__(76432) -const clean = __nccwpck_require__(83307) -const inc = __nccwpck_require__(35542) -const diff = __nccwpck_require__(8515) -const major = __nccwpck_require__(70459) -const minor = __nccwpck_require__(20463) -const patch = __nccwpck_require__(80760) -const prerelease = __nccwpck_require__(4686) -const compare = __nccwpck_require__(66841) -const rcompare = __nccwpck_require__(29961) -const compareLoose = __nccwpck_require__(98150) -const compareBuild = __nccwpck_require__(95204) -const sort = __nccwpck_require__(98212) -const rsort = __nccwpck_require__(3828) -const gt = __nccwpck_require__(60955) -const lt = __nccwpck_require__(90004) -const eq = __nccwpck_require__(37014) -const neq = __nccwpck_require__(66186) -const gte = __nccwpck_require__(75048) -const lte = __nccwpck_require__(73329) -const cmp = __nccwpck_require__(55594) -const coerce = __nccwpck_require__(13525) -const Comparator = __nccwpck_require__(15895) -const Range = __nccwpck_require__(32946) -const satisfies = __nccwpck_require__(17871) -const toComparators = __nccwpck_require__(378) -const maxSatisfying = __nccwpck_require__(77501) -const minSatisfying = __nccwpck_require__(16191) -const minVersion = __nccwpck_require__(65358) -const validRange = __nccwpck_require__(23381) -const outside = __nccwpck_require__(35052) -const gtr = __nccwpck_require__(98736) -const ltr = __nccwpck_require__(83913) -const intersects = __nccwpck_require__(73141) -const simplifyRange = __nccwpck_require__(70904) -const subset = __nccwpck_require__(44365) +const internalRe = __nccwpck_require__(7515) +const constants = __nccwpck_require__(2532) +const SemVer = __nccwpck_require__(5281) +const identifiers = __nccwpck_require__(6237) +const parse = __nccwpck_require__(8866) +const valid = __nccwpck_require__(1399) +const clean = __nccwpck_require__(9976) +const inc = __nccwpck_require__(4121) +const diff = __nccwpck_require__(8833) +const major = __nccwpck_require__(4864) +const minor = __nccwpck_require__(6108) +const patch = __nccwpck_require__(1475) +const prerelease = __nccwpck_require__(6979) +const compare = __nccwpck_require__(238) +const rcompare = __nccwpck_require__(184) +const compareLoose = __nccwpck_require__(565) +const compareBuild = __nccwpck_require__(9967) +const sort = __nccwpck_require__(2849) +const rsort = __nccwpck_require__(1903) +const gt = __nccwpck_require__(8934) +const lt = __nccwpck_require__(4281) +const eq = __nccwpck_require__(204) +const neq = __nccwpck_require__(8509) +const gte = __nccwpck_require__(9503) +const lte = __nccwpck_require__(4730) +const cmp = __nccwpck_require__(5109) +const coerce = __nccwpck_require__(5144) +const Comparator = __nccwpck_require__(402) +const Range = __nccwpck_require__(6629) +const satisfies = __nccwpck_require__(1672) +const toComparators = __nccwpck_require__(4549) +const maxSatisfying = __nccwpck_require__(2106) +const minSatisfying = __nccwpck_require__(4512) +const minVersion = __nccwpck_require__(9995) +const validRange = __nccwpck_require__(236) +const outside = __nccwpck_require__(8153) +const gtr = __nccwpck_require__(9617) +const ltr = __nccwpck_require__(7944) +const intersects = __nccwpck_require__(1858) +const simplifyRange = __nccwpck_require__(919) +const subset = __nccwpck_require__(5670) module.exports = { parse, valid, @@ -31865,7 +29336,7 @@ module.exports = { /***/ }), -/***/ 1825: +/***/ 2532: /***/ ((module) => { @@ -31909,7 +29380,7 @@ module.exports = { /***/ }), -/***/ 28195: +/***/ 8626: /***/ ((module) => { @@ -31927,7 +29398,7 @@ module.exports = debug /***/ }), -/***/ 14192: +/***/ 6237: /***/ ((module) => { @@ -31963,7 +29434,7 @@ module.exports = { /***/ }), -/***/ 5587: +/***/ 8412: /***/ ((module) => { @@ -32012,7 +29483,7 @@ module.exports = LRUCache /***/ }), -/***/ 74464: +/***/ 4141: /***/ ((module) => { @@ -32036,7 +29507,7 @@ module.exports = parseOptions /***/ }), -/***/ 23227: +/***/ 7515: /***/ ((module, exports, __nccwpck_require__) => { @@ -32045,8 +29516,8 @@ const { MAX_SAFE_COMPONENT_LENGTH, MAX_SAFE_BUILD_LENGTH, MAX_LENGTH, -} = __nccwpck_require__(1825) -const debug = __nccwpck_require__(28195) +} = __nccwpck_require__(2532) +const debug = __nccwpck_require__(8626) exports = module.exports = {} // The actual regexps go on exports.re @@ -32266,25 +29737,25 @@ createToken('GTE0PRE', '^\\s*>=\\s*0\\.0\\.0-0\\s*$') /***/ }), -/***/ 98736: +/***/ 9617: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Determine if version is greater than all the versions possible in the range. -const outside = __nccwpck_require__(35052) +const outside = __nccwpck_require__(8153) const gtr = (version, range, options) => outside(version, range, '>', options) module.exports = gtr /***/ }), -/***/ 73141: +/***/ 1858: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const Range = __nccwpck_require__(32946) +const Range = __nccwpck_require__(6629) const intersects = (r1, r2, options) => { r1 = new Range(r1, options) r2 = new Range(r2, options) @@ -32295,12 +29766,12 @@ module.exports = intersects /***/ }), -/***/ 83913: +/***/ 7944: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const outside = __nccwpck_require__(35052) +const outside = __nccwpck_require__(8153) // Determine if version is less than all the versions possible in the range const ltr = (version, range, options) => outside(version, range, '<', options) module.exports = ltr @@ -32308,13 +29779,13 @@ module.exports = ltr /***/ }), -/***/ 77501: +/***/ 2106: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const SemVer = __nccwpck_require__(69855) -const Range = __nccwpck_require__(32946) +const SemVer = __nccwpck_require__(5281) +const Range = __nccwpck_require__(6629) const maxSatisfying = (versions, range, options) => { let max = null @@ -32342,13 +29813,13 @@ module.exports = maxSatisfying /***/ }), -/***/ 16191: +/***/ 4512: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const SemVer = __nccwpck_require__(69855) -const Range = __nccwpck_require__(32946) +const SemVer = __nccwpck_require__(5281) +const Range = __nccwpck_require__(6629) const minSatisfying = (versions, range, options) => { let min = null let minSV = null @@ -32375,14 +29846,14 @@ module.exports = minSatisfying /***/ }), -/***/ 65358: +/***/ 9995: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const SemVer = __nccwpck_require__(69855) -const Range = __nccwpck_require__(32946) -const gt = __nccwpck_require__(60955) +const SemVer = __nccwpck_require__(5281) +const Range = __nccwpck_require__(6629) +const gt = __nccwpck_require__(8934) const minVersion = (range, loose) => { range = new Range(range, loose) @@ -32445,20 +29916,20 @@ module.exports = minVersion /***/ }), -/***/ 35052: +/***/ 8153: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const SemVer = __nccwpck_require__(69855) -const Comparator = __nccwpck_require__(15895) +const SemVer = __nccwpck_require__(5281) +const Comparator = __nccwpck_require__(402) const { ANY } = Comparator -const Range = __nccwpck_require__(32946) -const satisfies = __nccwpck_require__(17871) -const gt = __nccwpck_require__(60955) -const lt = __nccwpck_require__(90004) -const lte = __nccwpck_require__(73329) -const gte = __nccwpck_require__(75048) +const Range = __nccwpck_require__(6629) +const satisfies = __nccwpck_require__(1672) +const gt = __nccwpck_require__(8934) +const lt = __nccwpck_require__(4281) +const lte = __nccwpck_require__(4730) +const gte = __nccwpck_require__(9503) const outside = (version, range, hilo, options) => { version = new SemVer(version, options) @@ -32534,7 +30005,7 @@ module.exports = outside /***/ }), -/***/ 70904: +/***/ 919: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -32542,8 +30013,8 @@ module.exports = outside // given a set of versions and a range, create a "simplified" range // that includes the same versions that the original range does // If the original range is shorter than the simplified one, return that. -const satisfies = __nccwpck_require__(17871) -const compare = __nccwpck_require__(66841) +const satisfies = __nccwpck_require__(1672) +const compare = __nccwpck_require__(238) module.exports = (versions, range, options) => { const set = [] let first = null @@ -32590,16 +30061,16 @@ module.exports = (versions, range, options) => { /***/ }), -/***/ 44365: +/***/ 5670: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const Range = __nccwpck_require__(32946) -const Comparator = __nccwpck_require__(15895) +const Range = __nccwpck_require__(6629) +const Comparator = __nccwpck_require__(402) const { ANY } = Comparator -const satisfies = __nccwpck_require__(17871) -const compare = __nccwpck_require__(66841) +const satisfies = __nccwpck_require__(1672) +const compare = __nccwpck_require__(238) // Complex range `r1 || r2 || ...` is a subset of `R1 || R2 || ...` iff: // - Every simple range `r1, r2, ...` is a null set, OR @@ -32846,12 +30317,12 @@ module.exports = subset /***/ }), -/***/ 378: +/***/ 4549: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const Range = __nccwpck_require__(32946) +const Range = __nccwpck_require__(6629) // Mostly just for testing and legacy API reasons const toComparators = (range, options) => @@ -32863,12 +30334,12 @@ module.exports = toComparators /***/ }), -/***/ 23381: +/***/ 236: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const Range = __nccwpck_require__(32946) +const Range = __nccwpck_require__(6629) const validRange = (range, options) => { try { // Return '*' instead of '' so that truthiness works. @@ -32883,11 +30354,11 @@ module.exports = validRange /***/ }), -/***/ 72668: +/***/ 4881: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const shebangRegex = __nccwpck_require__(43570); +const shebangRegex = __nccwpck_require__(1940); module.exports = (string = '') => { const match = string.match(shebangRegex); @@ -32909,7 +30380,7 @@ module.exports = (string = '') => { /***/ }), -/***/ 43570: +/***/ 1940: /***/ ((module) => { @@ -32918,7 +30389,276 @@ module.exports = /^#!(.*)/; /***/ }), -/***/ 85737: +/***/ 6821: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + +// Note: since nyc uses this module to output coverage, any lines +// that are in the direct sync flow of nyc's outputCoverage are +// ignored, since we can never get coverage for them. +// grab a reference to node's real process object right away +var process = global.process + +const processOk = function (process) { + return process && + typeof process === 'object' && + typeof process.removeListener === 'function' && + typeof process.emit === 'function' && + typeof process.reallyExit === 'function' && + typeof process.listeners === 'function' && + typeof process.kill === 'function' && + typeof process.pid === 'number' && + typeof process.on === 'function' +} + +// some kind of non-node environment, just no-op +/* istanbul ignore if */ +if (!processOk(process)) { + module.exports = function () { + return function () {} + } +} else { + var assert = __nccwpck_require__(2613) + var signals = __nccwpck_require__(9932) + var isWin = /^win/i.test(process.platform) + + var EE = __nccwpck_require__(4434) + /* istanbul ignore if */ + if (typeof EE !== 'function') { + EE = EE.EventEmitter + } + + var emitter + if (process.__signal_exit_emitter__) { + emitter = process.__signal_exit_emitter__ + } else { + emitter = process.__signal_exit_emitter__ = new EE() + emitter.count = 0 + emitter.emitted = {} + } + + // Because this emitter is a global, we have to check to see if a + // previous version of this library failed to enable infinite listeners. + // I know what you're about to say. But literally everything about + // signal-exit is a compromise with evil. Get used to it. + if (!emitter.infinite) { + emitter.setMaxListeners(Infinity) + emitter.infinite = true + } + + module.exports = function (cb, opts) { + /* istanbul ignore if */ + if (!processOk(global.process)) { + return function () {} + } + assert.equal(typeof cb, 'function', 'a callback must be provided for exit handler') + + if (loaded === false) { + load() + } + + var ev = 'exit' + if (opts && opts.alwaysLast) { + ev = 'afterexit' + } + + var remove = function () { + emitter.removeListener(ev, cb) + if (emitter.listeners('exit').length === 0 && + emitter.listeners('afterexit').length === 0) { + unload() + } + } + emitter.on(ev, cb) + + return remove + } + + var unload = function unload () { + if (!loaded || !processOk(global.process)) { + return + } + loaded = false + + signals.forEach(function (sig) { + try { + process.removeListener(sig, sigListeners[sig]) + } catch (er) {} + }) + process.emit = originalProcessEmit + process.reallyExit = originalProcessReallyExit + emitter.count -= 1 + } + module.exports.unload = unload + + var emit = function emit (event, code, signal) { + /* istanbul ignore if */ + if (emitter.emitted[event]) { + return + } + emitter.emitted[event] = true + emitter.emit(event, code, signal) + } + + // { : , ... } + var sigListeners = {} + signals.forEach(function (sig) { + sigListeners[sig] = function listener () { + /* istanbul ignore if */ + if (!processOk(global.process)) { + return + } + // If there are no other listeners, an exit is coming! + // Simplest way: remove us and then re-send the signal. + // We know that this will kill the process, so we can + // safely emit now. + var listeners = process.listeners(sig) + if (listeners.length === emitter.count) { + unload() + emit('exit', null, sig) + /* istanbul ignore next */ + emit('afterexit', null, sig) + /* istanbul ignore next */ + if (isWin && sig === 'SIGHUP') { + // "SIGHUP" throws an `ENOSYS` error on Windows, + // so use a supported signal instead + sig = 'SIGINT' + } + /* istanbul ignore next */ + process.kill(process.pid, sig) + } + } + }) + + module.exports.signals = function () { + return signals + } + + var loaded = false + + var load = function load () { + if (loaded || !processOk(global.process)) { + return + } + loaded = true + + // This is the number of onSignalExit's that are in play. + // It's important so that we can count the correct number of + // listeners on signals, and don't wait for the other one to + // handle it instead of us. + emitter.count += 1 + + signals = signals.filter(function (sig) { + try { + process.on(sig, sigListeners[sig]) + return true + } catch (er) { + return false + } + }) + + process.emit = processEmit + process.reallyExit = processReallyExit + } + module.exports.load = load + + var originalProcessReallyExit = process.reallyExit + var processReallyExit = function processReallyExit (code) { + /* istanbul ignore if */ + if (!processOk(global.process)) { + return + } + process.exitCode = code || /* istanbul ignore next */ 0 + emit('exit', process.exitCode, null) + /* istanbul ignore next */ + emit('afterexit', process.exitCode, null) + /* istanbul ignore next */ + originalProcessReallyExit.call(process, process.exitCode) + } + + var originalProcessEmit = process.emit + var processEmit = function processEmit (ev, arg) { + if (ev === 'exit' && processOk(global.process)) { + /* istanbul ignore else */ + if (arg !== undefined) { + process.exitCode = arg + } + var ret = originalProcessEmit.apply(this, arguments) + /* istanbul ignore next */ + emit('exit', process.exitCode, null) + /* istanbul ignore next */ + emit('afterexit', process.exitCode, null) + /* istanbul ignore next */ + return ret + } else { + return originalProcessEmit.apply(this, arguments) + } + } +} + + +/***/ }), + +/***/ 9932: +/***/ ((module) => { + +// This is not the set of all possible signals. +// +// It IS, however, the set of all signals that trigger +// an exit on either Linux or BSD systems. Linux is a +// superset of the signal names supported on BSD, and +// the unknown signals just fail to register, so we can +// catch that easily enough. +// +// Don't bother with SIGKILL. It's uncatchable, which +// means that we can't fire any callbacks anyway. +// +// If a user does happen to register a handler on a non- +// fatal signal like SIGWINCH or something, and then +// exit, it'll end up firing `process.emit('exit')`, so +// the handler will be fired anyway. +// +// SIGBUS, SIGFPE, SIGSEGV and SIGILL, when not raised +// artificially, inherently leave the process in a +// state from which it is not safe to try and enter JS +// listeners. +module.exports = [ + 'SIGABRT', + 'SIGALRM', + 'SIGHUP', + 'SIGINT', + 'SIGTERM' +] + +if (process.platform !== 'win32') { + module.exports.push( + 'SIGVTALRM', + 'SIGXCPU', + 'SIGXFSZ', + 'SIGUSR2', + 'SIGTRAP', + 'SIGSYS', + 'SIGQUIT', + 'SIGIOT' + // should detect profiler and enable/disable accordingly. + // see #21 + // 'SIGPROF' + ) +} + +if (process.platform === 'linux') { + module.exports.push( + 'SIGIO', + 'SIGPOLL', + 'SIGPWR', + 'SIGSTKFLT', + 'SIGUNUSED' + ) +} + + +/***/ }), + +/***/ 5882: /***/ ((module) => { @@ -32936,15 +30676,15 @@ module.exports = path => { /***/ }), -/***/ 51114: +/***/ 2841: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // @flow -const crossSpawn = __nccwpck_require__(24422); -const { onExit } = __nccwpck_require__(91328) -const EventEmitter = __nccwpck_require__(24434); -const ChildProcessPromise = __nccwpck_require__(21543); +const crossSpawn = __nccwpck_require__(670); +const { onExit } = __nccwpck_require__(5767) +const EventEmitter = __nccwpck_require__(4434); +const ChildProcessPromise = __nccwpck_require__(304); const activeProcesses = new Set(); @@ -32998,11 +30738,11 @@ module.exports.ChildProcessPromise = ChildProcessPromise; /***/ }), -/***/ 21543: +/***/ 304: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const EventEmitter = __nccwpck_require__(24434); +const EventEmitter = __nccwpck_require__(4434); class ChildProcessPromise extends Promise { constructor(executer) { @@ -33025,7 +30765,7 @@ module.exports = ChildProcessPromise; /***/ }), -/***/ 64589: +/***/ 4938: /***/ ((module) => { @@ -33046,7 +30786,7 @@ module.exports = x => { /***/ }), -/***/ 68282: +/***/ 3757: /***/ ((module) => { @@ -33069,7 +30809,7 @@ module.exports = input => { /***/ }), -/***/ 54395: +/***/ 743: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*! @@ -33081,7 +30821,7 @@ module.exports = input => { -const isNumber = __nccwpck_require__(97850); +const isNumber = __nccwpck_require__(952); const toRegexRange = (min, max, options) => { if (isNumber(min) === false) { @@ -33364,27 +31104,27 @@ module.exports = toRegexRange; /***/ }), -/***/ 5070: +/***/ 7285: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -/* unused reexport */ __nccwpck_require__(35862); +/* unused reexport */ __nccwpck_require__(8703); /***/ }), -/***/ 35862: +/***/ 8703: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { var __webpack_unused_export__; -var net = __nccwpck_require__(69278); -var tls = __nccwpck_require__(64756); -var http = __nccwpck_require__(58611); -var https = __nccwpck_require__(65692); -var events = __nccwpck_require__(24434); -var assert = __nccwpck_require__(42613); -var util = __nccwpck_require__(39023); +var net = __nccwpck_require__(9278); +var tls = __nccwpck_require__(4756); +var http = __nccwpck_require__(8611); +var https = __nccwpck_require__(5692); +var events = __nccwpck_require__(4434); +var assert = __nccwpck_require__(2613); +var util = __nccwpck_require__(9023); __webpack_unused_export__ = httpOverHttp; @@ -33644,34 +31384,34 @@ __webpack_unused_export__ = debug; // for test /***/ }), -/***/ 61684: +/***/ 4906: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { var __webpack_unused_export__; -const Client = __nccwpck_require__(71313) -const Dispatcher = __nccwpck_require__(33415) -const Pool = __nccwpck_require__(5928) -const BalancedPool = __nccwpck_require__(66681) -const Agent = __nccwpck_require__(61745) -const ProxyAgent = __nccwpck_require__(17508) -const EnvHttpProxyAgent = __nccwpck_require__(49221) -const RetryAgent = __nccwpck_require__(40334) -const errors = __nccwpck_require__(53959) -const util = __nccwpck_require__(89500) +const Client = __nccwpck_require__(979) +const Dispatcher = __nccwpck_require__(7029) +const Pool = __nccwpck_require__(9610) +const BalancedPool = __nccwpck_require__(7475) +const Agent = __nccwpck_require__(7823) +const ProxyAgent = __nccwpck_require__(826) +const EnvHttpProxyAgent = __nccwpck_require__(2935) +const RetryAgent = __nccwpck_require__(5308) +const errors = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) const { InvalidArgumentError } = errors -const api = __nccwpck_require__(82531) -const buildConnector = __nccwpck_require__(91332) -const MockClient = __nccwpck_require__(72361) -const MockAgent = __nccwpck_require__(77017) -const MockPool = __nccwpck_require__(36480) -const mockErrors = __nccwpck_require__(12673) -const RetryHandler = __nccwpck_require__(74004) -const { getGlobalDispatcher, setGlobalDispatcher } = __nccwpck_require__(61481) -const DecoratorHandler = __nccwpck_require__(99151) -const RedirectHandler = __nccwpck_require__(67158) -const createRedirectInterceptor = __nccwpck_require__(11576) +const api = __nccwpck_require__(3797) +const buildConnector = __nccwpck_require__(46) +const MockClient = __nccwpck_require__(6899) +const MockAgent = __nccwpck_require__(2527) +const MockPool = __nccwpck_require__(7226) +const mockErrors = __nccwpck_require__(2863) +const RetryHandler = __nccwpck_require__(1450) +const { getGlobalDispatcher, setGlobalDispatcher } = __nccwpck_require__(8707) +const DecoratorHandler = __nccwpck_require__(801) +const RedirectHandler = __nccwpck_require__(1932) +const createRedirectInterceptor = __nccwpck_require__(7958) Object.assign(Dispatcher.prototype, api) @@ -33689,10 +31429,10 @@ __webpack_unused_export__ = DecoratorHandler __webpack_unused_export__ = RedirectHandler __webpack_unused_export__ = createRedirectInterceptor __webpack_unused_export__ = { - redirect: __nccwpck_require__(17734), - retry: __nccwpck_require__(65486), - dump: __nccwpck_require__(45376), - dns: __nccwpck_require__(64287) + redirect: __nccwpck_require__(3184), + retry: __nccwpck_require__(5904), + dump: __nccwpck_require__(4166), + dns: __nccwpck_require__(4289) } __webpack_unused_export__ = buildConnector @@ -33754,7 +31494,7 @@ function makeDispatcher (fn) { __webpack_unused_export__ = setGlobalDispatcher __webpack_unused_export__ = getGlobalDispatcher -const fetchImpl = (__nccwpck_require__(64202).fetch) +const fetchImpl = (__nccwpck_require__(224).fetch) __webpack_unused_export__ = async function fetch (init, options = undefined) { try { return await fetchImpl(init, options) @@ -33766,39 +31506,39 @@ __webpack_unused_export__ = async function fetch (init, options = undefined) { throw err } } -/* unused reexport */ __nccwpck_require__(13408).Headers -/* unused reexport */ __nccwpck_require__(87287).Response -/* unused reexport */ __nccwpck_require__(19683).Request -/* unused reexport */ __nccwpck_require__(63818).FormData +/* unused reexport */ __nccwpck_require__(8146).Headers +/* unused reexport */ __nccwpck_require__(2873).Response +/* unused reexport */ __nccwpck_require__(557).Request +/* unused reexport */ __nccwpck_require__(8932).FormData __webpack_unused_export__ = globalThis.File ?? (__nccwpck_require__(4573).File) -/* unused reexport */ __nccwpck_require__(66575).FileReader +/* unused reexport */ __nccwpck_require__(7669).FileReader -const { setGlobalOrigin, getGlobalOrigin } = __nccwpck_require__(65311) +const { setGlobalOrigin, getGlobalOrigin } = __nccwpck_require__(777) __webpack_unused_export__ = setGlobalOrigin __webpack_unused_export__ = getGlobalOrigin -const { CacheStorage } = __nccwpck_require__(56577) -const { kConstruct } = __nccwpck_require__(8329) +const { CacheStorage } = __nccwpck_require__(4215) +const { kConstruct } = __nccwpck_require__(7747) // Cache & CacheStorage are tightly coupled with fetch. Even if it may run // in an older version of Node, it doesn't have any use without fetch. __webpack_unused_export__ = new CacheStorage(kConstruct) -const { deleteCookie, getCookies, getSetCookies, setCookie } = __nccwpck_require__(67889) +const { deleteCookie, getCookies, getSetCookies, setCookie } = __nccwpck_require__(8659) __webpack_unused_export__ = deleteCookie __webpack_unused_export__ = getCookies __webpack_unused_export__ = getSetCookies __webpack_unused_export__ = setCookie -const { parseMIMEType, serializeAMimeType } = __nccwpck_require__(50192) +const { parseMIMEType, serializeAMimeType } = __nccwpck_require__(8394) __webpack_unused_export__ = parseMIMEType __webpack_unused_export__ = serializeAMimeType -const { CloseEvent, ErrorEvent, MessageEvent } = __nccwpck_require__(26760) -/* unused reexport */ __nccwpck_require__(2522).WebSocket +const { CloseEvent, ErrorEvent, MessageEvent } = __nccwpck_require__(7690) +/* unused reexport */ __nccwpck_require__(7836).WebSocket __webpack_unused_export__ = CloseEvent __webpack_unused_export__ = ErrorEvent __webpack_unused_export__ = MessageEvent @@ -33814,18 +31554,18 @@ __webpack_unused_export__ = MockPool __webpack_unused_export__ = MockAgent __webpack_unused_export__ = mockErrors -const { EventSource } = __nccwpck_require__(37042) +const { EventSource } = __nccwpck_require__(3276) __webpack_unused_export__ = EventSource /***/ }), -/***/ 52730: +/***/ 6756: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { addAbortListener } = __nccwpck_require__(89500) -const { RequestAbortedError } = __nccwpck_require__(53959) +const { addAbortListener } = __nccwpck_require__(7662) +const { RequestAbortedError } = __nccwpck_require__(5933) const kListener = Symbol('kListener') const kSignal = Symbol('kSignal') @@ -33885,16 +31625,16 @@ module.exports = { /***/ }), -/***/ 73192: +/***/ 7530: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const assert = __nccwpck_require__(34589) -const { AsyncResource } = __nccwpck_require__(16698) -const { InvalidArgumentError, SocketError } = __nccwpck_require__(53959) -const util = __nccwpck_require__(89500) -const { addSignal, removeSignal } = __nccwpck_require__(52730) +const assert = __nccwpck_require__(4589) +const { AsyncResource } = __nccwpck_require__(6698) +const { InvalidArgumentError, SocketError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { addSignal, removeSignal } = __nccwpck_require__(6756) class ConnectHandler extends AsyncResource { constructor (opts, callback) { @@ -34000,7 +31740,7 @@ module.exports = connect /***/ }), -/***/ 62466: +/***/ 8656: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -34009,16 +31749,16 @@ const { Readable, Duplex, PassThrough -} = __nccwpck_require__(57075) +} = __nccwpck_require__(7075) const { InvalidArgumentError, InvalidReturnValueError, RequestAbortedError -} = __nccwpck_require__(53959) -const util = __nccwpck_require__(89500) -const { AsyncResource } = __nccwpck_require__(16698) -const { addSignal, removeSignal } = __nccwpck_require__(52730) -const assert = __nccwpck_require__(34589) +} = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { AsyncResource } = __nccwpck_require__(6698) +const { addSignal, removeSignal } = __nccwpck_require__(6756) +const assert = __nccwpck_require__(4589) const kResume = Symbol('resume') @@ -34258,17 +31998,17 @@ module.exports = pipeline /***/ }), -/***/ 50887: +/***/ 7157: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const assert = __nccwpck_require__(34589) -const { Readable } = __nccwpck_require__(38947) -const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(53959) -const util = __nccwpck_require__(89500) -const { getResolveErrorBodyCallback } = __nccwpck_require__(80363) -const { AsyncResource } = __nccwpck_require__(16698) +const assert = __nccwpck_require__(4589) +const { Readable } = __nccwpck_require__(2797) +const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { getResolveErrorBodyCallback } = __nccwpck_require__(3877) +const { AsyncResource } = __nccwpck_require__(6698) class RequestHandler extends AsyncResource { constructor (opts, callback) { @@ -34479,18 +32219,18 @@ module.exports.RequestHandler = RequestHandler /***/ }), -/***/ 44388: +/***/ 3718: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const assert = __nccwpck_require__(34589) -const { finished, PassThrough } = __nccwpck_require__(57075) -const { InvalidArgumentError, InvalidReturnValueError } = __nccwpck_require__(53959) -const util = __nccwpck_require__(89500) -const { getResolveErrorBodyCallback } = __nccwpck_require__(80363) -const { AsyncResource } = __nccwpck_require__(16698) -const { addSignal, removeSignal } = __nccwpck_require__(52730) +const assert = __nccwpck_require__(4589) +const { finished, PassThrough } = __nccwpck_require__(7075) +const { InvalidArgumentError, InvalidReturnValueError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { getResolveErrorBodyCallback } = __nccwpck_require__(3877) +const { AsyncResource } = __nccwpck_require__(6698) +const { addSignal, removeSignal } = __nccwpck_require__(6756) class StreamHandler extends AsyncResource { constructor (opts, factory, callback) { @@ -34706,16 +32446,16 @@ module.exports = stream /***/ }), -/***/ 56342: +/***/ 9764: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { InvalidArgumentError, SocketError } = __nccwpck_require__(53959) -const { AsyncResource } = __nccwpck_require__(16698) -const util = __nccwpck_require__(89500) -const { addSignal, removeSignal } = __nccwpck_require__(52730) -const assert = __nccwpck_require__(34589) +const { InvalidArgumentError, SocketError } = __nccwpck_require__(5933) +const { AsyncResource } = __nccwpck_require__(6698) +const util = __nccwpck_require__(7662) +const { addSignal, removeSignal } = __nccwpck_require__(6756) +const assert = __nccwpck_require__(4589) class UpgradeHandler extends AsyncResource { constructor (opts, callback) { @@ -34821,32 +32561,32 @@ module.exports = upgrade /***/ }), -/***/ 82531: +/***/ 3797: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -module.exports.request = __nccwpck_require__(50887) -module.exports.stream = __nccwpck_require__(44388) -module.exports.pipeline = __nccwpck_require__(62466) -module.exports.upgrade = __nccwpck_require__(56342) -module.exports.connect = __nccwpck_require__(73192) +module.exports.request = __nccwpck_require__(7157) +module.exports.stream = __nccwpck_require__(3718) +module.exports.pipeline = __nccwpck_require__(8656) +module.exports.upgrade = __nccwpck_require__(9764) +module.exports.connect = __nccwpck_require__(7530) /***/ }), -/***/ 38947: +/***/ 2797: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Ported from https://github.com/nodejs/undici/pull/907 -const assert = __nccwpck_require__(34589) -const { Readable } = __nccwpck_require__(57075) -const { RequestAbortedError, NotSupportedError, InvalidArgumentError, AbortError } = __nccwpck_require__(53959) -const util = __nccwpck_require__(89500) -const { ReadableStreamFrom } = __nccwpck_require__(89500) +const assert = __nccwpck_require__(4589) +const { Readable } = __nccwpck_require__(7075) +const { RequestAbortedError, NotSupportedError, InvalidArgumentError, AbortError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { ReadableStreamFrom } = __nccwpck_require__(7662) const kConsume = Symbol('kConsume') const kReading = Symbol('kReading') @@ -35227,15 +32967,15 @@ module.exports = { Readable: BodyReadable, chunksDecode } /***/ }), -/***/ 80363: +/***/ 3877: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const assert = __nccwpck_require__(34589) +const assert = __nccwpck_require__(4589) const { ResponseStatusCodeError -} = __nccwpck_require__(53959) +} = __nccwpck_require__(5933) -const { chunksDecode } = __nccwpck_require__(38947) +const { chunksDecode } = __nccwpck_require__(2797) const CHUNK_LIMIT = 128 * 1024 async function getResolveErrorBodyCallback ({ callback, body, contentType, statusCode, statusMessage, headers }) { @@ -35327,16 +33067,16 @@ module.exports = { /***/ }), -/***/ 91332: +/***/ 46: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const net = __nccwpck_require__(77030) -const assert = __nccwpck_require__(34589) -const util = __nccwpck_require__(89500) -const { InvalidArgumentError, ConnectTimeoutError } = __nccwpck_require__(53959) -const timers = __nccwpck_require__(74591) +const net = __nccwpck_require__(7030) +const assert = __nccwpck_require__(4589) +const util = __nccwpck_require__(7662) +const { InvalidArgumentError, ConnectTimeoutError } = __nccwpck_require__(5933) +const timers = __nccwpck_require__(7797) function noop () {} @@ -35421,7 +33161,7 @@ function buildConnector ({ allowH2, maxCachedSessions, socketPath, timeout, sess let socket if (protocol === 'https:') { if (!tls) { - tls = __nccwpck_require__(41692) + tls = __nccwpck_require__(1692) } servername = servername || options.servername || util.getServerName(host) || null @@ -35574,7 +33314,7 @@ module.exports = buildConnector /***/ }), -/***/ 42371: +/***/ 7313: /***/ ((module) => { @@ -35699,12 +33439,12 @@ module.exports = { /***/ }), -/***/ 95458: +/***/ 8560: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const diagnosticsChannel = __nccwpck_require__(53053) -const util = __nccwpck_require__(57975) +const diagnosticsChannel = __nccwpck_require__(3053) +const util = __nccwpck_require__(7975) const undiciDebugLog = util.debuglog('undici') const fetchDebuglog = util.debuglog('fetch') @@ -35908,7 +33648,7 @@ module.exports = { /***/ }), -/***/ 53959: +/***/ 5933: /***/ ((module) => { @@ -36340,7 +34080,7 @@ module.exports = { /***/ }), -/***/ 69691: +/***/ 9441: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -36348,8 +34088,8 @@ module.exports = { const { InvalidArgumentError, NotSupportedError -} = __nccwpck_require__(53959) -const assert = __nccwpck_require__(34589) +} = __nccwpck_require__(5933) +const assert = __nccwpck_require__(4589) const { isValidHTTPToken, isValidHeaderValue, @@ -36363,9 +34103,9 @@ const { validateHandler, getServerName, normalizedMethodRecords -} = __nccwpck_require__(89500) -const { channels } = __nccwpck_require__(95458) -const { headerNameLowerCasedRecord } = __nccwpck_require__(42371) +} = __nccwpck_require__(7662) +const { channels } = __nccwpck_require__(8560) +const { headerNameLowerCasedRecord } = __nccwpck_require__(7313) // Verifies that a given path is valid does not contain control chars \x00 to \x20 const invalidPathRegex = /[^\u0021-\u00ff]/ @@ -36752,7 +34492,7 @@ module.exports = Request /***/ }), -/***/ 68031: +/***/ 3373: /***/ ((module) => { module.exports = { @@ -36826,7 +34566,7 @@ module.exports = { /***/ }), -/***/ 76868: +/***/ 6338: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -36834,7 +34574,7 @@ module.exports = { const { wellknownHeaderNames, headerNameLowerCasedRecord -} = __nccwpck_require__(42371) +} = __nccwpck_require__(7313) class TstNode { /** @type {any} */ @@ -36985,23 +34725,23 @@ module.exports = { /***/ }), -/***/ 89500: +/***/ 7662: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const assert = __nccwpck_require__(34589) -const { kDestroyed, kBodyUsed, kListeners, kBody } = __nccwpck_require__(68031) -const { IncomingMessage } = __nccwpck_require__(37067) -const stream = __nccwpck_require__(57075) -const net = __nccwpck_require__(77030) +const assert = __nccwpck_require__(4589) +const { kDestroyed, kBodyUsed, kListeners, kBody } = __nccwpck_require__(3373) +const { IncomingMessage } = __nccwpck_require__(7067) +const stream = __nccwpck_require__(7075) +const net = __nccwpck_require__(7030) const { Blob } = __nccwpck_require__(4573) -const nodeUtil = __nccwpck_require__(57975) -const { stringify } = __nccwpck_require__(41792) -const { EventEmitter: EE } = __nccwpck_require__(78474) -const { InvalidArgumentError } = __nccwpck_require__(53959) -const { headerNameLowerCasedRecord } = __nccwpck_require__(42371) -const { tree } = __nccwpck_require__(76868) +const nodeUtil = __nccwpck_require__(7975) +const { stringify } = __nccwpck_require__(1792) +const { EventEmitter: EE } = __nccwpck_require__(8474) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const { headerNameLowerCasedRecord } = __nccwpck_require__(7313) +const { tree } = __nccwpck_require__(6338) const [nodeMajor, nodeMinor] = process.versions.node.split('.').map(v => Number(v)) @@ -37711,18 +35451,18 @@ module.exports = { /***/ }), -/***/ 61745: +/***/ 7823: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { InvalidArgumentError } = __nccwpck_require__(53959) -const { kClients, kRunning, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(68031) -const DispatcherBase = __nccwpck_require__(71517) -const Pool = __nccwpck_require__(5928) -const Client = __nccwpck_require__(71313) -const util = __nccwpck_require__(89500) -const createRedirectInterceptor = __nccwpck_require__(11576) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const { kClients, kRunning, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(3373) +const DispatcherBase = __nccwpck_require__(103) +const Pool = __nccwpck_require__(9610) +const Client = __nccwpck_require__(979) +const util = __nccwpck_require__(7662) +const createRedirectInterceptor = __nccwpck_require__(7958) const kOnConnect = Symbol('onConnect') const kOnDisconnect = Symbol('onDisconnect') @@ -37847,7 +35587,7 @@ module.exports = Agent /***/ }), -/***/ 66681: +/***/ 7475: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -37855,7 +35595,7 @@ module.exports = Agent const { BalancedPoolMissingUpstreamError, InvalidArgumentError -} = __nccwpck_require__(53959) +} = __nccwpck_require__(5933) const { PoolBase, kClients, @@ -37863,10 +35603,10 @@ const { kAddClient, kRemoveClient, kGetDispatcher -} = __nccwpck_require__(47292) -const Pool = __nccwpck_require__(5928) -const { kUrl, kInterceptors } = __nccwpck_require__(68031) -const { parseOrigin } = __nccwpck_require__(89500) +} = __nccwpck_require__(9266) +const Pool = __nccwpck_require__(9610) +const { kUrl, kInterceptors } = __nccwpck_require__(3373) +const { parseOrigin } = __nccwpck_require__(7662) const kFactory = Symbol('factory') const kOptions = Symbol('options') @@ -38063,17 +35803,17 @@ module.exports = BalancedPool /***/ }), -/***/ 24393: +/***/ 7727: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /* global WebAssembly */ -const assert = __nccwpck_require__(34589) -const util = __nccwpck_require__(89500) -const { channels } = __nccwpck_require__(95458) -const timers = __nccwpck_require__(74591) +const assert = __nccwpck_require__(4589) +const util = __nccwpck_require__(7662) +const { channels } = __nccwpck_require__(8560) +const timers = __nccwpck_require__(7797) const { RequestContentLengthMismatchError, ResponseContentLengthMismatchError, @@ -38085,7 +35825,7 @@ const { BodyTimeoutError, HTTPParserError, ResponseExceededMaxSizeError -} = __nccwpck_require__(53959) +} = __nccwpck_require__(5933) const { kUrl, kReset, @@ -38118,9 +35858,9 @@ const { kOnError, kResume, kHTTPContext -} = __nccwpck_require__(68031) +} = __nccwpck_require__(3373) -const constants = __nccwpck_require__(40748) +const constants = __nccwpck_require__(1214) const EMPTY_BUF = Buffer.alloc(0) const FastBuffer = Buffer[Symbol.species] const addListener = util.addListener @@ -38129,11 +35869,11 @@ const removeAllListeners = util.removeAllListeners let extractBody async function lazyllhttp () { - const llhttpWasmData = process.env.JEST_WORKER_ID ? __nccwpck_require__(63922) : undefined + const llhttpWasmData = process.env.JEST_WORKER_ID ? __nccwpck_require__(4916) : undefined let mod try { - mod = await WebAssembly.compile(__nccwpck_require__(53742)) + mod = await WebAssembly.compile(__nccwpck_require__(7708)) } catch (e) { /* istanbul ignore next */ @@ -38141,7 +35881,7 @@ async function lazyllhttp () { // being enabled, but the occurring of this other error // * https://github.com/emscripten-core/emscripten/issues/11495 // got me to remove that check to avoid breaking Node 12. - mod = await WebAssembly.compile(llhttpWasmData || __nccwpck_require__(63922)) + mod = await WebAssembly.compile(llhttpWasmData || __nccwpck_require__(4916)) } return await WebAssembly.instantiate(mod, { @@ -38936,7 +36676,7 @@ function writeH1 (client, request) { if (util.isFormDataLike(body)) { if (!extractBody) { - extractBody = (__nccwpck_require__(51448).extractBody) + extractBody = (__nccwpck_require__(4086).extractBody) } const [bodyStream, contentType] = extractBody(body) @@ -39440,20 +37180,20 @@ module.exports = connectH1 /***/ }), -/***/ 23504: +/***/ 930: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const assert = __nccwpck_require__(34589) -const { pipeline } = __nccwpck_require__(57075) -const util = __nccwpck_require__(89500) +const assert = __nccwpck_require__(4589) +const { pipeline } = __nccwpck_require__(7075) +const util = __nccwpck_require__(7662) const { RequestContentLengthMismatchError, RequestAbortedError, SocketError, InformationalError -} = __nccwpck_require__(53959) +} = __nccwpck_require__(5933) const { kUrl, kReset, @@ -39472,7 +37212,7 @@ const { kResume, kSize, kHTTPContext -} = __nccwpck_require__(68031) +} = __nccwpck_require__(3373) const kOpenStreams = Symbol('open streams') @@ -39484,7 +37224,7 @@ let h2ExperimentalWarned = false /** @type {import('http2')} */ let http2 try { - http2 = __nccwpck_require__(32467) + http2 = __nccwpck_require__(2467) } catch { // @ts-ignore http2 = { constants: {} } @@ -39831,7 +37571,7 @@ function writeH2 (client, request) { let contentLength = util.bodyLength(body) if (util.isFormDataLike(body)) { - extractBody ??= (__nccwpck_require__(51448).extractBody) + extractBody ??= (__nccwpck_require__(4086).extractBody) const [bodyStream, contentType] = extractBody(body) headers['content-type'] = contentType @@ -40191,26 +37931,26 @@ module.exports = connectH2 /***/ }), -/***/ 71313: +/***/ 979: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // @ts-check -const assert = __nccwpck_require__(34589) -const net = __nccwpck_require__(77030) -const http = __nccwpck_require__(37067) -const util = __nccwpck_require__(89500) -const { channels } = __nccwpck_require__(95458) -const Request = __nccwpck_require__(69691) -const DispatcherBase = __nccwpck_require__(71517) +const assert = __nccwpck_require__(4589) +const net = __nccwpck_require__(7030) +const http = __nccwpck_require__(7067) +const util = __nccwpck_require__(7662) +const { channels } = __nccwpck_require__(8560) +const Request = __nccwpck_require__(9441) +const DispatcherBase = __nccwpck_require__(103) const { InvalidArgumentError, InformationalError, ClientDestroyedError -} = __nccwpck_require__(53959) -const buildConnector = __nccwpck_require__(91332) +} = __nccwpck_require__(5933) +const buildConnector = __nccwpck_require__(46) const { kUrl, kServerName, @@ -40252,9 +37992,9 @@ const { kHTTPContext, kMaxConcurrentStreams, kResume -} = __nccwpck_require__(68031) -const connectH1 = __nccwpck_require__(24393) -const connectH2 = __nccwpck_require__(23504) +} = __nccwpck_require__(3373) +const connectH1 = __nccwpck_require__(7727) +const connectH2 = __nccwpck_require__(930) let deprecatedInterceptorWarned = false const kClosedResolve = Symbol('kClosedResolve') @@ -40560,7 +38300,7 @@ class Client extends DispatcherBase { } } -const createRedirectInterceptor = __nccwpck_require__(11576) +const createRedirectInterceptor = __nccwpck_require__(7958) function onError (client, err) { if ( @@ -40820,18 +38560,18 @@ module.exports = Client /***/ }), -/***/ 71517: +/***/ 103: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const Dispatcher = __nccwpck_require__(33415) +const Dispatcher = __nccwpck_require__(7029) const { ClientDestroyedError, ClientClosedError, InvalidArgumentError -} = __nccwpck_require__(53959) -const { kDestroy, kClose, kClosed, kDestroyed, kDispatch, kInterceptors } = __nccwpck_require__(68031) +} = __nccwpck_require__(5933) +const { kDestroy, kClose, kClosed, kDestroyed, kDispatch, kInterceptors } = __nccwpck_require__(3373) const kOnDestroyed = Symbol('onDestroyed') const kOnClosed = Symbol('onClosed') @@ -41017,11 +38757,11 @@ module.exports = DispatcherBase /***/ }), -/***/ 33415: +/***/ 7029: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const EventEmitter = __nccwpck_require__(78474) +const EventEmitter = __nccwpck_require__(8474) class Dispatcher extends EventEmitter { dispatch () { @@ -41089,15 +38829,15 @@ module.exports = Dispatcher /***/ }), -/***/ 49221: +/***/ 2935: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const DispatcherBase = __nccwpck_require__(71517) -const { kClose, kDestroy, kClosed, kDestroyed, kDispatch, kNoProxyAgent, kHttpProxyAgent, kHttpsProxyAgent } = __nccwpck_require__(68031) -const ProxyAgent = __nccwpck_require__(17508) -const Agent = __nccwpck_require__(61745) +const DispatcherBase = __nccwpck_require__(103) +const { kClose, kDestroy, kClosed, kDestroyed, kDispatch, kNoProxyAgent, kHttpProxyAgent, kHttpsProxyAgent } = __nccwpck_require__(3373) +const ProxyAgent = __nccwpck_require__(826) +const Agent = __nccwpck_require__(7823) const DEFAULT_PORTS = { 'http:': 80, @@ -41256,7 +38996,7 @@ module.exports = EnvHttpProxyAgent /***/ }), -/***/ 95464: +/***/ 1034: /***/ ((module) => { /* eslint-disable */ @@ -41380,15 +39120,15 @@ module.exports = class FixedQueue { /***/ }), -/***/ 47292: +/***/ 9266: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const DispatcherBase = __nccwpck_require__(71517) -const FixedQueue = __nccwpck_require__(95464) -const { kConnected, kSize, kRunning, kPending, kQueued, kBusy, kFree, kUrl, kClose, kDestroy, kDispatch } = __nccwpck_require__(68031) -const PoolStats = __nccwpck_require__(88186) +const DispatcherBase = __nccwpck_require__(103) +const FixedQueue = __nccwpck_require__(1034) +const { kConnected, kSize, kRunning, kPending, kQueued, kBusy, kFree, kUrl, kClose, kDestroy, kDispatch } = __nccwpck_require__(3373) +const PoolStats = __nccwpck_require__(7956) const kClients = Symbol('clients') const kNeedDrain = Symbol('needDrain') @@ -41581,10 +39321,10 @@ module.exports = { /***/ }), -/***/ 88186: +/***/ 7956: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kFree, kConnected, kPending, kQueued, kRunning, kSize } = __nccwpck_require__(68031) +const { kFree, kConnected, kPending, kQueued, kRunning, kSize } = __nccwpck_require__(3373) const kPool = Symbol('pool') class PoolStats { @@ -41622,7 +39362,7 @@ module.exports = PoolStats /***/ }), -/***/ 5928: +/***/ 9610: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -41633,14 +39373,14 @@ const { kNeedDrain, kAddClient, kGetDispatcher -} = __nccwpck_require__(47292) -const Client = __nccwpck_require__(71313) +} = __nccwpck_require__(9266) +const Client = __nccwpck_require__(979) const { InvalidArgumentError -} = __nccwpck_require__(53959) -const util = __nccwpck_require__(89500) -const { kUrl, kInterceptors } = __nccwpck_require__(68031) -const buildConnector = __nccwpck_require__(91332) +} = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { kUrl, kInterceptors } = __nccwpck_require__(3373) +const buildConnector = __nccwpck_require__(46) const kOptions = Symbol('options') const kConnections = Symbol('connections') @@ -41736,19 +39476,19 @@ module.exports = Pool /***/ }), -/***/ 17508: +/***/ 826: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kProxy, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(68031) -const { URL } = __nccwpck_require__(73136) -const Agent = __nccwpck_require__(61745) -const Pool = __nccwpck_require__(5928) -const DispatcherBase = __nccwpck_require__(71517) -const { InvalidArgumentError, RequestAbortedError, SecureProxyConnectionError } = __nccwpck_require__(53959) -const buildConnector = __nccwpck_require__(91332) -const Client = __nccwpck_require__(71313) +const { kProxy, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(3373) +const { URL } = __nccwpck_require__(3136) +const Agent = __nccwpck_require__(7823) +const Pool = __nccwpck_require__(9610) +const DispatcherBase = __nccwpck_require__(103) +const { InvalidArgumentError, RequestAbortedError, SecureProxyConnectionError } = __nccwpck_require__(5933) +const buildConnector = __nccwpck_require__(46) +const Client = __nccwpck_require__(979) const kAgent = Symbol('proxy agent') const kClient = Symbol('proxy client') @@ -42017,13 +39757,13 @@ module.exports = ProxyAgent /***/ }), -/***/ 40334: +/***/ 5308: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const Dispatcher = __nccwpck_require__(33415) -const RetryHandler = __nccwpck_require__(74004) +const Dispatcher = __nccwpck_require__(7029) +const RetryHandler = __nccwpck_require__(1450) class RetryAgent extends Dispatcher { #agent = null @@ -42059,7 +39799,7 @@ module.exports = RetryAgent /***/ }), -/***/ 61481: +/***/ 8707: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -42067,8 +39807,8 @@ module.exports = RetryAgent // We include a version number for the Dispatcher API. In case of breaking changes, // this version number must be increased to avoid conflicts. const globalDispatcher = Symbol.for('undici.globalDispatcher.1') -const { InvalidArgumentError } = __nccwpck_require__(53959) -const Agent = __nccwpck_require__(61745) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const Agent = __nccwpck_require__(7823) if (getGlobalDispatcher() === undefined) { setGlobalDispatcher(new Agent()) @@ -42098,7 +39838,7 @@ module.exports = { /***/ }), -/***/ 99151: +/***/ 801: /***/ ((module) => { @@ -42149,16 +39889,16 @@ module.exports = class DecoratorHandler { /***/ }), -/***/ 67158: +/***/ 1932: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const util = __nccwpck_require__(89500) -const { kBodyUsed } = __nccwpck_require__(68031) -const assert = __nccwpck_require__(34589) -const { InvalidArgumentError } = __nccwpck_require__(53959) -const EE = __nccwpck_require__(78474) +const util = __nccwpck_require__(7662) +const { kBodyUsed } = __nccwpck_require__(3373) +const assert = __nccwpck_require__(4589) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const EE = __nccwpck_require__(8474) const redirectableStatusCodes = [300, 301, 302, 303, 307, 308] @@ -42388,20 +40128,20 @@ module.exports = RedirectHandler /***/ }), -/***/ 74004: +/***/ 1450: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const assert = __nccwpck_require__(34589) +const assert = __nccwpck_require__(4589) -const { kRetryHandlerDefaultRetry } = __nccwpck_require__(68031) -const { RequestRetryError } = __nccwpck_require__(53959) +const { kRetryHandlerDefaultRetry } = __nccwpck_require__(3373) +const { RequestRetryError } = __nccwpck_require__(5933) const { isDisturbed, parseHeaders, parseRangeHeader, wrapRequestBody -} = __nccwpck_require__(89500) +} = __nccwpck_require__(7662) function calculateRetryAfterHeader (retryAfter) { const current = Date.now() @@ -42769,14 +40509,14 @@ module.exports = RetryHandler /***/ }), -/***/ 64287: +/***/ 4289: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { isIP } = __nccwpck_require__(77030) -const { lookup } = __nccwpck_require__(40610) -const DecoratorHandler = __nccwpck_require__(99151) -const { InvalidArgumentError, InformationalError } = __nccwpck_require__(53959) +const { isIP } = __nccwpck_require__(7030) +const { lookup } = __nccwpck_require__(610) +const DecoratorHandler = __nccwpck_require__(801) +const { InvalidArgumentError, InformationalError } = __nccwpck_require__(5933) const maxInt = Math.pow(2, 31) - 1 class DNSInstance { @@ -43151,14 +40891,14 @@ module.exports = interceptorOpts => { /***/ }), -/***/ 45376: +/***/ 4166: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const util = __nccwpck_require__(89500) -const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(53959) -const DecoratorHandler = __nccwpck_require__(99151) +const util = __nccwpck_require__(7662) +const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(5933) +const DecoratorHandler = __nccwpck_require__(801) class DumpHandler extends DecoratorHandler { #maxSize = 1024 * 1024 @@ -43281,12 +41021,12 @@ module.exports = createDumpInterceptor /***/ }), -/***/ 11576: +/***/ 7958: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const RedirectHandler = __nccwpck_require__(67158) +const RedirectHandler = __nccwpck_require__(1932) function createRedirectInterceptor ({ maxRedirections: defaultMaxRedirections }) { return (dispatch) => { @@ -43309,11 +41049,11 @@ module.exports = createRedirectInterceptor /***/ }), -/***/ 17734: +/***/ 3184: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const RedirectHandler = __nccwpck_require__(67158) +const RedirectHandler = __nccwpck_require__(1932) module.exports = opts => { const globalMaxRedirections = opts?.maxRedirections @@ -43340,11 +41080,11 @@ module.exports = opts => { /***/ }), -/***/ 65486: +/***/ 5904: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const RetryHandler = __nccwpck_require__(74004) +const RetryHandler = __nccwpck_require__(1450) module.exports = globalOpts => { return dispatch => { @@ -43366,13 +41106,13 @@ module.exports = globalOpts => { /***/ }), -/***/ 40748: +/***/ 1214: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.SPECIAL_HEADERS = exports.HEADER_STATE = exports.MINOR = exports.MAJOR = exports.CONNECTION_TOKEN_CHARS = exports.HEADER_CHARS = exports.TOKEN = exports.STRICT_TOKEN = exports.HEX = exports.URL_CHAR = exports.STRICT_URL_CHAR = exports.USERINFO_CHARS = exports.MARK = exports.ALPHANUM = exports.NUM = exports.HEX_MAP = exports.NUM_MAP = exports.ALPHA = exports.FINISH = exports.H_METHOD_MAP = exports.METHOD_MAP = exports.METHODS_RTSP = exports.METHODS_ICE = exports.METHODS_HTTP = exports.METHODS = exports.LENIENT_FLAGS = exports.FLAGS = exports.TYPE = exports.ERROR = void 0; -const utils_1 = __nccwpck_require__(34608); +const utils_1 = __nccwpck_require__(9430); // C headers var ERROR; (function (ERROR) { @@ -43650,7 +41390,7 @@ exports.SPECIAL_HEADERS = { /***/ }), -/***/ 63922: +/***/ 4916: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -43662,7 +41402,7 @@ module.exports = Buffer.from('AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f3 /***/ }), -/***/ 53742: +/***/ 7708: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -43674,7 +41414,7 @@ module.exports = Buffer.from('AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f3 /***/ }), -/***/ 34608: +/***/ 9430: /***/ ((__unused_webpack_module, exports) => { @@ -43695,13 +41435,13 @@ exports.enumToMap = enumToMap; /***/ }), -/***/ 77017: +/***/ 2527: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kClients } = __nccwpck_require__(68031) -const Agent = __nccwpck_require__(61745) +const { kClients } = __nccwpck_require__(3373) +const Agent = __nccwpck_require__(7823) const { kAgent, kMockAgentSet, @@ -43712,14 +41452,14 @@ const { kGetNetConnect, kOptions, kFactory -} = __nccwpck_require__(52305) -const MockClient = __nccwpck_require__(72361) -const MockPool = __nccwpck_require__(36480) -const { matchValue, buildMockOptions } = __nccwpck_require__(73193) -const { InvalidArgumentError, UndiciError } = __nccwpck_require__(53959) -const Dispatcher = __nccwpck_require__(33415) -const Pluralizer = __nccwpck_require__(35773) -const PendingInterceptorsFormatter = __nccwpck_require__(85738) +} = __nccwpck_require__(7351) +const MockClient = __nccwpck_require__(6899) +const MockPool = __nccwpck_require__(7226) +const { matchValue, buildMockOptions } = __nccwpck_require__(987) +const { InvalidArgumentError, UndiciError } = __nccwpck_require__(5933) +const Dispatcher = __nccwpck_require__(7029) +const Pluralizer = __nccwpck_require__(899) +const PendingInterceptorsFormatter = __nccwpck_require__(3576) class MockAgent extends Dispatcher { constructor (opts) { @@ -43862,14 +41602,14 @@ module.exports = MockAgent /***/ }), -/***/ 72361: +/***/ 6899: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { promisify } = __nccwpck_require__(57975) -const Client = __nccwpck_require__(71313) -const { buildMockDispatch } = __nccwpck_require__(73193) +const { promisify } = __nccwpck_require__(7975) +const Client = __nccwpck_require__(979) +const { buildMockDispatch } = __nccwpck_require__(987) const { kDispatches, kMockAgent, @@ -43878,10 +41618,10 @@ const { kOrigin, kOriginalDispatch, kConnected -} = __nccwpck_require__(52305) -const { MockInterceptor } = __nccwpck_require__(5843) -const Symbols = __nccwpck_require__(68031) -const { InvalidArgumentError } = __nccwpck_require__(53959) +} = __nccwpck_require__(7351) +const { MockInterceptor } = __nccwpck_require__(3237) +const Symbols = __nccwpck_require__(3373) +const { InvalidArgumentError } = __nccwpck_require__(5933) /** * MockClient provides an API that extends the Client to influence the mockDispatches. @@ -43928,12 +41668,12 @@ module.exports = MockClient /***/ }), -/***/ 12673: +/***/ 2863: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { UndiciError } = __nccwpck_require__(53959) +const { UndiciError } = __nccwpck_require__(5933) const kMockNotMatchedError = Symbol.for('undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED') @@ -43963,12 +41703,12 @@ module.exports = { /***/ }), -/***/ 5843: +/***/ 3237: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { getResponseData, buildKey, addMockDispatch } = __nccwpck_require__(73193) +const { getResponseData, buildKey, addMockDispatch } = __nccwpck_require__(987) const { kDispatches, kDispatchKey, @@ -43976,9 +41716,9 @@ const { kDefaultTrailers, kContentLength, kMockDispatch -} = __nccwpck_require__(52305) -const { InvalidArgumentError } = __nccwpck_require__(53959) -const { buildURL } = __nccwpck_require__(89500) +} = __nccwpck_require__(7351) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const { buildURL } = __nccwpck_require__(7662) /** * Defines the scope API for an interceptor reply @@ -44177,14 +41917,14 @@ module.exports.MockScope = MockScope /***/ }), -/***/ 36480: +/***/ 7226: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { promisify } = __nccwpck_require__(57975) -const Pool = __nccwpck_require__(5928) -const { buildMockDispatch } = __nccwpck_require__(73193) +const { promisify } = __nccwpck_require__(7975) +const Pool = __nccwpck_require__(9610) +const { buildMockDispatch } = __nccwpck_require__(987) const { kDispatches, kMockAgent, @@ -44193,10 +41933,10 @@ const { kOrigin, kOriginalDispatch, kConnected -} = __nccwpck_require__(52305) -const { MockInterceptor } = __nccwpck_require__(5843) -const Symbols = __nccwpck_require__(68031) -const { InvalidArgumentError } = __nccwpck_require__(53959) +} = __nccwpck_require__(7351) +const { MockInterceptor } = __nccwpck_require__(3237) +const Symbols = __nccwpck_require__(3373) +const { InvalidArgumentError } = __nccwpck_require__(5933) /** * MockPool provides an API that extends the Pool to influence the mockDispatches. @@ -44243,7 +41983,7 @@ module.exports = MockPool /***/ }), -/***/ 52305: +/***/ 7351: /***/ ((module) => { @@ -44273,26 +42013,26 @@ module.exports = { /***/ }), -/***/ 73193: +/***/ 987: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { MockNotMatchedError } = __nccwpck_require__(12673) +const { MockNotMatchedError } = __nccwpck_require__(2863) const { kDispatches, kMockAgent, kOriginalDispatch, kOrigin, kGetNetConnect -} = __nccwpck_require__(52305) -const { buildURL } = __nccwpck_require__(89500) -const { STATUS_CODES } = __nccwpck_require__(37067) +} = __nccwpck_require__(7351) +const { buildURL } = __nccwpck_require__(7662) +const { STATUS_CODES } = __nccwpck_require__(7067) const { types: { isPromise } -} = __nccwpck_require__(57975) +} = __nccwpck_require__(7975) function matchValue (match, value) { if (typeof match === 'string') { @@ -44647,13 +42387,13 @@ module.exports = { /***/ }), -/***/ 85738: +/***/ 3576: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { Transform } = __nccwpck_require__(57075) -const { Console } = __nccwpck_require__(37540) +const { Transform } = __nccwpck_require__(7075) +const { Console } = __nccwpck_require__(7540) const PERSISTENT = process.versions.icu ? '✅' : 'Y ' const NOT_PERSISTENT = process.versions.icu ? '❌' : 'N ' @@ -44697,7 +42437,7 @@ module.exports = class PendingInterceptorsFormatter { /***/ }), -/***/ 35773: +/***/ 899: /***/ ((module) => { @@ -44733,7 +42473,7 @@ module.exports = class Pluralizer { /***/ }), -/***/ 74591: +/***/ 7797: /***/ ((module) => { @@ -45163,21 +42903,21 @@ module.exports = { /***/ }), -/***/ 19918: +/***/ 3416: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kConstruct } = __nccwpck_require__(8329) -const { urlEquals, getFieldValues } = __nccwpck_require__(93762) -const { kEnumerableProperty, isDisturbed } = __nccwpck_require__(89500) -const { webidl } = __nccwpck_require__(14625) -const { Response, cloneResponse, fromInnerResponse } = __nccwpck_require__(87287) -const { Request, fromInnerRequest } = __nccwpck_require__(19683) -const { kState } = __nccwpck_require__(23175) -const { fetching } = __nccwpck_require__(64202) -const { urlIsHttpHttpsScheme, createDeferredPromise, readAllBytes } = __nccwpck_require__(1204) -const assert = __nccwpck_require__(34589) +const { kConstruct } = __nccwpck_require__(7747) +const { urlEquals, getFieldValues } = __nccwpck_require__(9272) +const { kEnumerableProperty, isDisturbed } = __nccwpck_require__(7662) +const { webidl } = __nccwpck_require__(9735) +const { Response, cloneResponse, fromInnerResponse } = __nccwpck_require__(2873) +const { Request, fromInnerRequest } = __nccwpck_require__(557) +const { kState } = __nccwpck_require__(1) +const { fetching } = __nccwpck_require__(224) +const { urlIsHttpHttpsScheme, createDeferredPromise, readAllBytes } = __nccwpck_require__(7722) +const assert = __nccwpck_require__(4589) /** * @see https://w3c.github.io/ServiceWorker/#dfn-cache-batch-operation @@ -46029,15 +43769,15 @@ module.exports = { /***/ }), -/***/ 56577: +/***/ 4215: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kConstruct } = __nccwpck_require__(8329) -const { Cache } = __nccwpck_require__(19918) -const { webidl } = __nccwpck_require__(14625) -const { kEnumerableProperty } = __nccwpck_require__(89500) +const { kConstruct } = __nccwpck_require__(7747) +const { Cache } = __nccwpck_require__(3416) +const { webidl } = __nccwpck_require__(9735) +const { kEnumerableProperty } = __nccwpck_require__(7662) class CacheStorage { /** @@ -46188,26 +43928,26 @@ module.exports = { /***/ }), -/***/ 8329: +/***/ 7747: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { module.exports = { - kConstruct: (__nccwpck_require__(68031).kConstruct) + kConstruct: (__nccwpck_require__(3373).kConstruct) } /***/ }), -/***/ 93762: +/***/ 9272: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const assert = __nccwpck_require__(34589) -const { URLSerializer } = __nccwpck_require__(50192) -const { isValidHeaderName } = __nccwpck_require__(1204) +const assert = __nccwpck_require__(4589) +const { URLSerializer } = __nccwpck_require__(8394) +const { isValidHeaderName } = __nccwpck_require__(7722) /** * @see https://url.spec.whatwg.org/#concept-url-equals @@ -46252,7 +43992,7 @@ module.exports = { /***/ }), -/***/ 85848: +/***/ 1574: /***/ ((module) => { @@ -46271,15 +44011,15 @@ module.exports = { /***/ }), -/***/ 67889: +/***/ 8659: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { parseSetCookie } = __nccwpck_require__(51814) -const { stringify } = __nccwpck_require__(80185) -const { webidl } = __nccwpck_require__(14625) -const { Headers } = __nccwpck_require__(13408) +const { parseSetCookie } = __nccwpck_require__(3804) +const { stringify } = __nccwpck_require__(3643) +const { webidl } = __nccwpck_require__(9735) +const { Headers } = __nccwpck_require__(8146) /** * @typedef {Object} Cookie @@ -46462,15 +44202,15 @@ module.exports = { /***/ }), -/***/ 51814: +/***/ 3804: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { maxNameValuePairSize, maxAttributeValueSize } = __nccwpck_require__(85848) -const { isCTLExcludingHtab } = __nccwpck_require__(80185) -const { collectASequenceOfCodePointsFast } = __nccwpck_require__(50192) -const assert = __nccwpck_require__(34589) +const { maxNameValuePairSize, maxAttributeValueSize } = __nccwpck_require__(1574) +const { isCTLExcludingHtab } = __nccwpck_require__(3643) +const { collectASequenceOfCodePointsFast } = __nccwpck_require__(8394) +const assert = __nccwpck_require__(4589) /** * @description Parses the field-value attributes of a set-cookie header string. @@ -46786,7 +44526,7 @@ module.exports = { /***/ }), -/***/ 80185: +/***/ 3643: /***/ ((module) => { @@ -47075,12 +44815,12 @@ module.exports = { /***/ }), -/***/ 18819: +/***/ 6521: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { Transform } = __nccwpck_require__(57075) -const { isASCIINumber, isValidLastEventId } = __nccwpck_require__(23943) +const { Transform } = __nccwpck_require__(7075) +const { isASCIINumber, isValidLastEventId } = __nccwpck_require__(6293) /** * @type {number[]} BOM @@ -47480,22 +45220,22 @@ module.exports = { /***/ }), -/***/ 37042: +/***/ 3276: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { pipeline } = __nccwpck_require__(57075) -const { fetching } = __nccwpck_require__(64202) -const { makeRequest } = __nccwpck_require__(19683) -const { webidl } = __nccwpck_require__(14625) -const { EventSourceStream } = __nccwpck_require__(18819) -const { parseMIMEType } = __nccwpck_require__(50192) -const { createFastMessageEvent } = __nccwpck_require__(26760) -const { isNetworkError } = __nccwpck_require__(87287) -const { delay } = __nccwpck_require__(23943) -const { kEnumerableProperty } = __nccwpck_require__(89500) -const { environmentSettingsObject } = __nccwpck_require__(1204) +const { pipeline } = __nccwpck_require__(7075) +const { fetching } = __nccwpck_require__(224) +const { makeRequest } = __nccwpck_require__(557) +const { webidl } = __nccwpck_require__(9735) +const { EventSourceStream } = __nccwpck_require__(6521) +const { parseMIMEType } = __nccwpck_require__(8394) +const { createFastMessageEvent } = __nccwpck_require__(7690) +const { isNetworkError } = __nccwpck_require__(2873) +const { delay } = __nccwpck_require__(6293) +const { kEnumerableProperty } = __nccwpck_require__(7662) +const { environmentSettingsObject } = __nccwpck_require__(7722) let experimentalWarned = false @@ -47967,7 +45707,7 @@ module.exports = { /***/ }), -/***/ 23943: +/***/ 6293: /***/ ((module) => { @@ -48011,12 +45751,12 @@ module.exports = { /***/ }), -/***/ 51448: +/***/ 4086: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const util = __nccwpck_require__(89500) +const util = __nccwpck_require__(7662) const { ReadableStreamFrom, isBlobLike, @@ -48026,20 +45766,20 @@ const { fullyReadBody, extractMimeType, utf8DecodeBytes -} = __nccwpck_require__(1204) -const { FormData } = __nccwpck_require__(63818) -const { kState } = __nccwpck_require__(23175) -const { webidl } = __nccwpck_require__(14625) +} = __nccwpck_require__(7722) +const { FormData } = __nccwpck_require__(8932) +const { kState } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) const { Blob } = __nccwpck_require__(4573) -const assert = __nccwpck_require__(34589) -const { isErrored, isDisturbed } = __nccwpck_require__(57075) -const { isArrayBuffer } = __nccwpck_require__(73429) -const { serializeAMimeType } = __nccwpck_require__(50192) -const { multipartFormDataParser } = __nccwpck_require__(78016) +const assert = __nccwpck_require__(4589) +const { isErrored, isDisturbed } = __nccwpck_require__(7075) +const { isArrayBuffer } = __nccwpck_require__(3429) +const { serializeAMimeType } = __nccwpck_require__(8394) +const { multipartFormDataParser } = __nccwpck_require__(6442) let random try { - const crypto = __nccwpck_require__(77598) + const crypto = __nccwpck_require__(7598) random = (max) => crypto.randomInt(0, max) } catch { random = (max) => Math.floor(Math.random(max)) @@ -48547,7 +46287,7 @@ module.exports = { /***/ }), -/***/ 64219: +/***/ 1797: /***/ ((module) => { @@ -48678,12 +46418,12 @@ module.exports = { /***/ }), -/***/ 50192: +/***/ 8394: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const assert = __nccwpck_require__(34589) +const assert = __nccwpck_require__(4589) const encoder = new TextEncoder() @@ -49429,12 +47169,12 @@ module.exports = { /***/ }), -/***/ 58905: +/***/ 379: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kConnected, kSize } = __nccwpck_require__(68031) +const { kConnected, kSize } = __nccwpck_require__(3373) class CompatWeakRef { constructor (value) { @@ -49482,14 +47222,14 @@ module.exports = function () { /***/ }), -/***/ 33486: +/***/ 2944: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Blob, File } = __nccwpck_require__(4573) -const { kState } = __nccwpck_require__(23175) -const { webidl } = __nccwpck_require__(14625) +const { kState } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) // TODO(@KhafraDev): remove class FileLike { @@ -49615,17 +47355,17 @@ module.exports = { FileLike, isFileLike } /***/ }), -/***/ 78016: +/***/ 6442: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { isUSVString, bufferToLowerCasedHeaderName } = __nccwpck_require__(89500) -const { utf8DecodeBytes } = __nccwpck_require__(1204) -const { HTTP_TOKEN_CODEPOINTS, isomorphicDecode } = __nccwpck_require__(50192) -const { isFileLike } = __nccwpck_require__(33486) -const { makeEntry } = __nccwpck_require__(63818) -const assert = __nccwpck_require__(34589) +const { isUSVString, bufferToLowerCasedHeaderName } = __nccwpck_require__(7662) +const { utf8DecodeBytes } = __nccwpck_require__(7722) +const { HTTP_TOKEN_CODEPOINTS, isomorphicDecode } = __nccwpck_require__(8394) +const { isFileLike } = __nccwpck_require__(2944) +const { makeEntry } = __nccwpck_require__(8932) +const assert = __nccwpck_require__(4589) const { File: NodeFile } = __nccwpck_require__(4573) const File = globalThis.File ?? NodeFile @@ -50096,18 +47836,18 @@ module.exports = { /***/ }), -/***/ 63818: +/***/ 8932: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { isBlobLike, iteratorMixin } = __nccwpck_require__(1204) -const { kState } = __nccwpck_require__(23175) -const { kEnumerableProperty } = __nccwpck_require__(89500) -const { FileLike, isFileLike } = __nccwpck_require__(33486) -const { webidl } = __nccwpck_require__(14625) +const { isBlobLike, iteratorMixin } = __nccwpck_require__(7722) +const { kState } = __nccwpck_require__(1) +const { kEnumerableProperty } = __nccwpck_require__(7662) +const { FileLike, isFileLike } = __nccwpck_require__(2944) +const { webidl } = __nccwpck_require__(9735) const { File: NativeFile } = __nccwpck_require__(4573) -const nodeUtil = __nccwpck_require__(57975) +const nodeUtil = __nccwpck_require__(7975) /** @type {globalThis['File']} */ const File = globalThis.File ?? NativeFile @@ -50355,7 +48095,7 @@ module.exports = { FormData, makeEntry } /***/ }), -/***/ 65311: +/***/ 777: /***/ ((module) => { @@ -50402,23 +48142,23 @@ module.exports = { /***/ }), -/***/ 13408: +/***/ 8146: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // https://github.com/Ethan-Arrowood/undici-fetch -const { kConstruct } = __nccwpck_require__(68031) -const { kEnumerableProperty } = __nccwpck_require__(89500) +const { kConstruct } = __nccwpck_require__(3373) +const { kEnumerableProperty } = __nccwpck_require__(7662) const { iteratorMixin, isValidHeaderName, isValidHeaderValue -} = __nccwpck_require__(1204) -const { webidl } = __nccwpck_require__(14625) -const assert = __nccwpck_require__(34589) -const util = __nccwpck_require__(57975) +} = __nccwpck_require__(7722) +const { webidl } = __nccwpck_require__(9735) +const assert = __nccwpck_require__(4589) +const util = __nccwpck_require__(7975) const kHeadersMap = Symbol('headers map') const kHeadersSortedMap = Symbol('headers map sorted') @@ -51096,7 +48836,7 @@ module.exports = { /***/ }), -/***/ 64202: +/***/ 224: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // https://github.com/Ethan-Arrowood/undici-fetch @@ -51109,10 +48849,10 @@ const { filterResponse, makeResponse, fromInnerResponse -} = __nccwpck_require__(87287) -const { HeadersList } = __nccwpck_require__(13408) -const { Request, cloneRequest } = __nccwpck_require__(19683) -const zlib = __nccwpck_require__(38522) +} = __nccwpck_require__(2873) +const { HeadersList } = __nccwpck_require__(8146) +const { Request, cloneRequest } = __nccwpck_require__(557) +const zlib = __nccwpck_require__(8522) const { bytesMatch, makePolicyContainer, @@ -51147,24 +48887,24 @@ const { buildContentRange, createInflate, extractMimeType -} = __nccwpck_require__(1204) -const { kState, kDispatcher } = __nccwpck_require__(23175) -const assert = __nccwpck_require__(34589) -const { safelyExtractBody, extractBody } = __nccwpck_require__(51448) +} = __nccwpck_require__(7722) +const { kState, kDispatcher } = __nccwpck_require__(1) +const assert = __nccwpck_require__(4589) +const { safelyExtractBody, extractBody } = __nccwpck_require__(4086) const { redirectStatusSet, nullBodyStatus, safeMethodsSet, requestBodyHeader, subresourceSet -} = __nccwpck_require__(64219) -const EE = __nccwpck_require__(78474) -const { Readable, pipeline, finished } = __nccwpck_require__(57075) -const { addAbortListener, isErrored, isReadable, bufferToLowerCasedHeaderName } = __nccwpck_require__(89500) -const { dataURLProcessor, serializeAMimeType, minimizeSupportedMimeType } = __nccwpck_require__(50192) -const { getGlobalDispatcher } = __nccwpck_require__(61481) -const { webidl } = __nccwpck_require__(14625) -const { STATUS_CODES } = __nccwpck_require__(37067) +} = __nccwpck_require__(1797) +const EE = __nccwpck_require__(8474) +const { Readable, pipeline, finished } = __nccwpck_require__(7075) +const { addAbortListener, isErrored, isReadable, bufferToLowerCasedHeaderName } = __nccwpck_require__(7662) +const { dataURLProcessor, serializeAMimeType, minimizeSupportedMimeType } = __nccwpck_require__(8394) +const { getGlobalDispatcher } = __nccwpck_require__(8707) +const { webidl } = __nccwpck_require__(9735) +const { STATUS_CODES } = __nccwpck_require__(7067) const GET_OR_HEAD = ['GET', 'HEAD'] const defaultUserAgent = typeof __UNDICI_IS_NODE__ !== 'undefined' || typeof esbuildDetection !== 'undefined' @@ -53375,23 +51115,23 @@ module.exports = { /***/ }), -/***/ 19683: +/***/ 557: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /* globals AbortController */ -const { extractBody, mixinBody, cloneBody, bodyUnusable } = __nccwpck_require__(51448) -const { Headers, fill: fillHeaders, HeadersList, setHeadersGuard, getHeadersGuard, setHeadersList, getHeadersList } = __nccwpck_require__(13408) -const { FinalizationRegistry } = __nccwpck_require__(58905)() -const util = __nccwpck_require__(89500) -const nodeUtil = __nccwpck_require__(57975) +const { extractBody, mixinBody, cloneBody, bodyUnusable } = __nccwpck_require__(4086) +const { Headers, fill: fillHeaders, HeadersList, setHeadersGuard, getHeadersGuard, setHeadersList, getHeadersList } = __nccwpck_require__(8146) +const { FinalizationRegistry } = __nccwpck_require__(379)() +const util = __nccwpck_require__(7662) +const nodeUtil = __nccwpck_require__(7975) const { isValidHTTPToken, sameOrigin, environmentSettingsObject -} = __nccwpck_require__(1204) +} = __nccwpck_require__(7722) const { forbiddenMethodsSet, corsSafeListedMethodsSet, @@ -53401,14 +51141,14 @@ const { requestCredentials, requestCache, requestDuplex -} = __nccwpck_require__(64219) +} = __nccwpck_require__(1797) const { kEnumerableProperty, normalizedMethodRecordsBase, normalizedMethodRecords } = util -const { kHeaders, kSignal, kState, kDispatcher } = __nccwpck_require__(23175) -const { webidl } = __nccwpck_require__(14625) -const { URLSerializer } = __nccwpck_require__(50192) -const { kConstruct } = __nccwpck_require__(68031) -const assert = __nccwpck_require__(34589) -const { getMaxListeners, setMaxListeners, getEventListeners, defaultMaxListeners } = __nccwpck_require__(78474) +const { kHeaders, kSignal, kState, kDispatcher } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) +const { URLSerializer } = __nccwpck_require__(8394) +const { kConstruct } = __nccwpck_require__(3373) +const assert = __nccwpck_require__(4589) +const { getMaxListeners, setMaxListeners, getEventListeners, defaultMaxListeners } = __nccwpck_require__(8474) const kAbortController = Symbol('abortController') @@ -54419,15 +52159,15 @@ module.exports = { Request, makeRequest, fromInnerRequest, cloneRequest } /***/ }), -/***/ 87287: +/***/ 2873: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { Headers, HeadersList, fill, getHeadersGuard, setHeadersGuard, setHeadersList } = __nccwpck_require__(13408) -const { extractBody, cloneBody, mixinBody, hasFinalizationRegistry, streamRegistry, bodyUnusable } = __nccwpck_require__(51448) -const util = __nccwpck_require__(89500) -const nodeUtil = __nccwpck_require__(57975) +const { Headers, HeadersList, fill, getHeadersGuard, setHeadersGuard, setHeadersList } = __nccwpck_require__(8146) +const { extractBody, cloneBody, mixinBody, hasFinalizationRegistry, streamRegistry, bodyUnusable } = __nccwpck_require__(4086) +const util = __nccwpck_require__(7662) +const nodeUtil = __nccwpck_require__(7975) const { kEnumerableProperty } = util const { isValidReasonPhrase, @@ -54438,18 +52178,18 @@ const { isErrorLike, isomorphicEncode, environmentSettingsObject: relevantRealm -} = __nccwpck_require__(1204) +} = __nccwpck_require__(7722) const { redirectStatusSet, nullBodyStatus -} = __nccwpck_require__(64219) -const { kState, kHeaders } = __nccwpck_require__(23175) -const { webidl } = __nccwpck_require__(14625) -const { FormData } = __nccwpck_require__(63818) -const { URLSerializer } = __nccwpck_require__(50192) -const { kConstruct } = __nccwpck_require__(68031) -const assert = __nccwpck_require__(34589) -const { types } = __nccwpck_require__(57975) +} = __nccwpck_require__(1797) +const { kState, kHeaders } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) +const { FormData } = __nccwpck_require__(8932) +const { URLSerializer } = __nccwpck_require__(8394) +const { kConstruct } = __nccwpck_require__(3373) +const assert = __nccwpck_require__(4589) +const { types } = __nccwpck_require__(7975) const textEncoder = new TextEncoder('utf-8') @@ -55036,7 +52776,7 @@ module.exports = { /***/ }), -/***/ 23175: +/***/ 1: /***/ ((module) => { @@ -55052,21 +52792,21 @@ module.exports = { /***/ }), -/***/ 1204: +/***/ 7722: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { Transform } = __nccwpck_require__(57075) -const zlib = __nccwpck_require__(38522) -const { redirectStatusSet, referrerPolicySet: referrerPolicyTokens, badPortsSet } = __nccwpck_require__(64219) -const { getGlobalOrigin } = __nccwpck_require__(65311) -const { collectASequenceOfCodePoints, collectAnHTTPQuotedString, removeChars, parseMIMEType } = __nccwpck_require__(50192) +const { Transform } = __nccwpck_require__(7075) +const zlib = __nccwpck_require__(8522) +const { redirectStatusSet, referrerPolicySet: referrerPolicyTokens, badPortsSet } = __nccwpck_require__(1797) +const { getGlobalOrigin } = __nccwpck_require__(777) +const { collectASequenceOfCodePoints, collectAnHTTPQuotedString, removeChars, parseMIMEType } = __nccwpck_require__(8394) const { performance } = __nccwpck_require__(643) -const { isBlobLike, ReadableStreamFrom, isValidHTTPToken, normalizedMethodRecordsBase } = __nccwpck_require__(89500) -const assert = __nccwpck_require__(34589) -const { isUint8Array } = __nccwpck_require__(73429) -const { webidl } = __nccwpck_require__(14625) +const { isBlobLike, ReadableStreamFrom, isValidHTTPToken, normalizedMethodRecordsBase } = __nccwpck_require__(7662) +const assert = __nccwpck_require__(4589) +const { isUint8Array } = __nccwpck_require__(3429) +const { webidl } = __nccwpck_require__(9735) let supportedHashes = [] @@ -55074,7 +52814,7 @@ let supportedHashes = [] /** @type {import('crypto')} */ let crypto try { - crypto = __nccwpck_require__(77598) + crypto = __nccwpck_require__(7598) const possibleRelevantHashes = ['sha256', 'sha384', 'sha512'] supportedHashes = crypto.getHashes().filter((hash) => possibleRelevantHashes.includes(hash)) /* c8 ignore next 3 */ @@ -56691,14 +54431,14 @@ module.exports = { /***/ }), -/***/ 14625: +/***/ 9735: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { types, inspect } = __nccwpck_require__(57975) -const { markAsUncloneable } = __nccwpck_require__(75919) -const { toUSVString } = __nccwpck_require__(89500) +const { types, inspect } = __nccwpck_require__(7975) +const { markAsUncloneable } = __nccwpck_require__(5919) +const { toUSVString } = __nccwpck_require__(7662) /** @type {import('../../../types/webidl').Webidl} */ const webidl = {} @@ -57393,7 +55133,7 @@ module.exports = { /***/ }), -/***/ 81691: +/***/ 2705: /***/ ((module) => { @@ -57690,7 +55430,7 @@ module.exports = { /***/ }), -/***/ 66575: +/***/ 7669: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -57699,16 +55439,16 @@ const { staticPropertyDescriptors, readOperation, fireAProgressEvent -} = __nccwpck_require__(26014) +} = __nccwpck_require__(8912) const { kState, kError, kResult, kEvents, kAborted -} = __nccwpck_require__(18445) -const { webidl } = __nccwpck_require__(14625) -const { kEnumerableProperty } = __nccwpck_require__(89500) +} = __nccwpck_require__(6107) +const { webidl } = __nccwpck_require__(9735) +const { kEnumerableProperty } = __nccwpck_require__(7662) class FileReader extends EventTarget { constructor () { @@ -58041,12 +55781,12 @@ module.exports = { /***/ }), -/***/ 89393: +/***/ 1367: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { webidl } = __nccwpck_require__(14625) +const { webidl } = __nccwpck_require__(9735) const kState = Symbol('ProgressEvent state') @@ -58126,7 +55866,7 @@ module.exports = { /***/ }), -/***/ 18445: +/***/ 6107: /***/ ((module) => { @@ -58143,7 +55883,7 @@ module.exports = { /***/ }), -/***/ 26014: +/***/ 8912: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -58154,12 +55894,12 @@ const { kResult, kAborted, kLastProgressEventFired -} = __nccwpck_require__(18445) -const { ProgressEvent } = __nccwpck_require__(89393) -const { getEncoding } = __nccwpck_require__(81691) -const { serializeAMimeType, parseMIMEType } = __nccwpck_require__(50192) -const { types } = __nccwpck_require__(57975) -const { StringDecoder } = __nccwpck_require__(13193) +} = __nccwpck_require__(6107) +const { ProgressEvent } = __nccwpck_require__(1367) +const { getEncoding } = __nccwpck_require__(2705) +const { serializeAMimeType, parseMIMEType } = __nccwpck_require__(8394) +const { types } = __nccwpck_require__(7975) +const { StringDecoder } = __nccwpck_require__(3193) const { btoa } = __nccwpck_require__(4573) /** @type {PropertyDescriptor} */ @@ -58541,32 +56281,32 @@ module.exports = { /***/ }), -/***/ 10773: +/***/ 9431: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { uid, states, sentCloseFrameState, emptyBuffer, opcodes } = __nccwpck_require__(9500) +const { uid, states, sentCloseFrameState, emptyBuffer, opcodes } = __nccwpck_require__(5214) const { kReadyState, kSentClose, kByteParser, kReceivedClose, kResponse -} = __nccwpck_require__(87292) -const { fireEvent, failWebsocketConnection, isClosing, isClosed, isEstablished, parseExtensions } = __nccwpck_require__(10965) -const { channels } = __nccwpck_require__(95458) -const { CloseEvent } = __nccwpck_require__(26760) -const { makeRequest } = __nccwpck_require__(19683) -const { fetching } = __nccwpck_require__(64202) -const { Headers, getHeadersList } = __nccwpck_require__(13408) -const { getDecodeSplit } = __nccwpck_require__(1204) -const { WebsocketFrameSend } = __nccwpck_require__(49676) +} = __nccwpck_require__(1150) +const { fireEvent, failWebsocketConnection, isClosing, isClosed, isEstablished, parseExtensions } = __nccwpck_require__(3155) +const { channels } = __nccwpck_require__(8560) +const { CloseEvent } = __nccwpck_require__(7690) +const { makeRequest } = __nccwpck_require__(557) +const { fetching } = __nccwpck_require__(224) +const { Headers, getHeadersList } = __nccwpck_require__(8146) +const { getDecodeSplit } = __nccwpck_require__(7722) +const { WebsocketFrameSend } = __nccwpck_require__(2438) /** @type {import('crypto')} */ let crypto try { - crypto = __nccwpck_require__(77598) + crypto = __nccwpck_require__(7598) /* c8 ignore next 3 */ } catch { @@ -58919,7 +56659,7 @@ module.exports = { /***/ }), -/***/ 9500: +/***/ 5214: /***/ ((module) => { @@ -58992,15 +56732,15 @@ module.exports = { /***/ }), -/***/ 26760: +/***/ 7690: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { webidl } = __nccwpck_require__(14625) -const { kEnumerableProperty } = __nccwpck_require__(89500) -const { kConstruct } = __nccwpck_require__(68031) -const { MessagePort } = __nccwpck_require__(75919) +const { webidl } = __nccwpck_require__(9735) +const { kEnumerableProperty } = __nccwpck_require__(7662) +const { kConstruct } = __nccwpck_require__(3373) +const { MessagePort } = __nccwpck_require__(5919) /** * @see https://html.spec.whatwg.org/multipage/comms.html#messageevent @@ -59328,12 +57068,12 @@ module.exports = { /***/ }), -/***/ 49676: +/***/ 2438: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { maxUnsigned16Bit } = __nccwpck_require__(9500) +const { maxUnsigned16Bit } = __nccwpck_require__(5214) const BUFFER_SIZE = 16386 @@ -59343,7 +57083,7 @@ let buffer = null let bufIdx = BUFFER_SIZE try { - crypto = __nccwpck_require__(77598) + crypto = __nccwpck_require__(7598) /* c8 ignore next 3 */ } catch { crypto = { @@ -59431,14 +57171,14 @@ module.exports = { /***/ }), -/***/ 84841: +/***/ 4739: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { createInflateRaw, Z_DEFAULT_WINDOWBITS } = __nccwpck_require__(38522) -const { isValidClientWindowBits } = __nccwpck_require__(10965) -const { MessageSizeExceededError } = __nccwpck_require__(53959) +const { createInflateRaw, Z_DEFAULT_WINDOWBITS } = __nccwpck_require__(8522) +const { isValidClientWindowBits } = __nccwpck_require__(3155) +const { MessageSizeExceededError } = __nccwpck_require__(5933) const tail = Buffer.from([0x00, 0x00, 0xff, 0xff]) const kBuffer = Symbol('kBuffer') @@ -59556,16 +57296,16 @@ module.exports = { PerMessageDeflate } /***/ }), -/***/ 61872: +/***/ 2502: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { Writable } = __nccwpck_require__(57075) -const assert = __nccwpck_require__(34589) -const { parserStates, opcodes, states, emptyBuffer, sentCloseFrameState } = __nccwpck_require__(9500) -const { kReadyState, kSentClose, kResponse, kReceivedClose } = __nccwpck_require__(87292) -const { channels } = __nccwpck_require__(95458) +const { Writable } = __nccwpck_require__(7075) +const assert = __nccwpck_require__(4589) +const { parserStates, opcodes, states, emptyBuffer, sentCloseFrameState } = __nccwpck_require__(5214) +const { kReadyState, kSentClose, kResponse, kReceivedClose } = __nccwpck_require__(1150) +const { channels } = __nccwpck_require__(8560) const { isValidStatusCode, isValidOpcode, @@ -59575,10 +57315,10 @@ const { isControlFrame, isTextBinaryFrame, isContinuationFrame -} = __nccwpck_require__(10965) -const { WebsocketFrameSend } = __nccwpck_require__(49676) -const { closeWebSocketConnection } = __nccwpck_require__(10773) -const { PerMessageDeflate } = __nccwpck_require__(84841) +} = __nccwpck_require__(3155) +const { WebsocketFrameSend } = __nccwpck_require__(2438) +const { closeWebSocketConnection } = __nccwpck_require__(9431) +const { PerMessageDeflate } = __nccwpck_require__(4739) // This code was influenced by ws released under the MIT license. // Copyright (c) 2011 Einar Otto Stangvik @@ -59990,14 +57730,14 @@ module.exports = { /***/ }), -/***/ 80504: +/***/ 7562: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { WebsocketFrameSend } = __nccwpck_require__(49676) -const { opcodes, sendHints } = __nccwpck_require__(9500) -const FixedQueue = __nccwpck_require__(95464) +const { WebsocketFrameSend } = __nccwpck_require__(2438) +const { opcodes, sendHints } = __nccwpck_require__(5214) +const FixedQueue = __nccwpck_require__(1034) /** @type {typeof Uint8Array} */ const FastBuffer = Buffer[Symbol.species] @@ -60101,7 +57841,7 @@ module.exports = { SendQueue } /***/ }), -/***/ 87292: +/***/ 1150: /***/ ((module) => { @@ -60120,16 +57860,16 @@ module.exports = { /***/ }), -/***/ 10965: +/***/ 3155: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kReadyState, kController, kResponse, kBinaryType, kWebSocketURL } = __nccwpck_require__(87292) -const { states, opcodes } = __nccwpck_require__(9500) -const { ErrorEvent, createFastMessageEvent } = __nccwpck_require__(26760) +const { kReadyState, kController, kResponse, kBinaryType, kWebSocketURL } = __nccwpck_require__(1150) +const { states, opcodes } = __nccwpck_require__(5214) +const { ErrorEvent, createFastMessageEvent } = __nccwpck_require__(7690) const { isUtf8 } = __nccwpck_require__(4573) -const { collectASequenceOfCodePointsFast, removeHTTPWhitespace } = __nccwpck_require__(50192) +const { collectASequenceOfCodePointsFast, removeHTTPWhitespace } = __nccwpck_require__(8394) /* globals Blob */ @@ -60449,15 +58189,15 @@ module.exports = { /***/ }), -/***/ 2522: +/***/ 7836: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { webidl } = __nccwpck_require__(14625) -const { URLSerializer } = __nccwpck_require__(50192) -const { environmentSettingsObject } = __nccwpck_require__(1204) -const { staticPropertyDescriptors, states, sentCloseFrameState, sendHints } = __nccwpck_require__(9500) +const { webidl } = __nccwpck_require__(9735) +const { URLSerializer } = __nccwpck_require__(8394) +const { environmentSettingsObject } = __nccwpck_require__(7722) +const { staticPropertyDescriptors, states, sentCloseFrameState, sendHints } = __nccwpck_require__(5214) const { kWebSocketURL, kReadyState, @@ -60466,21 +58206,21 @@ const { kResponse, kSentClose, kByteParser -} = __nccwpck_require__(87292) +} = __nccwpck_require__(1150) const { isConnecting, isEstablished, isClosing, isValidSubprotocol, fireEvent -} = __nccwpck_require__(10965) -const { establishWebSocketConnection, closeWebSocketConnection } = __nccwpck_require__(10773) -const { ByteParser } = __nccwpck_require__(61872) -const { kEnumerableProperty, isBlobLike } = __nccwpck_require__(89500) -const { getGlobalDispatcher } = __nccwpck_require__(61481) -const { types } = __nccwpck_require__(57975) -const { ErrorEvent, CloseEvent } = __nccwpck_require__(26760) -const { SendQueue } = __nccwpck_require__(80504) +} = __nccwpck_require__(3155) +const { establishWebSocketConnection, closeWebSocketConnection } = __nccwpck_require__(9431) +const { ByteParser } = __nccwpck_require__(2502) +const { kEnumerableProperty, isBlobLike } = __nccwpck_require__(7662) +const { getGlobalDispatcher } = __nccwpck_require__(8707) +const { types } = __nccwpck_require__(7975) +const { ErrorEvent, CloseEvent } = __nccwpck_require__(7690) +const { SendQueue } = __nccwpck_require__(7562) // https://websockets.spec.whatwg.org/#interface-definition class WebSocket extends EventTarget { @@ -61044,7 +58784,7 @@ module.exports = { /***/ }), -/***/ 92977: +/***/ 8710: /***/ ((__unused_webpack_module, exports) => { @@ -61076,77 +58816,209 @@ exports.z = function (fn) { /***/ }), -/***/ 42613: +/***/ 1192: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + +const isWindows = process.platform === 'win32' || + process.env.OSTYPE === 'cygwin' || + process.env.OSTYPE === 'msys' + +const path = __nccwpck_require__(6928) +const COLON = isWindows ? ';' : ':' +const isexe = __nccwpck_require__(7105) + +const getNotFoundError = (cmd) => + Object.assign(new Error(`not found: ${cmd}`), { code: 'ENOENT' }) + +const getPathInfo = (cmd, opt) => { + const colon = opt.colon || COLON + + // If it has a slash, then we don't bother searching the pathenv. + // just check the file itself, and that's it. + const pathEnv = cmd.match(/\//) || isWindows && cmd.match(/\\/) ? [''] + : ( + [ + // windows always checks the cwd first + ...(isWindows ? [process.cwd()] : []), + ...(opt.path || process.env.PATH || + /* istanbul ignore next: very unusual */ '').split(colon), + ] + ) + const pathExtExe = isWindows + ? opt.pathExt || process.env.PATHEXT || '.EXE;.CMD;.BAT;.COM' + : '' + const pathExt = isWindows ? pathExtExe.split(colon) : [''] + + if (isWindows) { + if (cmd.indexOf('.') !== -1 && pathExt[0] !== '') + pathExt.unshift('') + } + + return { + pathEnv, + pathExt, + pathExtExe, + } +} + +const which = (cmd, opt, cb) => { + if (typeof opt === 'function') { + cb = opt + opt = {} + } + if (!opt) + opt = {} + + const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt) + const found = [] + + const step = i => new Promise((resolve, reject) => { + if (i === pathEnv.length) + return opt.all && found.length ? resolve(found) + : reject(getNotFoundError(cmd)) + + const ppRaw = pathEnv[i] + const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw + + const pCmd = path.join(pathPart, cmd) + const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd + : pCmd + + resolve(subStep(p, i, 0)) + }) + + const subStep = (p, i, ii) => new Promise((resolve, reject) => { + if (ii === pathExt.length) + return resolve(step(i + 1)) + const ext = pathExt[ii] + isexe(p + ext, { pathExt: pathExtExe }, (er, is) => { + if (!er && is) { + if (opt.all) + found.push(p + ext) + else + return resolve(p + ext) + } + return resolve(subStep(p, i, ii + 1)) + }) + }) + + return cb ? step(0).then(res => cb(null, res), cb) : step(0) +} + +const whichSync = (cmd, opt) => { + opt = opt || {} + + const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt) + const found = [] + + for (let i = 0; i < pathEnv.length; i ++) { + const ppRaw = pathEnv[i] + const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw + + const pCmd = path.join(pathPart, cmd) + const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd + : pCmd + + for (let j = 0; j < pathExt.length; j ++) { + const cur = p + pathExt[j] + try { + const is = isexe.sync(cur, { pathExt: pathExtExe }) + if (is) { + if (opt.all) + found.push(cur) + else + return cur + } + } catch (ex) {} + } + } + + if (opt.all && found.length) + return found + + if (opt.nothrow) + return null + + throw getNotFoundError(cmd) +} + +module.exports = which +which.sync = whichSync + + +/***/ }), + +/***/ 2613: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("assert"); /***/ }), -/***/ 20181: +/***/ 181: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("buffer"); /***/ }), -/***/ 35317: +/***/ 5317: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("child_process"); /***/ }), -/***/ 49140: +/***/ 9140: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("constants"); /***/ }), -/***/ 24434: +/***/ 4434: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("events"); /***/ }), -/***/ 79896: +/***/ 9896: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("fs"); /***/ }), -/***/ 58611: +/***/ 8611: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("http"); /***/ }), -/***/ 65692: +/***/ 5692: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("https"); /***/ }), -/***/ 69278: +/***/ 9278: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("net"); /***/ }), -/***/ 34589: +/***/ 4589: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:assert"); /***/ }), -/***/ 16698: +/***/ 6698: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:async_hooks"); @@ -61160,69 +59032,62 @@ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:buffer" /***/ }), -/***/ 37540: +/***/ 7540: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:console"); /***/ }), -/***/ 77598: +/***/ 7598: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:crypto"); /***/ }), -/***/ 53053: +/***/ 3053: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:diagnostics_channel"); /***/ }), -/***/ 40610: +/***/ 610: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:dns"); /***/ }), -/***/ 78474: +/***/ 8474: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:events"); /***/ }), -/***/ 37067: +/***/ 7067: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:http"); /***/ }), -/***/ 32467: +/***/ 2467: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:http2"); /***/ }), -/***/ 77030: +/***/ 7030: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:net"); /***/ }), -/***/ 76760: -/***/ ((module) => { - -module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:path"); - -/***/ }), - /***/ 643: /***/ ((module) => { @@ -61230,70 +59095,70 @@ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:perf_ho /***/ }), -/***/ 41792: +/***/ 1792: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:querystring"); /***/ }), -/***/ 57075: +/***/ 7075: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:stream"); /***/ }), -/***/ 41692: +/***/ 1692: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:tls"); /***/ }), -/***/ 73136: +/***/ 3136: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:url"); /***/ }), -/***/ 57975: +/***/ 7975: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:util"); /***/ }), -/***/ 73429: +/***/ 3429: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:util/types"); /***/ }), -/***/ 75919: +/***/ 5919: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:worker_threads"); /***/ }), -/***/ 38522: +/***/ 8522: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:zlib"); /***/ }), -/***/ 70857: +/***/ 857: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("os"); /***/ }), -/***/ 16928: +/***/ 6928: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("path"); @@ -61307,28 +59172,28 @@ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("stream"); /***/ }), -/***/ 13193: +/***/ 3193: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("string_decoder"); /***/ }), -/***/ 64756: +/***/ 4756: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("tls"); /***/ }), -/***/ 39023: +/***/ 9023: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("util"); /***/ }), -/***/ 7719: +/***/ 5829: /***/ ((module) => { function _OverloadYield(e, d) { @@ -61338,7 +59203,7 @@ module.exports = _OverloadYield, module.exports.__esModule = true, module.export /***/ }), -/***/ 42192: +/***/ 4950: /***/ ((module) => { function _assertThisInitialized(e) { @@ -61349,7 +59214,7 @@ module.exports = _assertThisInitialized, module.exports.__esModule = true, modul /***/ }), -/***/ 67584: +/***/ 7270: /***/ ((module) => { function asyncGeneratorStep(n, t, e, r, o, a, c) { @@ -61381,7 +59246,7 @@ module.exports = _asyncToGenerator, module.exports.__esModule = true, module.exp /***/ }), -/***/ 33446: +/***/ 1220: /***/ ((module) => { function _classCallCheck(a, n) { @@ -61391,11 +59256,11 @@ module.exports = _classCallCheck, module.exports.__esModule = true, module.expor /***/ }), -/***/ 60097: +/***/ 7159: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var isNativeReflectConstruct = __nccwpck_require__(42307); -var setPrototypeOf = __nccwpck_require__(26169); +var isNativeReflectConstruct = __nccwpck_require__(469); +var setPrototypeOf = __nccwpck_require__(4299); function _construct(t, e, r) { if (isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments); var o = [null]; @@ -61407,7 +59272,7 @@ module.exports = _construct, module.exports.__esModule = true, module.exports["d /***/ }), -/***/ 55989: +/***/ 1695: /***/ ((module) => { function _getPrototypeOf(t) { @@ -61419,10 +59284,10 @@ module.exports = _getPrototypeOf, module.exports.__esModule = true, module.expor /***/ }), -/***/ 87406: +/***/ 4300: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var setPrototypeOf = __nccwpck_require__(26169); +var setPrototypeOf = __nccwpck_require__(4299); function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { @@ -61439,7 +59304,7 @@ module.exports = _inherits, module.exports.__esModule = true, module.exports["de /***/ }), -/***/ 29733: +/***/ 6311: /***/ ((module) => { function _isNativeFunction(t) { @@ -61453,7 +59318,7 @@ module.exports = _isNativeFunction, module.exports.__esModule = true, module.exp /***/ }), -/***/ 42307: +/***/ 469: /***/ ((module) => { function _isNativeReflectConstruct() { @@ -61468,11 +59333,11 @@ module.exports = _isNativeReflectConstruct, module.exports.__esModule = true, mo /***/ }), -/***/ 83855: +/***/ 5297: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var _typeof = (__nccwpck_require__(29563)["default"]); -var assertThisInitialized = __nccwpck_require__(42192); +var _typeof = (__nccwpck_require__(9741)["default"]); +var assertThisInitialized = __nccwpck_require__(4950); function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); @@ -61482,10 +59347,10 @@ module.exports = _possibleConstructorReturn, module.exports.__esModule = true, m /***/ }), -/***/ 61338: +/***/ 2080: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var regeneratorDefine = __nccwpck_require__(49225); +var regeneratorDefine = __nccwpck_require__(1943); function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, @@ -61577,10 +59442,10 @@ module.exports = _regenerator, module.exports.__esModule = true, module.exports[ /***/ }), -/***/ 72624: +/***/ 3822: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var regeneratorAsyncGen = __nccwpck_require__(41092); +var regeneratorAsyncGen = __nccwpck_require__(2302); function _regeneratorAsync(n, e, r, t, o) { var a = regeneratorAsyncGen(n, e, r, t, o); return a.next().then(function (n) { @@ -61591,11 +59456,11 @@ module.exports = _regeneratorAsync, module.exports.__esModule = true, module.exp /***/ }), -/***/ 41092: +/***/ 2302: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var regenerator = __nccwpck_require__(61338); -var regeneratorAsyncIterator = __nccwpck_require__(31994); +var regenerator = __nccwpck_require__(2080); +var regeneratorAsyncIterator = __nccwpck_require__(8996); function _regeneratorAsyncGen(r, e, t, o, n) { return new regeneratorAsyncIterator(regenerator().w(r, e, t, o), n || Promise); } @@ -61603,11 +59468,11 @@ module.exports = _regeneratorAsyncGen, module.exports.__esModule = true, module. /***/ }), -/***/ 31994: +/***/ 8996: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var OverloadYield = __nccwpck_require__(7719); -var regeneratorDefine = __nccwpck_require__(49225); +var OverloadYield = __nccwpck_require__(5829); +var regeneratorDefine = __nccwpck_require__(1943); function AsyncIterator(t, e) { function n(r, o, i, f) { try { @@ -61642,7 +59507,7 @@ module.exports = AsyncIterator, module.exports.__esModule = true, module.exports /***/ }), -/***/ 49225: +/***/ 1943: /***/ ((module) => { function _regeneratorDefine(e, r, n, t) { @@ -61653,26 +59518,24 @@ function _regeneratorDefine(e, r, n, t) { i = 0; } module.exports = _regeneratorDefine = function regeneratorDefine(e, r, n, t) { - if (r) i ? i(e, r, { + function o(r, n) { + _regeneratorDefine(e, r, function (e) { + return this._invoke(r, n, e); + }); + } + r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t - }) : e[r] = n;else { - var o = function o(r, n) { - _regeneratorDefine(e, r, function (e) { - return this._invoke(r, n, e); - }); - }; - o("next", 0), o("throw", 1), o("return", 2); - } + }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, module.exports.__esModule = true, module.exports["default"] = module.exports, _regeneratorDefine(e, r, n, t); } module.exports = _regeneratorDefine, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), -/***/ 76866: +/***/ 3072: /***/ ((module) => { function _regeneratorKeys(e) { @@ -61688,16 +59551,16 @@ module.exports = _regeneratorKeys, module.exports.__esModule = true, module.expo /***/ }), -/***/ 83156: +/***/ 3390: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var OverloadYield = __nccwpck_require__(7719); -var regenerator = __nccwpck_require__(61338); -var regeneratorAsync = __nccwpck_require__(72624); -var regeneratorAsyncGen = __nccwpck_require__(41092); -var regeneratorAsyncIterator = __nccwpck_require__(31994); -var regeneratorKeys = __nccwpck_require__(76866); -var regeneratorValues = __nccwpck_require__(57524); +var OverloadYield = __nccwpck_require__(5829); +var regenerator = __nccwpck_require__(2080); +var regeneratorAsync = __nccwpck_require__(3822); +var regeneratorAsyncGen = __nccwpck_require__(2302); +var regeneratorAsyncIterator = __nccwpck_require__(8996); +var regeneratorKeys = __nccwpck_require__(3072); +var regeneratorValues = __nccwpck_require__(4106); function _regeneratorRuntime() { "use strict"; @@ -61771,10 +59634,10 @@ module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.e /***/ }), -/***/ 57524: +/***/ 4106: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var _typeof = (__nccwpck_require__(29563)["default"]); +var _typeof = (__nccwpck_require__(9741)["default"]); function _regeneratorValues(e) { if (null != e) { var t = e["function" == typeof Symbol && Symbol.iterator || "@@iterator"], @@ -61796,7 +59659,7 @@ module.exports = _regeneratorValues, module.exports.__esModule = true, module.ex /***/ }), -/***/ 26169: +/***/ 4299: /***/ ((module) => { function _setPrototypeOf(t, e) { @@ -61808,7 +59671,7 @@ module.exports = _setPrototypeOf, module.exports.__esModule = true, module.expor /***/ }), -/***/ 29563: +/***/ 9741: /***/ ((module) => { function _typeof(o) { @@ -61824,13 +59687,13 @@ module.exports = _typeof, module.exports.__esModule = true, module.exports["defa /***/ }), -/***/ 16318: +/***/ 4372: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var getPrototypeOf = __nccwpck_require__(55989); -var setPrototypeOf = __nccwpck_require__(26169); -var isNativeFunction = __nccwpck_require__(29733); -var construct = __nccwpck_require__(60097); +var getPrototypeOf = __nccwpck_require__(1695); +var setPrototypeOf = __nccwpck_require__(4299); +var isNativeFunction = __nccwpck_require__(6311); +var construct = __nccwpck_require__(7159); function _wrapNativeSuper(t) { var r = "function" == typeof Map ? new Map() : void 0; return module.exports = _wrapNativeSuper = function _wrapNativeSuper(t) { @@ -61857,12 +59720,12 @@ module.exports = _wrapNativeSuper, module.exports.__esModule = true, module.expo /***/ }), -/***/ 65907: +/***/ 5213: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // TODO(Babel 8): Remove this file. -var runtime = __nccwpck_require__(83156)(); +var runtime = __nccwpck_require__(3390)(); module.exports = runtime; // Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736= @@ -61879,7 +59742,360 @@ try { /***/ }), -/***/ 91328: +/***/ 885: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + + + +/* eslint-disable no-var */ + +var reusify = __nccwpck_require__(3728) + +function fastqueue (context, worker, _concurrency) { + if (typeof context === 'function') { + _concurrency = worker + worker = context + context = null + } + + if (!(_concurrency >= 1)) { + throw new Error('fastqueue concurrency must be equal to or greater than 1') + } + + var cache = reusify(Task) + var queueHead = null + var queueTail = null + var _running = 0 + var errorHandler = null + + var self = { + push: push, + drain: noop, + saturated: noop, + pause: pause, + paused: false, + + get concurrency () { + return _concurrency + }, + set concurrency (value) { + if (!(value >= 1)) { + throw new Error('fastqueue concurrency must be equal to or greater than 1') + } + _concurrency = value + + if (self.paused) return + for (; queueHead && _running < _concurrency;) { + _running++ + release() + } + }, + + running: running, + resume: resume, + idle: idle, + length: length, + getQueue: getQueue, + unshift: unshift, + empty: noop, + kill: kill, + killAndDrain: killAndDrain, + error: error, + abort: abort + } + + return self + + function running () { + return _running + } + + function pause () { + self.paused = true + } + + function length () { + var current = queueHead + var counter = 0 + + while (current) { + current = current.next + counter++ + } + + return counter + } + + function getQueue () { + var current = queueHead + var tasks = [] + + while (current) { + tasks.push(current.value) + current = current.next + } + + return tasks + } + + function resume () { + if (!self.paused) return + self.paused = false + if (queueHead === null) { + _running++ + release() + return + } + for (; queueHead && _running < _concurrency;) { + _running++ + release() + } + } + + function idle () { + return _running === 0 && self.length() === 0 + } + + function push (value, done) { + var current = cache.get() + + current.context = context + current.release = release + current.value = value + current.callback = done || noop + current.errorHandler = errorHandler + + if (_running >= _concurrency || self.paused) { + if (queueTail) { + queueTail.next = current + queueTail = current + } else { + queueHead = current + queueTail = current + self.saturated() + } + } else { + _running++ + worker.call(context, current.value, current.worked) + } + } + + function unshift (value, done) { + var current = cache.get() + + current.context = context + current.release = release + current.value = value + current.callback = done || noop + current.errorHandler = errorHandler + + if (_running >= _concurrency || self.paused) { + if (queueHead) { + current.next = queueHead + queueHead = current + } else { + queueHead = current + queueTail = current + self.saturated() + } + } else { + _running++ + worker.call(context, current.value, current.worked) + } + } + + function release (holder) { + if (holder) { + cache.release(holder) + } + var next = queueHead + if (next && _running <= _concurrency) { + if (!self.paused) { + if (queueTail === queueHead) { + queueTail = null + } + queueHead = next.next + next.next = null + worker.call(context, next.value, next.worked) + if (queueTail === null) { + self.empty() + } + } else { + _running-- + } + } else if (--_running === 0) { + self.drain() + } + } + + function kill () { + queueHead = null + queueTail = null + self.drain = noop + } + + function killAndDrain () { + queueHead = null + queueTail = null + self.drain() + self.drain = noop + } + + function abort () { + var current = queueHead + queueHead = null + queueTail = null + + while (current) { + var next = current.next + var callback = current.callback + var errorHandler = current.errorHandler + var val = current.value + var context = current.context + + // Reset the task state + current.value = null + current.callback = noop + current.errorHandler = null + + // Call error handler if present + if (errorHandler) { + errorHandler(new Error('abort'), val) + } + + // Call callback with error + callback.call(context, new Error('abort')) + + // Release the task back to the pool + current.release(current) + + current = next + } + + self.drain = noop + } + + function error (handler) { + errorHandler = handler + } +} + +function noop () {} + +function Task () { + this.value = null + this.callback = noop + this.next = null + this.release = noop + this.context = null + this.errorHandler = null + + var self = this + + this.worked = function worked (err, result) { + var callback = self.callback + var errorHandler = self.errorHandler + var val = self.value + self.value = null + self.callback = noop + if (self.errorHandler) { + errorHandler(err, val) + } + callback.call(self.context, err, result) + self.release(self) + } +} + +function queueAsPromised (context, worker, _concurrency) { + if (typeof context === 'function') { + _concurrency = worker + worker = context + context = null + } + + function asyncWrapper (arg, cb) { + worker.call(this, arg) + .then(function (res) { + cb(null, res) + }, cb) + } + + var queue = fastqueue(context, asyncWrapper, _concurrency) + + var pushCb = queue.push + var unshiftCb = queue.unshift + + queue.push = push + queue.unshift = unshift + queue.drained = drained + + return queue + + function push (value) { + var p = new Promise(function (resolve, reject) { + pushCb(value, function (err, result) { + if (err) { + reject(err) + return + } + resolve(result) + }) + }) + + // Let's fork the promise chain to + // make the error bubble up to the user but + // not lead to a unhandledRejection + p.catch(noop) + + return p + } + + function unshift (value) { + var p = new Promise(function (resolve, reject) { + unshiftCb(value, function (err, result) { + if (err) { + reject(err) + return + } + resolve(result) + }) + }) + + // Let's fork the promise chain to + // make the error bubble up to the user but + // not lead to a unhandledRejection + p.catch(noop) + + return p + } + + function drained () { + var p = new Promise(function (resolve) { + process.nextTick(function () { + if (queue.idle()) { + resolve() + } else { + var previousDrain = queue.drain + queue.drain = function () { + if (typeof previousDrain === 'function') previousDrain() + resolve() + queue.drain = previousDrain + } + } + }) + }) + + return p + } +} + +module.exports = fastqueue +module.exports.promise = queueAsPromised + + +/***/ }), + +/***/ 5767: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -61890,7 +60106,7 @@ exports.unload = exports.load = exports.onExit = exports.signals = void 0; // that are in the direct sync flow of nyc's outputCoverage are // ignored, since we can never get coverage for them. // grab a reference to node's real process object right away -const signals_js_1 = __nccwpck_require__(22137); +const signals_js_1 = __nccwpck_require__(2362); Object.defineProperty(exports, "signals", ({ enumerable: true, get: function () { return signals_js_1.signals; } })); const processOk = (process) => !!process && typeof process === 'object' && @@ -62164,7 +60380,7 @@ exports.unload = _a.unload; /***/ }), -/***/ 22137: +/***/ 2362: /***/ ((__unused_webpack_module, exports) => { @@ -62254,11 +60470,11 @@ var __webpack_exports__ = {}; ;// CONCATENATED MODULE: external "node:fs/promises" const promises_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:fs/promises"); -// EXTERNAL MODULE: external "node:path" -var external_node_path_ = __nccwpck_require__(76760); +;// CONCATENATED MODULE: external "node:path" +const external_node_path_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:path"); // EXTERNAL MODULE: external "os" -var external_os_ = __nccwpck_require__(70857); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/utils.js +var external_os_ = __nccwpck_require__(857); +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/utils.js // We use any as a valid input type /* eslint-disable @typescript-eslint/no-explicit-any */ /** @@ -62294,7 +60510,7 @@ function utils_toCommandProperties(annotationProperties) { }; } //# sourceMappingURL=utils.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/command.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/command.js /** @@ -62389,8 +60605,8 @@ function escapeProperty(s) { ;// CONCATENATED MODULE: external "crypto" const external_crypto_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("crypto"); // EXTERNAL MODULE: external "fs" -var external_fs_ = __nccwpck_require__(79896); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/file-command.js +var external_fs_ = __nccwpck_require__(9896); +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/file-command.js // For internal use, subject to change. // We use any as a valid input type /* eslint-disable @typescript-eslint/no-explicit-any */ @@ -62426,12 +60642,12 @@ function file_command_prepareKeyValueMessage(key, value) { } //# sourceMappingURL=file-command.js.map // EXTERNAL MODULE: external "path" -var external_path_ = __nccwpck_require__(16928); +var external_path_ = __nccwpck_require__(6928); // EXTERNAL MODULE: external "http" -var external_http_ = __nccwpck_require__(58611); +var external_http_ = __nccwpck_require__(8611); // EXTERNAL MODULE: external "https" -var external_https_ = __nccwpck_require__(65692); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/node_modules/@actions/http-client/lib/proxy.js +var external_https_ = __nccwpck_require__(5692); +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+http-client@4.0.0/node_modules/@actions/http-client/lib/proxy.js function getProxyUrl(reqUrl) { const usingSsl = reqUrl.protocol === 'https:'; if (checkBypass(reqUrl)) { @@ -62522,11 +60738,11 @@ class DecodedURL extends URL { } } //# sourceMappingURL=proxy.js.map -// EXTERNAL MODULE: ../../node_modules/tunnel/index.js -var node_modules_tunnel = __nccwpck_require__(5070); -// EXTERNAL MODULE: ../../node_modules/undici/index.js -var undici = __nccwpck_require__(61684); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/node_modules/@actions/http-client/lib/index.js +// EXTERNAL MODULE: ../../node_modules/.pnpm/tunnel@0.0.6/node_modules/tunnel/index.js +var node_modules_tunnel = __nccwpck_require__(7285); +// EXTERNAL MODULE: ../../node_modules/.pnpm/undici@6.24.1/node_modules/undici/index.js +var undici = __nccwpck_require__(4906); +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+http-client@4.0.0/node_modules/@actions/http-client/lib/index.js /* eslint-disable @typescript-eslint/no-explicit-any */ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } @@ -63223,7 +61439,7 @@ class lib_HttpClient { } const lowercaseKeys = (obj) => Object.keys(obj).reduce((c, k) => ((c[k.toLowerCase()] = obj[k]), c), {}); //# sourceMappingURL=index.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/node_modules/@actions/http-client/lib/auth.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+http-client@4.0.0/node_modules/@actions/http-client/lib/auth.js var auth_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -63299,7 +61515,7 @@ class PersonalAccessTokenCredentialHandler { } } //# sourceMappingURL=auth.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/oidc-utils.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/oidc-utils.js var oidc_utils_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -63373,7 +61589,7 @@ class oidc_utils_OidcClient { } } //# sourceMappingURL=oidc-utils.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/summary.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/summary.js var summary_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -63654,7 +61870,7 @@ const _summary = new Summary(); const markdownSummary = (/* unused pure expression or super */ null && (_summary)); const summary = (/* unused pure expression or super */ null && (_summary)); //# sourceMappingURL=summary.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/path-utils.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/path-utils.js /** * toPosixPath converts the given path to the posix form. On Windows, \\ will be @@ -63689,14 +61905,14 @@ function toPlatformPath(pth) { } //# sourceMappingURL=path-utils.js.map // EXTERNAL MODULE: external "string_decoder" -var external_string_decoder_ = __nccwpck_require__(13193); +var external_string_decoder_ = __nccwpck_require__(3193); // EXTERNAL MODULE: external "events" -var external_events_ = __nccwpck_require__(24434); +var external_events_ = __nccwpck_require__(4434); // EXTERNAL MODULE: external "child_process" -var external_child_process_ = __nccwpck_require__(35317); +var external_child_process_ = __nccwpck_require__(5317); // EXTERNAL MODULE: external "assert" -var external_assert_ = __nccwpck_require__(42613); -;// CONCATENATED MODULE: ../../node_modules/@actions/io/lib/io-util.js +var external_assert_ = __nccwpck_require__(2613); +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+io@3.0.2/node_modules/@actions/io/lib/io-util.js var io_util_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -63876,7 +62092,7 @@ function getCmdPath() { return (_a = process.env['COMSPEC']) !== null && _a !== void 0 ? _a : `cmd.exe`; } //# sourceMappingURL=io-util.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/io/lib/io.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+io@3.0.2/node_modules/@actions/io/lib/io.js var io_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -64150,7 +62366,7 @@ function io_copyFile(srcFile, destFile, force) { //# sourceMappingURL=io.js.map ;// CONCATENATED MODULE: external "timers" const external_timers_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("timers"); -;// CONCATENATED MODULE: ../../node_modules/@actions/exec/lib/toolrunner.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+exec@3.0.0/node_modules/@actions/exec/lib/toolrunner.js var toolrunner_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -64738,7 +62954,7 @@ class ExecState extends external_events_.EventEmitter { } } //# sourceMappingURL=toolrunner.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/exec/lib/exec.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+exec@3.0.0/node_modules/@actions/exec/lib/exec.js var exec_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -64818,7 +63034,7 @@ function getExecOutput(commandLine, args, options) { }); } //# sourceMappingURL=exec.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/platform.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/platform.js var platform_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -64883,7 +63099,7 @@ function getDetails() { }); } //# sourceMappingURL=platform.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/core.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/core.js var core_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -65201,20 +63417,20 @@ function getIDToken(aud) { */ //# sourceMappingURL=core.js.map -// EXTERNAL MODULE: ../../node_modules/execa/index.js -var execa = __nccwpck_require__(66096); +// EXTERNAL MODULE: ../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/index.js +var execa = __nccwpck_require__(3650); // EXTERNAL MODULE: external "node:console" -var external_node_console_ = __nccwpck_require__(37540); -// EXTERNAL MODULE: ../../node_modules/@changesets/get-release-plan/dist/changesets-get-release-plan.cjs.js -var changesets_get_release_plan_cjs = __nccwpck_require__(57651); -// EXTERNAL MODULE: ../../node_modules/@changesets/get-release-plan/dist/changesets-get-release-plan.cjs.default.js -var changesets_get_release_plan_cjs_default = __nccwpck_require__(24856); -;// CONCATENATED MODULE: ../../node_modules/@changesets/get-release-plan/dist/changesets-get-release-plan.cjs.mjs +var external_node_console_ = __nccwpck_require__(7540); +// EXTERNAL MODULE: ../../node_modules/.pnpm/@changesets+get-release-plan@4.0.15/node_modules/@changesets/get-release-plan/dist/changesets-get-release-plan.cjs.js +var changesets_get_release_plan_cjs = __nccwpck_require__(8600); +// EXTERNAL MODULE: ../../node_modules/.pnpm/@changesets+get-release-plan@4.0.15/node_modules/@changesets/get-release-plan/dist/changesets-get-release-plan.cjs.default.js +var changesets_get_release_plan_cjs_default = __nccwpck_require__(8679); +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@changesets+get-release-plan@4.0.15/node_modules/@changesets/get-release-plan/dist/changesets-get-release-plan.cjs.mjs -// EXTERNAL MODULE: ../../node_modules/semver/index.js -var semver = __nccwpck_require__(90084); +// EXTERNAL MODULE: ../../node_modules/.pnpm/semver@7.7.4/node_modules/semver/index.js +var semver = __nccwpck_require__(4423); ;// CONCATENATED MODULE: ./lib/build-packages/changesets-fixed-version-bump/util.js /* eslint-disable jsdoc/require-jsdoc */ @@ -65276,7 +63492,7 @@ async function bump() { await (0,execa.command)('node_modules/@changesets/cli/bin.js version'); } async function updateRootPackageJson(version) { - await transformFile((0,external_node_path_.resolve)('package.json'), packageJson => formatJson({ + await transformFile((0,external_node_path_namespaceObject.resolve)('package.json'), packageJson => formatJson({ ...JSON.parse(packageJson), version: `${version}` })); diff --git a/.github/actions/check-license/index.js b/.github/actions/check-license/index.js index 0fa68827f7..0e44d3c71d 100644 --- a/.github/actions/check-license/index.js +++ b/.github/actions/check-license/index.js @@ -1,15 +1,15 @@ import { createRequire as __WEBPACK_EXTERNAL_createRequire } from "module"; /******/ var __webpack_modules__ = ({ -/***/ 5070: +/***/ 7285: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -/* unused reexport */ __nccwpck_require__(5862); +/* unused reexport */ __nccwpck_require__(8703); /***/ }), -/***/ 5862: +/***/ 8703: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { var __webpack_unused_export__; @@ -281,34 +281,34 @@ __webpack_unused_export__ = debug; // for test /***/ }), -/***/ 1684: +/***/ 4906: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { var __webpack_unused_export__; -const Client = __nccwpck_require__(1313) -const Dispatcher = __nccwpck_require__(3415) -const Pool = __nccwpck_require__(5928) -const BalancedPool = __nccwpck_require__(6681) -const Agent = __nccwpck_require__(1745) -const ProxyAgent = __nccwpck_require__(7508) -const EnvHttpProxyAgent = __nccwpck_require__(9221) -const RetryAgent = __nccwpck_require__(334) -const errors = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) +const Client = __nccwpck_require__(979) +const Dispatcher = __nccwpck_require__(7029) +const Pool = __nccwpck_require__(9610) +const BalancedPool = __nccwpck_require__(7475) +const Agent = __nccwpck_require__(7823) +const ProxyAgent = __nccwpck_require__(826) +const EnvHttpProxyAgent = __nccwpck_require__(2935) +const RetryAgent = __nccwpck_require__(5308) +const errors = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) const { InvalidArgumentError } = errors -const api = __nccwpck_require__(2531) -const buildConnector = __nccwpck_require__(1332) -const MockClient = __nccwpck_require__(2361) -const MockAgent = __nccwpck_require__(7017) -const MockPool = __nccwpck_require__(6480) -const mockErrors = __nccwpck_require__(2673) -const RetryHandler = __nccwpck_require__(4004) -const { getGlobalDispatcher, setGlobalDispatcher } = __nccwpck_require__(1481) -const DecoratorHandler = __nccwpck_require__(9151) -const RedirectHandler = __nccwpck_require__(7158) -const createRedirectInterceptor = __nccwpck_require__(1576) +const api = __nccwpck_require__(3797) +const buildConnector = __nccwpck_require__(46) +const MockClient = __nccwpck_require__(6899) +const MockAgent = __nccwpck_require__(2527) +const MockPool = __nccwpck_require__(7226) +const mockErrors = __nccwpck_require__(2863) +const RetryHandler = __nccwpck_require__(1450) +const { getGlobalDispatcher, setGlobalDispatcher } = __nccwpck_require__(8707) +const DecoratorHandler = __nccwpck_require__(801) +const RedirectHandler = __nccwpck_require__(1932) +const createRedirectInterceptor = __nccwpck_require__(7958) Object.assign(Dispatcher.prototype, api) @@ -326,10 +326,10 @@ __webpack_unused_export__ = DecoratorHandler __webpack_unused_export__ = RedirectHandler __webpack_unused_export__ = createRedirectInterceptor __webpack_unused_export__ = { - redirect: __nccwpck_require__(7734), - retry: __nccwpck_require__(5486), - dump: __nccwpck_require__(5376), - dns: __nccwpck_require__(4287) + redirect: __nccwpck_require__(3184), + retry: __nccwpck_require__(5904), + dump: __nccwpck_require__(4166), + dns: __nccwpck_require__(4289) } __webpack_unused_export__ = buildConnector @@ -391,7 +391,7 @@ function makeDispatcher (fn) { __webpack_unused_export__ = setGlobalDispatcher __webpack_unused_export__ = getGlobalDispatcher -const fetchImpl = (__nccwpck_require__(4202).fetch) +const fetchImpl = (__nccwpck_require__(224).fetch) __webpack_unused_export__ = async function fetch (init, options = undefined) { try { return await fetchImpl(init, options) @@ -403,39 +403,39 @@ __webpack_unused_export__ = async function fetch (init, options = undefined) { throw err } } -/* unused reexport */ __nccwpck_require__(3408).Headers -/* unused reexport */ __nccwpck_require__(7287).Response -/* unused reexport */ __nccwpck_require__(9683).Request -/* unused reexport */ __nccwpck_require__(3818).FormData +/* unused reexport */ __nccwpck_require__(8146).Headers +/* unused reexport */ __nccwpck_require__(2873).Response +/* unused reexport */ __nccwpck_require__(557).Request +/* unused reexport */ __nccwpck_require__(8932).FormData __webpack_unused_export__ = globalThis.File ?? (__nccwpck_require__(4573).File) -/* unused reexport */ __nccwpck_require__(6575).FileReader +/* unused reexport */ __nccwpck_require__(7669).FileReader -const { setGlobalOrigin, getGlobalOrigin } = __nccwpck_require__(5311) +const { setGlobalOrigin, getGlobalOrigin } = __nccwpck_require__(777) __webpack_unused_export__ = setGlobalOrigin __webpack_unused_export__ = getGlobalOrigin -const { CacheStorage } = __nccwpck_require__(6577) -const { kConstruct } = __nccwpck_require__(8329) +const { CacheStorage } = __nccwpck_require__(4215) +const { kConstruct } = __nccwpck_require__(7747) // Cache & CacheStorage are tightly coupled with fetch. Even if it may run // in an older version of Node, it doesn't have any use without fetch. __webpack_unused_export__ = new CacheStorage(kConstruct) -const { deleteCookie, getCookies, getSetCookies, setCookie } = __nccwpck_require__(7889) +const { deleteCookie, getCookies, getSetCookies, setCookie } = __nccwpck_require__(8659) __webpack_unused_export__ = deleteCookie __webpack_unused_export__ = getCookies __webpack_unused_export__ = getSetCookies __webpack_unused_export__ = setCookie -const { parseMIMEType, serializeAMimeType } = __nccwpck_require__(192) +const { parseMIMEType, serializeAMimeType } = __nccwpck_require__(8394) __webpack_unused_export__ = parseMIMEType __webpack_unused_export__ = serializeAMimeType -const { CloseEvent, ErrorEvent, MessageEvent } = __nccwpck_require__(6760) -/* unused reexport */ __nccwpck_require__(2522).WebSocket +const { CloseEvent, ErrorEvent, MessageEvent } = __nccwpck_require__(7690) +/* unused reexport */ __nccwpck_require__(7836).WebSocket __webpack_unused_export__ = CloseEvent __webpack_unused_export__ = ErrorEvent __webpack_unused_export__ = MessageEvent @@ -451,18 +451,18 @@ __webpack_unused_export__ = MockPool __webpack_unused_export__ = MockAgent __webpack_unused_export__ = mockErrors -const { EventSource } = __nccwpck_require__(7042) +const { EventSource } = __nccwpck_require__(3276) __webpack_unused_export__ = EventSource /***/ }), -/***/ 2730: +/***/ 6756: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { addAbortListener } = __nccwpck_require__(9500) -const { RequestAbortedError } = __nccwpck_require__(3959) +const { addAbortListener } = __nccwpck_require__(7662) +const { RequestAbortedError } = __nccwpck_require__(5933) const kListener = Symbol('kListener') const kSignal = Symbol('kSignal') @@ -522,16 +522,16 @@ module.exports = { /***/ }), -/***/ 3192: +/***/ 7530: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { AsyncResource } = __nccwpck_require__(6698) -const { InvalidArgumentError, SocketError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const { InvalidArgumentError, SocketError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { addSignal, removeSignal } = __nccwpck_require__(6756) class ConnectHandler extends AsyncResource { constructor (opts, callback) { @@ -637,7 +637,7 @@ module.exports = connect /***/ }), -/***/ 2466: +/***/ 8656: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -651,10 +651,10 @@ const { InvalidArgumentError, InvalidReturnValueError, RequestAbortedError -} = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) +} = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) const { AsyncResource } = __nccwpck_require__(6698) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const { addSignal, removeSignal } = __nccwpck_require__(6756) const assert = __nccwpck_require__(4589) const kResume = Symbol('resume') @@ -895,16 +895,16 @@ module.exports = pipeline /***/ }), -/***/ 887: +/***/ 7157: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { Readable } = __nccwpck_require__(8947) -const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { getResolveErrorBodyCallback } = __nccwpck_require__(363) +const { Readable } = __nccwpck_require__(2797) +const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { getResolveErrorBodyCallback } = __nccwpck_require__(3877) const { AsyncResource } = __nccwpck_require__(6698) class RequestHandler extends AsyncResource { @@ -1116,18 +1116,18 @@ module.exports.RequestHandler = RequestHandler /***/ }), -/***/ 4388: +/***/ 3718: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { finished, PassThrough } = __nccwpck_require__(7075) -const { InvalidArgumentError, InvalidReturnValueError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { getResolveErrorBodyCallback } = __nccwpck_require__(363) +const { InvalidArgumentError, InvalidReturnValueError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { getResolveErrorBodyCallback } = __nccwpck_require__(3877) const { AsyncResource } = __nccwpck_require__(6698) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const { addSignal, removeSignal } = __nccwpck_require__(6756) class StreamHandler extends AsyncResource { constructor (opts, factory, callback) { @@ -1343,15 +1343,15 @@ module.exports = stream /***/ }), -/***/ 6342: +/***/ 9764: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { InvalidArgumentError, SocketError } = __nccwpck_require__(3959) +const { InvalidArgumentError, SocketError } = __nccwpck_require__(5933) const { AsyncResource } = __nccwpck_require__(6698) -const util = __nccwpck_require__(9500) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const util = __nccwpck_require__(7662) +const { addSignal, removeSignal } = __nccwpck_require__(6756) const assert = __nccwpck_require__(4589) class UpgradeHandler extends AsyncResource { @@ -1458,21 +1458,21 @@ module.exports = upgrade /***/ }), -/***/ 2531: +/***/ 3797: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -module.exports.request = __nccwpck_require__(887) -module.exports.stream = __nccwpck_require__(4388) -module.exports.pipeline = __nccwpck_require__(2466) -module.exports.upgrade = __nccwpck_require__(6342) -module.exports.connect = __nccwpck_require__(3192) +module.exports.request = __nccwpck_require__(7157) +module.exports.stream = __nccwpck_require__(3718) +module.exports.pipeline = __nccwpck_require__(8656) +module.exports.upgrade = __nccwpck_require__(9764) +module.exports.connect = __nccwpck_require__(7530) /***/ }), -/***/ 8947: +/***/ 2797: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Ported from https://github.com/nodejs/undici/pull/907 @@ -1481,9 +1481,9 @@ module.exports.connect = __nccwpck_require__(3192) const assert = __nccwpck_require__(4589) const { Readable } = __nccwpck_require__(7075) -const { RequestAbortedError, NotSupportedError, InvalidArgumentError, AbortError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { ReadableStreamFrom } = __nccwpck_require__(9500) +const { RequestAbortedError, NotSupportedError, InvalidArgumentError, AbortError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { ReadableStreamFrom } = __nccwpck_require__(7662) const kConsume = Symbol('kConsume') const kReading = Symbol('kReading') @@ -1864,15 +1864,15 @@ module.exports = { Readable: BodyReadable, chunksDecode } /***/ }), -/***/ 363: +/***/ 3877: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { ResponseStatusCodeError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) -const { chunksDecode } = __nccwpck_require__(8947) +const { chunksDecode } = __nccwpck_require__(2797) const CHUNK_LIMIT = 128 * 1024 async function getResolveErrorBodyCallback ({ callback, body, contentType, statusCode, statusMessage, headers }) { @@ -1964,16 +1964,16 @@ module.exports = { /***/ }), -/***/ 1332: +/***/ 46: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const net = __nccwpck_require__(7030) const assert = __nccwpck_require__(4589) -const util = __nccwpck_require__(9500) -const { InvalidArgumentError, ConnectTimeoutError } = __nccwpck_require__(3959) -const timers = __nccwpck_require__(4591) +const util = __nccwpck_require__(7662) +const { InvalidArgumentError, ConnectTimeoutError } = __nccwpck_require__(5933) +const timers = __nccwpck_require__(7797) function noop () {} @@ -2211,7 +2211,7 @@ module.exports = buildConnector /***/ }), -/***/ 2371: +/***/ 7313: /***/ ((module) => { @@ -2336,7 +2336,7 @@ module.exports = { /***/ }), -/***/ 5458: +/***/ 8560: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -2545,7 +2545,7 @@ module.exports = { /***/ }), -/***/ 3959: +/***/ 5933: /***/ ((module) => { @@ -2977,7 +2977,7 @@ module.exports = { /***/ }), -/***/ 9691: +/***/ 9441: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -2985,7 +2985,7 @@ module.exports = { const { InvalidArgumentError, NotSupportedError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const assert = __nccwpck_require__(4589) const { isValidHTTPToken, @@ -3000,9 +3000,9 @@ const { validateHandler, getServerName, normalizedMethodRecords -} = __nccwpck_require__(9500) -const { channels } = __nccwpck_require__(5458) -const { headerNameLowerCasedRecord } = __nccwpck_require__(2371) +} = __nccwpck_require__(7662) +const { channels } = __nccwpck_require__(8560) +const { headerNameLowerCasedRecord } = __nccwpck_require__(7313) // Verifies that a given path is valid does not contain control chars \x00 to \x20 const invalidPathRegex = /[^\u0021-\u00ff]/ @@ -3389,7 +3389,7 @@ module.exports = Request /***/ }), -/***/ 8031: +/***/ 3373: /***/ ((module) => { module.exports = { @@ -3463,7 +3463,7 @@ module.exports = { /***/ }), -/***/ 6868: +/***/ 6338: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -3471,7 +3471,7 @@ module.exports = { const { wellknownHeaderNames, headerNameLowerCasedRecord -} = __nccwpck_require__(2371) +} = __nccwpck_require__(7313) class TstNode { /** @type {any} */ @@ -3622,13 +3622,13 @@ module.exports = { /***/ }), -/***/ 9500: +/***/ 7662: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { kDestroyed, kBodyUsed, kListeners, kBody } = __nccwpck_require__(8031) +const { kDestroyed, kBodyUsed, kListeners, kBody } = __nccwpck_require__(3373) const { IncomingMessage } = __nccwpck_require__(7067) const stream = __nccwpck_require__(7075) const net = __nccwpck_require__(7030) @@ -3636,9 +3636,9 @@ const { Blob } = __nccwpck_require__(4573) const nodeUtil = __nccwpck_require__(7975) const { stringify } = __nccwpck_require__(1792) const { EventEmitter: EE } = __nccwpck_require__(8474) -const { InvalidArgumentError } = __nccwpck_require__(3959) -const { headerNameLowerCasedRecord } = __nccwpck_require__(2371) -const { tree } = __nccwpck_require__(6868) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const { headerNameLowerCasedRecord } = __nccwpck_require__(7313) +const { tree } = __nccwpck_require__(6338) const [nodeMajor, nodeMinor] = process.versions.node.split('.').map(v => Number(v)) @@ -4348,18 +4348,18 @@ module.exports = { /***/ }), -/***/ 1745: +/***/ 7823: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { InvalidArgumentError } = __nccwpck_require__(3959) -const { kClients, kRunning, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(8031) -const DispatcherBase = __nccwpck_require__(1517) -const Pool = __nccwpck_require__(5928) -const Client = __nccwpck_require__(1313) -const util = __nccwpck_require__(9500) -const createRedirectInterceptor = __nccwpck_require__(1576) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const { kClients, kRunning, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(3373) +const DispatcherBase = __nccwpck_require__(103) +const Pool = __nccwpck_require__(9610) +const Client = __nccwpck_require__(979) +const util = __nccwpck_require__(7662) +const createRedirectInterceptor = __nccwpck_require__(7958) const kOnConnect = Symbol('onConnect') const kOnDisconnect = Symbol('onDisconnect') @@ -4484,7 +4484,7 @@ module.exports = Agent /***/ }), -/***/ 6681: +/***/ 7475: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -4492,7 +4492,7 @@ module.exports = Agent const { BalancedPoolMissingUpstreamError, InvalidArgumentError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const { PoolBase, kClients, @@ -4500,10 +4500,10 @@ const { kAddClient, kRemoveClient, kGetDispatcher -} = __nccwpck_require__(7292) -const Pool = __nccwpck_require__(5928) -const { kUrl, kInterceptors } = __nccwpck_require__(8031) -const { parseOrigin } = __nccwpck_require__(9500) +} = __nccwpck_require__(9266) +const Pool = __nccwpck_require__(9610) +const { kUrl, kInterceptors } = __nccwpck_require__(3373) +const { parseOrigin } = __nccwpck_require__(7662) const kFactory = Symbol('factory') const kOptions = Symbol('options') @@ -4700,7 +4700,7 @@ module.exports = BalancedPool /***/ }), -/***/ 4393: +/***/ 7727: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -4708,9 +4708,9 @@ module.exports = BalancedPool /* global WebAssembly */ const assert = __nccwpck_require__(4589) -const util = __nccwpck_require__(9500) -const { channels } = __nccwpck_require__(5458) -const timers = __nccwpck_require__(4591) +const util = __nccwpck_require__(7662) +const { channels } = __nccwpck_require__(8560) +const timers = __nccwpck_require__(7797) const { RequestContentLengthMismatchError, ResponseContentLengthMismatchError, @@ -4722,7 +4722,7 @@ const { BodyTimeoutError, HTTPParserError, ResponseExceededMaxSizeError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const { kUrl, kReset, @@ -4755,9 +4755,9 @@ const { kOnError, kResume, kHTTPContext -} = __nccwpck_require__(8031) +} = __nccwpck_require__(3373) -const constants = __nccwpck_require__(748) +const constants = __nccwpck_require__(1214) const EMPTY_BUF = Buffer.alloc(0) const FastBuffer = Buffer[Symbol.species] const addListener = util.addListener @@ -4766,11 +4766,11 @@ const removeAllListeners = util.removeAllListeners let extractBody async function lazyllhttp () { - const llhttpWasmData = process.env.JEST_WORKER_ID ? __nccwpck_require__(3922) : undefined + const llhttpWasmData = process.env.JEST_WORKER_ID ? __nccwpck_require__(4916) : undefined let mod try { - mod = await WebAssembly.compile(__nccwpck_require__(3742)) + mod = await WebAssembly.compile(__nccwpck_require__(7708)) } catch (e) { /* istanbul ignore next */ @@ -4778,7 +4778,7 @@ async function lazyllhttp () { // being enabled, but the occurring of this other error // * https://github.com/emscripten-core/emscripten/issues/11495 // got me to remove that check to avoid breaking Node 12. - mod = await WebAssembly.compile(llhttpWasmData || __nccwpck_require__(3922)) + mod = await WebAssembly.compile(llhttpWasmData || __nccwpck_require__(4916)) } return await WebAssembly.instantiate(mod, { @@ -5573,7 +5573,7 @@ function writeH1 (client, request) { if (util.isFormDataLike(body)) { if (!extractBody) { - extractBody = (__nccwpck_require__(1448).extractBody) + extractBody = (__nccwpck_require__(4086).extractBody) } const [bodyStream, contentType] = extractBody(body) @@ -6077,20 +6077,20 @@ module.exports = connectH1 /***/ }), -/***/ 3504: +/***/ 930: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { pipeline } = __nccwpck_require__(7075) -const util = __nccwpck_require__(9500) +const util = __nccwpck_require__(7662) const { RequestContentLengthMismatchError, RequestAbortedError, SocketError, InformationalError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const { kUrl, kReset, @@ -6109,7 +6109,7 @@ const { kResume, kSize, kHTTPContext -} = __nccwpck_require__(8031) +} = __nccwpck_require__(3373) const kOpenStreams = Symbol('open streams') @@ -6468,7 +6468,7 @@ function writeH2 (client, request) { let contentLength = util.bodyLength(body) if (util.isFormDataLike(body)) { - extractBody ??= (__nccwpck_require__(1448).extractBody) + extractBody ??= (__nccwpck_require__(4086).extractBody) const [bodyStream, contentType] = extractBody(body) headers['content-type'] = contentType @@ -6828,7 +6828,7 @@ module.exports = connectH2 /***/ }), -/***/ 1313: +/***/ 979: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // @ts-check @@ -6838,16 +6838,16 @@ module.exports = connectH2 const assert = __nccwpck_require__(4589) const net = __nccwpck_require__(7030) const http = __nccwpck_require__(7067) -const util = __nccwpck_require__(9500) -const { channels } = __nccwpck_require__(5458) -const Request = __nccwpck_require__(9691) -const DispatcherBase = __nccwpck_require__(1517) +const util = __nccwpck_require__(7662) +const { channels } = __nccwpck_require__(8560) +const Request = __nccwpck_require__(9441) +const DispatcherBase = __nccwpck_require__(103) const { InvalidArgumentError, InformationalError, ClientDestroyedError -} = __nccwpck_require__(3959) -const buildConnector = __nccwpck_require__(1332) +} = __nccwpck_require__(5933) +const buildConnector = __nccwpck_require__(46) const { kUrl, kServerName, @@ -6889,9 +6889,9 @@ const { kHTTPContext, kMaxConcurrentStreams, kResume -} = __nccwpck_require__(8031) -const connectH1 = __nccwpck_require__(4393) -const connectH2 = __nccwpck_require__(3504) +} = __nccwpck_require__(3373) +const connectH1 = __nccwpck_require__(7727) +const connectH2 = __nccwpck_require__(930) let deprecatedInterceptorWarned = false const kClosedResolve = Symbol('kClosedResolve') @@ -7197,7 +7197,7 @@ class Client extends DispatcherBase { } } -const createRedirectInterceptor = __nccwpck_require__(1576) +const createRedirectInterceptor = __nccwpck_require__(7958) function onError (client, err) { if ( @@ -7457,18 +7457,18 @@ module.exports = Client /***/ }), -/***/ 1517: +/***/ 103: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const Dispatcher = __nccwpck_require__(3415) +const Dispatcher = __nccwpck_require__(7029) const { ClientDestroyedError, ClientClosedError, InvalidArgumentError -} = __nccwpck_require__(3959) -const { kDestroy, kClose, kClosed, kDestroyed, kDispatch, kInterceptors } = __nccwpck_require__(8031) +} = __nccwpck_require__(5933) +const { kDestroy, kClose, kClosed, kDestroyed, kDispatch, kInterceptors } = __nccwpck_require__(3373) const kOnDestroyed = Symbol('onDestroyed') const kOnClosed = Symbol('onClosed') @@ -7654,7 +7654,7 @@ module.exports = DispatcherBase /***/ }), -/***/ 3415: +/***/ 7029: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -7726,15 +7726,15 @@ module.exports = Dispatcher /***/ }), -/***/ 9221: +/***/ 2935: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const DispatcherBase = __nccwpck_require__(1517) -const { kClose, kDestroy, kClosed, kDestroyed, kDispatch, kNoProxyAgent, kHttpProxyAgent, kHttpsProxyAgent } = __nccwpck_require__(8031) -const ProxyAgent = __nccwpck_require__(7508) -const Agent = __nccwpck_require__(1745) +const DispatcherBase = __nccwpck_require__(103) +const { kClose, kDestroy, kClosed, kDestroyed, kDispatch, kNoProxyAgent, kHttpProxyAgent, kHttpsProxyAgent } = __nccwpck_require__(3373) +const ProxyAgent = __nccwpck_require__(826) +const Agent = __nccwpck_require__(7823) const DEFAULT_PORTS = { 'http:': 80, @@ -7893,7 +7893,7 @@ module.exports = EnvHttpProxyAgent /***/ }), -/***/ 5464: +/***/ 1034: /***/ ((module) => { /* eslint-disable */ @@ -8017,15 +8017,15 @@ module.exports = class FixedQueue { /***/ }), -/***/ 7292: +/***/ 9266: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const DispatcherBase = __nccwpck_require__(1517) -const FixedQueue = __nccwpck_require__(5464) -const { kConnected, kSize, kRunning, kPending, kQueued, kBusy, kFree, kUrl, kClose, kDestroy, kDispatch } = __nccwpck_require__(8031) -const PoolStats = __nccwpck_require__(8186) +const DispatcherBase = __nccwpck_require__(103) +const FixedQueue = __nccwpck_require__(1034) +const { kConnected, kSize, kRunning, kPending, kQueued, kBusy, kFree, kUrl, kClose, kDestroy, kDispatch } = __nccwpck_require__(3373) +const PoolStats = __nccwpck_require__(7956) const kClients = Symbol('clients') const kNeedDrain = Symbol('needDrain') @@ -8218,10 +8218,10 @@ module.exports = { /***/ }), -/***/ 8186: +/***/ 7956: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kFree, kConnected, kPending, kQueued, kRunning, kSize } = __nccwpck_require__(8031) +const { kFree, kConnected, kPending, kQueued, kRunning, kSize } = __nccwpck_require__(3373) const kPool = Symbol('pool') class PoolStats { @@ -8259,7 +8259,7 @@ module.exports = PoolStats /***/ }), -/***/ 5928: +/***/ 9610: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -8270,14 +8270,14 @@ const { kNeedDrain, kAddClient, kGetDispatcher -} = __nccwpck_require__(7292) -const Client = __nccwpck_require__(1313) +} = __nccwpck_require__(9266) +const Client = __nccwpck_require__(979) const { InvalidArgumentError -} = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { kUrl, kInterceptors } = __nccwpck_require__(8031) -const buildConnector = __nccwpck_require__(1332) +} = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { kUrl, kInterceptors } = __nccwpck_require__(3373) +const buildConnector = __nccwpck_require__(46) const kOptions = Symbol('options') const kConnections = Symbol('connections') @@ -8373,19 +8373,19 @@ module.exports = Pool /***/ }), -/***/ 7508: +/***/ 826: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kProxy, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(8031) +const { kProxy, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(3373) const { URL } = __nccwpck_require__(3136) -const Agent = __nccwpck_require__(1745) -const Pool = __nccwpck_require__(5928) -const DispatcherBase = __nccwpck_require__(1517) -const { InvalidArgumentError, RequestAbortedError, SecureProxyConnectionError } = __nccwpck_require__(3959) -const buildConnector = __nccwpck_require__(1332) -const Client = __nccwpck_require__(1313) +const Agent = __nccwpck_require__(7823) +const Pool = __nccwpck_require__(9610) +const DispatcherBase = __nccwpck_require__(103) +const { InvalidArgumentError, RequestAbortedError, SecureProxyConnectionError } = __nccwpck_require__(5933) +const buildConnector = __nccwpck_require__(46) +const Client = __nccwpck_require__(979) const kAgent = Symbol('proxy agent') const kClient = Symbol('proxy client') @@ -8654,13 +8654,13 @@ module.exports = ProxyAgent /***/ }), -/***/ 334: +/***/ 5308: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const Dispatcher = __nccwpck_require__(3415) -const RetryHandler = __nccwpck_require__(4004) +const Dispatcher = __nccwpck_require__(7029) +const RetryHandler = __nccwpck_require__(1450) class RetryAgent extends Dispatcher { #agent = null @@ -8696,7 +8696,7 @@ module.exports = RetryAgent /***/ }), -/***/ 1481: +/***/ 8707: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -8704,8 +8704,8 @@ module.exports = RetryAgent // We include a version number for the Dispatcher API. In case of breaking changes, // this version number must be increased to avoid conflicts. const globalDispatcher = Symbol.for('undici.globalDispatcher.1') -const { InvalidArgumentError } = __nccwpck_require__(3959) -const Agent = __nccwpck_require__(1745) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const Agent = __nccwpck_require__(7823) if (getGlobalDispatcher() === undefined) { setGlobalDispatcher(new Agent()) @@ -8735,7 +8735,7 @@ module.exports = { /***/ }), -/***/ 9151: +/***/ 801: /***/ ((module) => { @@ -8786,15 +8786,15 @@ module.exports = class DecoratorHandler { /***/ }), -/***/ 7158: +/***/ 1932: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const util = __nccwpck_require__(9500) -const { kBodyUsed } = __nccwpck_require__(8031) +const util = __nccwpck_require__(7662) +const { kBodyUsed } = __nccwpck_require__(3373) const assert = __nccwpck_require__(4589) -const { InvalidArgumentError } = __nccwpck_require__(3959) +const { InvalidArgumentError } = __nccwpck_require__(5933) const EE = __nccwpck_require__(8474) const redirectableStatusCodes = [300, 301, 302, 303, 307, 308] @@ -9025,20 +9025,20 @@ module.exports = RedirectHandler /***/ }), -/***/ 4004: +/***/ 1450: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { kRetryHandlerDefaultRetry } = __nccwpck_require__(8031) -const { RequestRetryError } = __nccwpck_require__(3959) +const { kRetryHandlerDefaultRetry } = __nccwpck_require__(3373) +const { RequestRetryError } = __nccwpck_require__(5933) const { isDisturbed, parseHeaders, parseRangeHeader, wrapRequestBody -} = __nccwpck_require__(9500) +} = __nccwpck_require__(7662) function calculateRetryAfterHeader (retryAfter) { const current = Date.now() @@ -9406,14 +9406,14 @@ module.exports = RetryHandler /***/ }), -/***/ 4287: +/***/ 4289: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { isIP } = __nccwpck_require__(7030) const { lookup } = __nccwpck_require__(610) -const DecoratorHandler = __nccwpck_require__(9151) -const { InvalidArgumentError, InformationalError } = __nccwpck_require__(3959) +const DecoratorHandler = __nccwpck_require__(801) +const { InvalidArgumentError, InformationalError } = __nccwpck_require__(5933) const maxInt = Math.pow(2, 31) - 1 class DNSInstance { @@ -9788,14 +9788,14 @@ module.exports = interceptorOpts => { /***/ }), -/***/ 5376: +/***/ 4166: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const util = __nccwpck_require__(9500) -const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(3959) -const DecoratorHandler = __nccwpck_require__(9151) +const util = __nccwpck_require__(7662) +const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(5933) +const DecoratorHandler = __nccwpck_require__(801) class DumpHandler extends DecoratorHandler { #maxSize = 1024 * 1024 @@ -9918,12 +9918,12 @@ module.exports = createDumpInterceptor /***/ }), -/***/ 1576: +/***/ 7958: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const RedirectHandler = __nccwpck_require__(7158) +const RedirectHandler = __nccwpck_require__(1932) function createRedirectInterceptor ({ maxRedirections: defaultMaxRedirections }) { return (dispatch) => { @@ -9946,11 +9946,11 @@ module.exports = createRedirectInterceptor /***/ }), -/***/ 7734: +/***/ 3184: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const RedirectHandler = __nccwpck_require__(7158) +const RedirectHandler = __nccwpck_require__(1932) module.exports = opts => { const globalMaxRedirections = opts?.maxRedirections @@ -9977,11 +9977,11 @@ module.exports = opts => { /***/ }), -/***/ 5486: +/***/ 5904: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const RetryHandler = __nccwpck_require__(4004) +const RetryHandler = __nccwpck_require__(1450) module.exports = globalOpts => { return dispatch => { @@ -10003,13 +10003,13 @@ module.exports = globalOpts => { /***/ }), -/***/ 748: +/***/ 1214: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.SPECIAL_HEADERS = exports.HEADER_STATE = exports.MINOR = exports.MAJOR = exports.CONNECTION_TOKEN_CHARS = exports.HEADER_CHARS = exports.TOKEN = exports.STRICT_TOKEN = exports.HEX = exports.URL_CHAR = exports.STRICT_URL_CHAR = exports.USERINFO_CHARS = exports.MARK = exports.ALPHANUM = exports.NUM = exports.HEX_MAP = exports.NUM_MAP = exports.ALPHA = exports.FINISH = exports.H_METHOD_MAP = exports.METHOD_MAP = exports.METHODS_RTSP = exports.METHODS_ICE = exports.METHODS_HTTP = exports.METHODS = exports.LENIENT_FLAGS = exports.FLAGS = exports.TYPE = exports.ERROR = void 0; -const utils_1 = __nccwpck_require__(4608); +const utils_1 = __nccwpck_require__(9430); // C headers var ERROR; (function (ERROR) { @@ -10287,7 +10287,7 @@ exports.SPECIAL_HEADERS = { /***/ }), -/***/ 3922: +/***/ 4916: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -10299,7 +10299,7 @@ module.exports = Buffer.from('AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f3 /***/ }), -/***/ 3742: +/***/ 7708: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -10311,7 +10311,7 @@ module.exports = Buffer.from('AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f3 /***/ }), -/***/ 4608: +/***/ 9430: /***/ ((__unused_webpack_module, exports) => { @@ -10332,13 +10332,13 @@ exports.enumToMap = enumToMap; /***/ }), -/***/ 7017: +/***/ 2527: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kClients } = __nccwpck_require__(8031) -const Agent = __nccwpck_require__(1745) +const { kClients } = __nccwpck_require__(3373) +const Agent = __nccwpck_require__(7823) const { kAgent, kMockAgentSet, @@ -10349,14 +10349,14 @@ const { kGetNetConnect, kOptions, kFactory -} = __nccwpck_require__(2305) -const MockClient = __nccwpck_require__(2361) -const MockPool = __nccwpck_require__(6480) -const { matchValue, buildMockOptions } = __nccwpck_require__(3193) -const { InvalidArgumentError, UndiciError } = __nccwpck_require__(3959) -const Dispatcher = __nccwpck_require__(3415) -const Pluralizer = __nccwpck_require__(5773) -const PendingInterceptorsFormatter = __nccwpck_require__(5738) +} = __nccwpck_require__(7351) +const MockClient = __nccwpck_require__(6899) +const MockPool = __nccwpck_require__(7226) +const { matchValue, buildMockOptions } = __nccwpck_require__(987) +const { InvalidArgumentError, UndiciError } = __nccwpck_require__(5933) +const Dispatcher = __nccwpck_require__(7029) +const Pluralizer = __nccwpck_require__(899) +const PendingInterceptorsFormatter = __nccwpck_require__(3576) class MockAgent extends Dispatcher { constructor (opts) { @@ -10499,14 +10499,14 @@ module.exports = MockAgent /***/ }), -/***/ 2361: +/***/ 6899: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { promisify } = __nccwpck_require__(7975) -const Client = __nccwpck_require__(1313) -const { buildMockDispatch } = __nccwpck_require__(3193) +const Client = __nccwpck_require__(979) +const { buildMockDispatch } = __nccwpck_require__(987) const { kDispatches, kMockAgent, @@ -10515,10 +10515,10 @@ const { kOrigin, kOriginalDispatch, kConnected -} = __nccwpck_require__(2305) -const { MockInterceptor } = __nccwpck_require__(5843) -const Symbols = __nccwpck_require__(8031) -const { InvalidArgumentError } = __nccwpck_require__(3959) +} = __nccwpck_require__(7351) +const { MockInterceptor } = __nccwpck_require__(3237) +const Symbols = __nccwpck_require__(3373) +const { InvalidArgumentError } = __nccwpck_require__(5933) /** * MockClient provides an API that extends the Client to influence the mockDispatches. @@ -10565,12 +10565,12 @@ module.exports = MockClient /***/ }), -/***/ 2673: +/***/ 2863: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { UndiciError } = __nccwpck_require__(3959) +const { UndiciError } = __nccwpck_require__(5933) const kMockNotMatchedError = Symbol.for('undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED') @@ -10600,12 +10600,12 @@ module.exports = { /***/ }), -/***/ 5843: +/***/ 3237: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { getResponseData, buildKey, addMockDispatch } = __nccwpck_require__(3193) +const { getResponseData, buildKey, addMockDispatch } = __nccwpck_require__(987) const { kDispatches, kDispatchKey, @@ -10613,9 +10613,9 @@ const { kDefaultTrailers, kContentLength, kMockDispatch -} = __nccwpck_require__(2305) -const { InvalidArgumentError } = __nccwpck_require__(3959) -const { buildURL } = __nccwpck_require__(9500) +} = __nccwpck_require__(7351) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const { buildURL } = __nccwpck_require__(7662) /** * Defines the scope API for an interceptor reply @@ -10814,14 +10814,14 @@ module.exports.MockScope = MockScope /***/ }), -/***/ 6480: +/***/ 7226: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { promisify } = __nccwpck_require__(7975) -const Pool = __nccwpck_require__(5928) -const { buildMockDispatch } = __nccwpck_require__(3193) +const Pool = __nccwpck_require__(9610) +const { buildMockDispatch } = __nccwpck_require__(987) const { kDispatches, kMockAgent, @@ -10830,10 +10830,10 @@ const { kOrigin, kOriginalDispatch, kConnected -} = __nccwpck_require__(2305) -const { MockInterceptor } = __nccwpck_require__(5843) -const Symbols = __nccwpck_require__(8031) -const { InvalidArgumentError } = __nccwpck_require__(3959) +} = __nccwpck_require__(7351) +const { MockInterceptor } = __nccwpck_require__(3237) +const Symbols = __nccwpck_require__(3373) +const { InvalidArgumentError } = __nccwpck_require__(5933) /** * MockPool provides an API that extends the Pool to influence the mockDispatches. @@ -10880,7 +10880,7 @@ module.exports = MockPool /***/ }), -/***/ 2305: +/***/ 7351: /***/ ((module) => { @@ -10910,20 +10910,20 @@ module.exports = { /***/ }), -/***/ 3193: +/***/ 987: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { MockNotMatchedError } = __nccwpck_require__(2673) +const { MockNotMatchedError } = __nccwpck_require__(2863) const { kDispatches, kMockAgent, kOriginalDispatch, kOrigin, kGetNetConnect -} = __nccwpck_require__(2305) -const { buildURL } = __nccwpck_require__(9500) +} = __nccwpck_require__(7351) +const { buildURL } = __nccwpck_require__(7662) const { STATUS_CODES } = __nccwpck_require__(7067) const { types: { @@ -11284,7 +11284,7 @@ module.exports = { /***/ }), -/***/ 5738: +/***/ 3576: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -11334,7 +11334,7 @@ module.exports = class PendingInterceptorsFormatter { /***/ }), -/***/ 5773: +/***/ 899: /***/ ((module) => { @@ -11370,7 +11370,7 @@ module.exports = class Pluralizer { /***/ }), -/***/ 4591: +/***/ 7797: /***/ ((module) => { @@ -11800,20 +11800,20 @@ module.exports = { /***/ }), -/***/ 9918: +/***/ 3416: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kConstruct } = __nccwpck_require__(8329) -const { urlEquals, getFieldValues } = __nccwpck_require__(3762) -const { kEnumerableProperty, isDisturbed } = __nccwpck_require__(9500) -const { webidl } = __nccwpck_require__(4625) -const { Response, cloneResponse, fromInnerResponse } = __nccwpck_require__(7287) -const { Request, fromInnerRequest } = __nccwpck_require__(9683) -const { kState } = __nccwpck_require__(3175) -const { fetching } = __nccwpck_require__(4202) -const { urlIsHttpHttpsScheme, createDeferredPromise, readAllBytes } = __nccwpck_require__(1204) +const { kConstruct } = __nccwpck_require__(7747) +const { urlEquals, getFieldValues } = __nccwpck_require__(9272) +const { kEnumerableProperty, isDisturbed } = __nccwpck_require__(7662) +const { webidl } = __nccwpck_require__(9735) +const { Response, cloneResponse, fromInnerResponse } = __nccwpck_require__(2873) +const { Request, fromInnerRequest } = __nccwpck_require__(557) +const { kState } = __nccwpck_require__(1) +const { fetching } = __nccwpck_require__(224) +const { urlIsHttpHttpsScheme, createDeferredPromise, readAllBytes } = __nccwpck_require__(7722) const assert = __nccwpck_require__(4589) /** @@ -12666,15 +12666,15 @@ module.exports = { /***/ }), -/***/ 6577: +/***/ 4215: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kConstruct } = __nccwpck_require__(8329) -const { Cache } = __nccwpck_require__(9918) -const { webidl } = __nccwpck_require__(4625) -const { kEnumerableProperty } = __nccwpck_require__(9500) +const { kConstruct } = __nccwpck_require__(7747) +const { Cache } = __nccwpck_require__(3416) +const { webidl } = __nccwpck_require__(9735) +const { kEnumerableProperty } = __nccwpck_require__(7662) class CacheStorage { /** @@ -12825,26 +12825,26 @@ module.exports = { /***/ }), -/***/ 8329: +/***/ 7747: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { module.exports = { - kConstruct: (__nccwpck_require__(8031).kConstruct) + kConstruct: (__nccwpck_require__(3373).kConstruct) } /***/ }), -/***/ 3762: +/***/ 9272: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { URLSerializer } = __nccwpck_require__(192) -const { isValidHeaderName } = __nccwpck_require__(1204) +const { URLSerializer } = __nccwpck_require__(8394) +const { isValidHeaderName } = __nccwpck_require__(7722) /** * @see https://url.spec.whatwg.org/#concept-url-equals @@ -12889,7 +12889,7 @@ module.exports = { /***/ }), -/***/ 5848: +/***/ 1574: /***/ ((module) => { @@ -12908,15 +12908,15 @@ module.exports = { /***/ }), -/***/ 7889: +/***/ 8659: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { parseSetCookie } = __nccwpck_require__(1814) -const { stringify } = __nccwpck_require__(185) -const { webidl } = __nccwpck_require__(4625) -const { Headers } = __nccwpck_require__(3408) +const { parseSetCookie } = __nccwpck_require__(3804) +const { stringify } = __nccwpck_require__(3643) +const { webidl } = __nccwpck_require__(9735) +const { Headers } = __nccwpck_require__(8146) /** * @typedef {Object} Cookie @@ -13099,14 +13099,14 @@ module.exports = { /***/ }), -/***/ 1814: +/***/ 3804: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { maxNameValuePairSize, maxAttributeValueSize } = __nccwpck_require__(5848) -const { isCTLExcludingHtab } = __nccwpck_require__(185) -const { collectASequenceOfCodePointsFast } = __nccwpck_require__(192) +const { maxNameValuePairSize, maxAttributeValueSize } = __nccwpck_require__(1574) +const { isCTLExcludingHtab } = __nccwpck_require__(3643) +const { collectASequenceOfCodePointsFast } = __nccwpck_require__(8394) const assert = __nccwpck_require__(4589) /** @@ -13423,7 +13423,7 @@ module.exports = { /***/ }), -/***/ 185: +/***/ 3643: /***/ ((module) => { @@ -13712,12 +13712,12 @@ module.exports = { /***/ }), -/***/ 8819: +/***/ 6521: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Transform } = __nccwpck_require__(7075) -const { isASCIINumber, isValidLastEventId } = __nccwpck_require__(3943) +const { isASCIINumber, isValidLastEventId } = __nccwpck_require__(6293) /** * @type {number[]} BOM @@ -14117,22 +14117,22 @@ module.exports = { /***/ }), -/***/ 7042: +/***/ 3276: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { pipeline } = __nccwpck_require__(7075) -const { fetching } = __nccwpck_require__(4202) -const { makeRequest } = __nccwpck_require__(9683) -const { webidl } = __nccwpck_require__(4625) -const { EventSourceStream } = __nccwpck_require__(8819) -const { parseMIMEType } = __nccwpck_require__(192) -const { createFastMessageEvent } = __nccwpck_require__(6760) -const { isNetworkError } = __nccwpck_require__(7287) -const { delay } = __nccwpck_require__(3943) -const { kEnumerableProperty } = __nccwpck_require__(9500) -const { environmentSettingsObject } = __nccwpck_require__(1204) +const { fetching } = __nccwpck_require__(224) +const { makeRequest } = __nccwpck_require__(557) +const { webidl } = __nccwpck_require__(9735) +const { EventSourceStream } = __nccwpck_require__(6521) +const { parseMIMEType } = __nccwpck_require__(8394) +const { createFastMessageEvent } = __nccwpck_require__(7690) +const { isNetworkError } = __nccwpck_require__(2873) +const { delay } = __nccwpck_require__(6293) +const { kEnumerableProperty } = __nccwpck_require__(7662) +const { environmentSettingsObject } = __nccwpck_require__(7722) let experimentalWarned = false @@ -14604,7 +14604,7 @@ module.exports = { /***/ }), -/***/ 3943: +/***/ 6293: /***/ ((module) => { @@ -14648,12 +14648,12 @@ module.exports = { /***/ }), -/***/ 1448: +/***/ 4086: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const util = __nccwpck_require__(9500) +const util = __nccwpck_require__(7662) const { ReadableStreamFrom, isBlobLike, @@ -14663,16 +14663,16 @@ const { fullyReadBody, extractMimeType, utf8DecodeBytes -} = __nccwpck_require__(1204) -const { FormData } = __nccwpck_require__(3818) -const { kState } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) +} = __nccwpck_require__(7722) +const { FormData } = __nccwpck_require__(8932) +const { kState } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) const { Blob } = __nccwpck_require__(4573) const assert = __nccwpck_require__(4589) const { isErrored, isDisturbed } = __nccwpck_require__(7075) const { isArrayBuffer } = __nccwpck_require__(3429) -const { serializeAMimeType } = __nccwpck_require__(192) -const { multipartFormDataParser } = __nccwpck_require__(8016) +const { serializeAMimeType } = __nccwpck_require__(8394) +const { multipartFormDataParser } = __nccwpck_require__(6442) let random try { @@ -15184,7 +15184,7 @@ module.exports = { /***/ }), -/***/ 4219: +/***/ 1797: /***/ ((module) => { @@ -15315,7 +15315,7 @@ module.exports = { /***/ }), -/***/ 192: +/***/ 8394: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -16066,12 +16066,12 @@ module.exports = { /***/ }), -/***/ 8905: +/***/ 379: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kConnected, kSize } = __nccwpck_require__(8031) +const { kConnected, kSize } = __nccwpck_require__(3373) class CompatWeakRef { constructor (value) { @@ -16119,14 +16119,14 @@ module.exports = function () { /***/ }), -/***/ 3486: +/***/ 2944: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Blob, File } = __nccwpck_require__(4573) -const { kState } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) +const { kState } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) // TODO(@KhafraDev): remove class FileLike { @@ -16252,16 +16252,16 @@ module.exports = { FileLike, isFileLike } /***/ }), -/***/ 8016: +/***/ 6442: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { isUSVString, bufferToLowerCasedHeaderName } = __nccwpck_require__(9500) -const { utf8DecodeBytes } = __nccwpck_require__(1204) -const { HTTP_TOKEN_CODEPOINTS, isomorphicDecode } = __nccwpck_require__(192) -const { isFileLike } = __nccwpck_require__(3486) -const { makeEntry } = __nccwpck_require__(3818) +const { isUSVString, bufferToLowerCasedHeaderName } = __nccwpck_require__(7662) +const { utf8DecodeBytes } = __nccwpck_require__(7722) +const { HTTP_TOKEN_CODEPOINTS, isomorphicDecode } = __nccwpck_require__(8394) +const { isFileLike } = __nccwpck_require__(2944) +const { makeEntry } = __nccwpck_require__(8932) const assert = __nccwpck_require__(4589) const { File: NodeFile } = __nccwpck_require__(4573) @@ -16733,16 +16733,16 @@ module.exports = { /***/ }), -/***/ 3818: +/***/ 8932: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { isBlobLike, iteratorMixin } = __nccwpck_require__(1204) -const { kState } = __nccwpck_require__(3175) -const { kEnumerableProperty } = __nccwpck_require__(9500) -const { FileLike, isFileLike } = __nccwpck_require__(3486) -const { webidl } = __nccwpck_require__(4625) +const { isBlobLike, iteratorMixin } = __nccwpck_require__(7722) +const { kState } = __nccwpck_require__(1) +const { kEnumerableProperty } = __nccwpck_require__(7662) +const { FileLike, isFileLike } = __nccwpck_require__(2944) +const { webidl } = __nccwpck_require__(9735) const { File: NativeFile } = __nccwpck_require__(4573) const nodeUtil = __nccwpck_require__(7975) @@ -16992,7 +16992,7 @@ module.exports = { FormData, makeEntry } /***/ }), -/***/ 5311: +/***/ 777: /***/ ((module) => { @@ -17039,21 +17039,21 @@ module.exports = { /***/ }), -/***/ 3408: +/***/ 8146: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // https://github.com/Ethan-Arrowood/undici-fetch -const { kConstruct } = __nccwpck_require__(8031) -const { kEnumerableProperty } = __nccwpck_require__(9500) +const { kConstruct } = __nccwpck_require__(3373) +const { kEnumerableProperty } = __nccwpck_require__(7662) const { iteratorMixin, isValidHeaderName, isValidHeaderValue -} = __nccwpck_require__(1204) -const { webidl } = __nccwpck_require__(4625) +} = __nccwpck_require__(7722) +const { webidl } = __nccwpck_require__(9735) const assert = __nccwpck_require__(4589) const util = __nccwpck_require__(7975) @@ -17733,7 +17733,7 @@ module.exports = { /***/ }), -/***/ 4202: +/***/ 224: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // https://github.com/Ethan-Arrowood/undici-fetch @@ -17746,9 +17746,9 @@ const { filterResponse, makeResponse, fromInnerResponse -} = __nccwpck_require__(7287) -const { HeadersList } = __nccwpck_require__(3408) -const { Request, cloneRequest } = __nccwpck_require__(9683) +} = __nccwpck_require__(2873) +const { HeadersList } = __nccwpck_require__(8146) +const { Request, cloneRequest } = __nccwpck_require__(557) const zlib = __nccwpck_require__(8522) const { bytesMatch, @@ -17784,23 +17784,23 @@ const { buildContentRange, createInflate, extractMimeType -} = __nccwpck_require__(1204) -const { kState, kDispatcher } = __nccwpck_require__(3175) +} = __nccwpck_require__(7722) +const { kState, kDispatcher } = __nccwpck_require__(1) const assert = __nccwpck_require__(4589) -const { safelyExtractBody, extractBody } = __nccwpck_require__(1448) +const { safelyExtractBody, extractBody } = __nccwpck_require__(4086) const { redirectStatusSet, nullBodyStatus, safeMethodsSet, requestBodyHeader, subresourceSet -} = __nccwpck_require__(4219) +} = __nccwpck_require__(1797) const EE = __nccwpck_require__(8474) const { Readable, pipeline, finished } = __nccwpck_require__(7075) -const { addAbortListener, isErrored, isReadable, bufferToLowerCasedHeaderName } = __nccwpck_require__(9500) -const { dataURLProcessor, serializeAMimeType, minimizeSupportedMimeType } = __nccwpck_require__(192) -const { getGlobalDispatcher } = __nccwpck_require__(1481) -const { webidl } = __nccwpck_require__(4625) +const { addAbortListener, isErrored, isReadable, bufferToLowerCasedHeaderName } = __nccwpck_require__(7662) +const { dataURLProcessor, serializeAMimeType, minimizeSupportedMimeType } = __nccwpck_require__(8394) +const { getGlobalDispatcher } = __nccwpck_require__(8707) +const { webidl } = __nccwpck_require__(9735) const { STATUS_CODES } = __nccwpck_require__(7067) const GET_OR_HEAD = ['GET', 'HEAD'] @@ -20012,23 +20012,23 @@ module.exports = { /***/ }), -/***/ 9683: +/***/ 557: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /* globals AbortController */ -const { extractBody, mixinBody, cloneBody, bodyUnusable } = __nccwpck_require__(1448) -const { Headers, fill: fillHeaders, HeadersList, setHeadersGuard, getHeadersGuard, setHeadersList, getHeadersList } = __nccwpck_require__(3408) -const { FinalizationRegistry } = __nccwpck_require__(8905)() -const util = __nccwpck_require__(9500) +const { extractBody, mixinBody, cloneBody, bodyUnusable } = __nccwpck_require__(4086) +const { Headers, fill: fillHeaders, HeadersList, setHeadersGuard, getHeadersGuard, setHeadersList, getHeadersList } = __nccwpck_require__(8146) +const { FinalizationRegistry } = __nccwpck_require__(379)() +const util = __nccwpck_require__(7662) const nodeUtil = __nccwpck_require__(7975) const { isValidHTTPToken, sameOrigin, environmentSettingsObject -} = __nccwpck_require__(1204) +} = __nccwpck_require__(7722) const { forbiddenMethodsSet, corsSafeListedMethodsSet, @@ -20038,12 +20038,12 @@ const { requestCredentials, requestCache, requestDuplex -} = __nccwpck_require__(4219) +} = __nccwpck_require__(1797) const { kEnumerableProperty, normalizedMethodRecordsBase, normalizedMethodRecords } = util -const { kHeaders, kSignal, kState, kDispatcher } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) -const { URLSerializer } = __nccwpck_require__(192) -const { kConstruct } = __nccwpck_require__(8031) +const { kHeaders, kSignal, kState, kDispatcher } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) +const { URLSerializer } = __nccwpck_require__(8394) +const { kConstruct } = __nccwpck_require__(3373) const assert = __nccwpck_require__(4589) const { getMaxListeners, setMaxListeners, getEventListeners, defaultMaxListeners } = __nccwpck_require__(8474) @@ -21056,14 +21056,14 @@ module.exports = { Request, makeRequest, fromInnerRequest, cloneRequest } /***/ }), -/***/ 7287: +/***/ 2873: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { Headers, HeadersList, fill, getHeadersGuard, setHeadersGuard, setHeadersList } = __nccwpck_require__(3408) -const { extractBody, cloneBody, mixinBody, hasFinalizationRegistry, streamRegistry, bodyUnusable } = __nccwpck_require__(1448) -const util = __nccwpck_require__(9500) +const { Headers, HeadersList, fill, getHeadersGuard, setHeadersGuard, setHeadersList } = __nccwpck_require__(8146) +const { extractBody, cloneBody, mixinBody, hasFinalizationRegistry, streamRegistry, bodyUnusable } = __nccwpck_require__(4086) +const util = __nccwpck_require__(7662) const nodeUtil = __nccwpck_require__(7975) const { kEnumerableProperty } = util const { @@ -21075,16 +21075,16 @@ const { isErrorLike, isomorphicEncode, environmentSettingsObject: relevantRealm -} = __nccwpck_require__(1204) +} = __nccwpck_require__(7722) const { redirectStatusSet, nullBodyStatus -} = __nccwpck_require__(4219) -const { kState, kHeaders } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) -const { FormData } = __nccwpck_require__(3818) -const { URLSerializer } = __nccwpck_require__(192) -const { kConstruct } = __nccwpck_require__(8031) +} = __nccwpck_require__(1797) +const { kState, kHeaders } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) +const { FormData } = __nccwpck_require__(8932) +const { URLSerializer } = __nccwpck_require__(8394) +const { kConstruct } = __nccwpck_require__(3373) const assert = __nccwpck_require__(4589) const { types } = __nccwpck_require__(7975) @@ -21673,7 +21673,7 @@ module.exports = { /***/ }), -/***/ 3175: +/***/ 1: /***/ ((module) => { @@ -21689,21 +21689,21 @@ module.exports = { /***/ }), -/***/ 1204: +/***/ 7722: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Transform } = __nccwpck_require__(7075) const zlib = __nccwpck_require__(8522) -const { redirectStatusSet, referrerPolicySet: referrerPolicyTokens, badPortsSet } = __nccwpck_require__(4219) -const { getGlobalOrigin } = __nccwpck_require__(5311) -const { collectASequenceOfCodePoints, collectAnHTTPQuotedString, removeChars, parseMIMEType } = __nccwpck_require__(192) +const { redirectStatusSet, referrerPolicySet: referrerPolicyTokens, badPortsSet } = __nccwpck_require__(1797) +const { getGlobalOrigin } = __nccwpck_require__(777) +const { collectASequenceOfCodePoints, collectAnHTTPQuotedString, removeChars, parseMIMEType } = __nccwpck_require__(8394) const { performance } = __nccwpck_require__(643) -const { isBlobLike, ReadableStreamFrom, isValidHTTPToken, normalizedMethodRecordsBase } = __nccwpck_require__(9500) +const { isBlobLike, ReadableStreamFrom, isValidHTTPToken, normalizedMethodRecordsBase } = __nccwpck_require__(7662) const assert = __nccwpck_require__(4589) const { isUint8Array } = __nccwpck_require__(3429) -const { webidl } = __nccwpck_require__(4625) +const { webidl } = __nccwpck_require__(9735) let supportedHashes = [] @@ -23328,14 +23328,14 @@ module.exports = { /***/ }), -/***/ 4625: +/***/ 9735: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { types, inspect } = __nccwpck_require__(7975) const { markAsUncloneable } = __nccwpck_require__(5919) -const { toUSVString } = __nccwpck_require__(9500) +const { toUSVString } = __nccwpck_require__(7662) /** @type {import('../../../types/webidl').Webidl} */ const webidl = {} @@ -24030,7 +24030,7 @@ module.exports = { /***/ }), -/***/ 1691: +/***/ 2705: /***/ ((module) => { @@ -24327,7 +24327,7 @@ module.exports = { /***/ }), -/***/ 6575: +/***/ 7669: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -24336,16 +24336,16 @@ const { staticPropertyDescriptors, readOperation, fireAProgressEvent -} = __nccwpck_require__(6014) +} = __nccwpck_require__(8912) const { kState, kError, kResult, kEvents, kAborted -} = __nccwpck_require__(8445) -const { webidl } = __nccwpck_require__(4625) -const { kEnumerableProperty } = __nccwpck_require__(9500) +} = __nccwpck_require__(6107) +const { webidl } = __nccwpck_require__(9735) +const { kEnumerableProperty } = __nccwpck_require__(7662) class FileReader extends EventTarget { constructor () { @@ -24678,12 +24678,12 @@ module.exports = { /***/ }), -/***/ 9393: +/***/ 1367: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { webidl } = __nccwpck_require__(4625) +const { webidl } = __nccwpck_require__(9735) const kState = Symbol('ProgressEvent state') @@ -24763,7 +24763,7 @@ module.exports = { /***/ }), -/***/ 8445: +/***/ 6107: /***/ ((module) => { @@ -24780,7 +24780,7 @@ module.exports = { /***/ }), -/***/ 6014: +/***/ 8912: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -24791,12 +24791,12 @@ const { kResult, kAborted, kLastProgressEventFired -} = __nccwpck_require__(8445) -const { ProgressEvent } = __nccwpck_require__(9393) -const { getEncoding } = __nccwpck_require__(1691) -const { serializeAMimeType, parseMIMEType } = __nccwpck_require__(192) +} = __nccwpck_require__(6107) +const { ProgressEvent } = __nccwpck_require__(1367) +const { getEncoding } = __nccwpck_require__(2705) +const { serializeAMimeType, parseMIMEType } = __nccwpck_require__(8394) const { types } = __nccwpck_require__(7975) -const { StringDecoder } = __nccwpck_require__(5574) +const { StringDecoder } = __nccwpck_require__(3193) const { btoa } = __nccwpck_require__(4573) /** @type {PropertyDescriptor} */ @@ -25178,27 +25178,27 @@ module.exports = { /***/ }), -/***/ 773: +/***/ 9431: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { uid, states, sentCloseFrameState, emptyBuffer, opcodes } = __nccwpck_require__(7119) +const { uid, states, sentCloseFrameState, emptyBuffer, opcodes } = __nccwpck_require__(5214) const { kReadyState, kSentClose, kByteParser, kReceivedClose, kResponse -} = __nccwpck_require__(4911) -const { fireEvent, failWebsocketConnection, isClosing, isClosed, isEstablished, parseExtensions } = __nccwpck_require__(965) -const { channels } = __nccwpck_require__(5458) -const { CloseEvent } = __nccwpck_require__(6760) -const { makeRequest } = __nccwpck_require__(9683) -const { fetching } = __nccwpck_require__(4202) -const { Headers, getHeadersList } = __nccwpck_require__(3408) -const { getDecodeSplit } = __nccwpck_require__(1204) -const { WebsocketFrameSend } = __nccwpck_require__(9676) +} = __nccwpck_require__(1150) +const { fireEvent, failWebsocketConnection, isClosing, isClosed, isEstablished, parseExtensions } = __nccwpck_require__(3155) +const { channels } = __nccwpck_require__(8560) +const { CloseEvent } = __nccwpck_require__(7690) +const { makeRequest } = __nccwpck_require__(557) +const { fetching } = __nccwpck_require__(224) +const { Headers, getHeadersList } = __nccwpck_require__(8146) +const { getDecodeSplit } = __nccwpck_require__(7722) +const { WebsocketFrameSend } = __nccwpck_require__(2438) /** @type {import('crypto')} */ let crypto @@ -25556,7 +25556,7 @@ module.exports = { /***/ }), -/***/ 7119: +/***/ 5214: /***/ ((module) => { @@ -25629,14 +25629,14 @@ module.exports = { /***/ }), -/***/ 6760: +/***/ 7690: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { webidl } = __nccwpck_require__(4625) -const { kEnumerableProperty } = __nccwpck_require__(9500) -const { kConstruct } = __nccwpck_require__(8031) +const { webidl } = __nccwpck_require__(9735) +const { kEnumerableProperty } = __nccwpck_require__(7662) +const { kConstruct } = __nccwpck_require__(3373) const { MessagePort } = __nccwpck_require__(5919) /** @@ -25965,12 +25965,12 @@ module.exports = { /***/ }), -/***/ 9676: +/***/ 2438: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { maxUnsigned16Bit } = __nccwpck_require__(7119) +const { maxUnsigned16Bit } = __nccwpck_require__(5214) const BUFFER_SIZE = 16386 @@ -26068,14 +26068,14 @@ module.exports = { /***/ }), -/***/ 4841: +/***/ 4739: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { createInflateRaw, Z_DEFAULT_WINDOWBITS } = __nccwpck_require__(8522) -const { isValidClientWindowBits } = __nccwpck_require__(965) -const { MessageSizeExceededError } = __nccwpck_require__(3959) +const { isValidClientWindowBits } = __nccwpck_require__(3155) +const { MessageSizeExceededError } = __nccwpck_require__(5933) const tail = Buffer.from([0x00, 0x00, 0xff, 0xff]) const kBuffer = Symbol('kBuffer') @@ -26193,16 +26193,16 @@ module.exports = { PerMessageDeflate } /***/ }), -/***/ 1872: +/***/ 2502: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Writable } = __nccwpck_require__(7075) const assert = __nccwpck_require__(4589) -const { parserStates, opcodes, states, emptyBuffer, sentCloseFrameState } = __nccwpck_require__(7119) -const { kReadyState, kSentClose, kResponse, kReceivedClose } = __nccwpck_require__(4911) -const { channels } = __nccwpck_require__(5458) +const { parserStates, opcodes, states, emptyBuffer, sentCloseFrameState } = __nccwpck_require__(5214) +const { kReadyState, kSentClose, kResponse, kReceivedClose } = __nccwpck_require__(1150) +const { channels } = __nccwpck_require__(8560) const { isValidStatusCode, isValidOpcode, @@ -26212,10 +26212,10 @@ const { isControlFrame, isTextBinaryFrame, isContinuationFrame -} = __nccwpck_require__(965) -const { WebsocketFrameSend } = __nccwpck_require__(9676) -const { closeWebSocketConnection } = __nccwpck_require__(773) -const { PerMessageDeflate } = __nccwpck_require__(4841) +} = __nccwpck_require__(3155) +const { WebsocketFrameSend } = __nccwpck_require__(2438) +const { closeWebSocketConnection } = __nccwpck_require__(9431) +const { PerMessageDeflate } = __nccwpck_require__(4739) // This code was influenced by ws released under the MIT license. // Copyright (c) 2011 Einar Otto Stangvik @@ -26627,14 +26627,14 @@ module.exports = { /***/ }), -/***/ 504: +/***/ 7562: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { WebsocketFrameSend } = __nccwpck_require__(9676) -const { opcodes, sendHints } = __nccwpck_require__(7119) -const FixedQueue = __nccwpck_require__(5464) +const { WebsocketFrameSend } = __nccwpck_require__(2438) +const { opcodes, sendHints } = __nccwpck_require__(5214) +const FixedQueue = __nccwpck_require__(1034) /** @type {typeof Uint8Array} */ const FastBuffer = Buffer[Symbol.species] @@ -26738,7 +26738,7 @@ module.exports = { SendQueue } /***/ }), -/***/ 4911: +/***/ 1150: /***/ ((module) => { @@ -26757,16 +26757,16 @@ module.exports = { /***/ }), -/***/ 965: +/***/ 3155: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kReadyState, kController, kResponse, kBinaryType, kWebSocketURL } = __nccwpck_require__(4911) -const { states, opcodes } = __nccwpck_require__(7119) -const { ErrorEvent, createFastMessageEvent } = __nccwpck_require__(6760) +const { kReadyState, kController, kResponse, kBinaryType, kWebSocketURL } = __nccwpck_require__(1150) +const { states, opcodes } = __nccwpck_require__(5214) +const { ErrorEvent, createFastMessageEvent } = __nccwpck_require__(7690) const { isUtf8 } = __nccwpck_require__(4573) -const { collectASequenceOfCodePointsFast, removeHTTPWhitespace } = __nccwpck_require__(192) +const { collectASequenceOfCodePointsFast, removeHTTPWhitespace } = __nccwpck_require__(8394) /* globals Blob */ @@ -27086,15 +27086,15 @@ module.exports = { /***/ }), -/***/ 2522: +/***/ 7836: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { webidl } = __nccwpck_require__(4625) -const { URLSerializer } = __nccwpck_require__(192) -const { environmentSettingsObject } = __nccwpck_require__(1204) -const { staticPropertyDescriptors, states, sentCloseFrameState, sendHints } = __nccwpck_require__(7119) +const { webidl } = __nccwpck_require__(9735) +const { URLSerializer } = __nccwpck_require__(8394) +const { environmentSettingsObject } = __nccwpck_require__(7722) +const { staticPropertyDescriptors, states, sentCloseFrameState, sendHints } = __nccwpck_require__(5214) const { kWebSocketURL, kReadyState, @@ -27103,21 +27103,21 @@ const { kResponse, kSentClose, kByteParser -} = __nccwpck_require__(4911) +} = __nccwpck_require__(1150) const { isConnecting, isEstablished, isClosing, isValidSubprotocol, fireEvent -} = __nccwpck_require__(965) -const { establishWebSocketConnection, closeWebSocketConnection } = __nccwpck_require__(773) -const { ByteParser } = __nccwpck_require__(1872) -const { kEnumerableProperty, isBlobLike } = __nccwpck_require__(9500) -const { getGlobalDispatcher } = __nccwpck_require__(1481) +} = __nccwpck_require__(3155) +const { establishWebSocketConnection, closeWebSocketConnection } = __nccwpck_require__(9431) +const { ByteParser } = __nccwpck_require__(2502) +const { kEnumerableProperty, isBlobLike } = __nccwpck_require__(7662) +const { getGlobalDispatcher } = __nccwpck_require__(8707) const { types } = __nccwpck_require__(7975) -const { ErrorEvent, CloseEvent } = __nccwpck_require__(6760) -const { SendQueue } = __nccwpck_require__(504) +const { ErrorEvent, CloseEvent } = __nccwpck_require__(7690) +const { SendQueue } = __nccwpck_require__(7562) // https://websockets.spec.whatwg.org/#interface-definition class WebSocket extends EventTarget { @@ -27856,7 +27856,7 @@ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:zlib"); /***/ }), -/***/ 5574: +/***/ 3193: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("string_decoder"); @@ -27921,7 +27921,7 @@ var __webpack_exports__ = {}; const external_node_child_process_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:child_process"); ;// CONCATENATED MODULE: external "os" const external_os_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("os"); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/utils.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/utils.js // We use any as a valid input type /* eslint-disable @typescript-eslint/no-explicit-any */ /** @@ -27957,7 +27957,7 @@ function utils_toCommandProperties(annotationProperties) { }; } //# sourceMappingURL=utils.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/command.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/command.js /** @@ -28053,7 +28053,7 @@ function escapeProperty(s) { const external_crypto_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("crypto"); ;// CONCATENATED MODULE: external "fs" const external_fs_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("fs"); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/file-command.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/file-command.js // For internal use, subject to change. // We use any as a valid input type /* eslint-disable @typescript-eslint/no-explicit-any */ @@ -28094,7 +28094,7 @@ const external_path_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.me var external_http_ = __nccwpck_require__(8611); // EXTERNAL MODULE: external "https" var external_https_ = __nccwpck_require__(5692); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/node_modules/@actions/http-client/lib/proxy.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+http-client@4.0.0/node_modules/@actions/http-client/lib/proxy.js function getProxyUrl(reqUrl) { const usingSsl = reqUrl.protocol === 'https:'; if (checkBypass(reqUrl)) { @@ -28185,11 +28185,11 @@ class DecodedURL extends URL { } } //# sourceMappingURL=proxy.js.map -// EXTERNAL MODULE: ../../node_modules/tunnel/index.js -var node_modules_tunnel = __nccwpck_require__(5070); -// EXTERNAL MODULE: ../../node_modules/undici/index.js -var undici = __nccwpck_require__(1684); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/node_modules/@actions/http-client/lib/index.js +// EXTERNAL MODULE: ../../node_modules/.pnpm/tunnel@0.0.6/node_modules/tunnel/index.js +var node_modules_tunnel = __nccwpck_require__(7285); +// EXTERNAL MODULE: ../../node_modules/.pnpm/undici@6.24.1/node_modules/undici/index.js +var undici = __nccwpck_require__(4906); +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+http-client@4.0.0/node_modules/@actions/http-client/lib/index.js /* eslint-disable @typescript-eslint/no-explicit-any */ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } @@ -28886,7 +28886,7 @@ class lib_HttpClient { } const lowercaseKeys = (obj) => Object.keys(obj).reduce((c, k) => ((c[k.toLowerCase()] = obj[k]), c), {}); //# sourceMappingURL=index.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/node_modules/@actions/http-client/lib/auth.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+http-client@4.0.0/node_modules/@actions/http-client/lib/auth.js var auth_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -28962,7 +28962,7 @@ class PersonalAccessTokenCredentialHandler { } } //# sourceMappingURL=auth.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/oidc-utils.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/oidc-utils.js var oidc_utils_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -29036,7 +29036,7 @@ class oidc_utils_OidcClient { } } //# sourceMappingURL=oidc-utils.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/summary.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/summary.js var summary_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -29317,7 +29317,7 @@ const _summary = new Summary(); const markdownSummary = (/* unused pure expression or super */ null && (_summary)); const summary = (/* unused pure expression or super */ null && (_summary)); //# sourceMappingURL=summary.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/path-utils.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/path-utils.js /** * toPosixPath converts the given path to the posix form. On Windows, \\ will be @@ -29352,14 +29352,14 @@ function toPlatformPath(pth) { } //# sourceMappingURL=path-utils.js.map // EXTERNAL MODULE: external "string_decoder" -var external_string_decoder_ = __nccwpck_require__(5574); +var external_string_decoder_ = __nccwpck_require__(3193); // EXTERNAL MODULE: external "events" var external_events_ = __nccwpck_require__(4434); ;// CONCATENATED MODULE: external "child_process" const external_child_process_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("child_process"); // EXTERNAL MODULE: external "assert" var external_assert_ = __nccwpck_require__(2613); -;// CONCATENATED MODULE: ../../node_modules/@actions/io/lib/io-util.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+io@3.0.2/node_modules/@actions/io/lib/io-util.js var io_util_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -29539,7 +29539,7 @@ function getCmdPath() { return (_a = process.env['COMSPEC']) !== null && _a !== void 0 ? _a : `cmd.exe`; } //# sourceMappingURL=io-util.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/io/lib/io.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+io@3.0.2/node_modules/@actions/io/lib/io.js var io_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -29813,7 +29813,7 @@ function io_copyFile(srcFile, destFile, force) { //# sourceMappingURL=io.js.map ;// CONCATENATED MODULE: external "timers" const external_timers_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("timers"); -;// CONCATENATED MODULE: ../../node_modules/@actions/exec/lib/toolrunner.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+exec@3.0.0/node_modules/@actions/exec/lib/toolrunner.js var toolrunner_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -30401,7 +30401,7 @@ class ExecState extends external_events_.EventEmitter { } } //# sourceMappingURL=toolrunner.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/exec/lib/exec.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+exec@3.0.0/node_modules/@actions/exec/lib/exec.js var exec_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -30481,7 +30481,7 @@ function getExecOutput(commandLine, args, options) { }); } //# sourceMappingURL=exec.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/platform.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/platform.js var platform_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -30546,7 +30546,7 @@ function getDetails() { }); } //# sourceMappingURL=platform.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/core.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/core.js var core_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -30864,7 +30864,7 @@ function getIDToken(aud) { */ //# sourceMappingURL=core.js.map -;// CONCATENATED MODULE: ../../node_modules/@blueoak/list/index.json +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@blueoak+list@15.0.0/node_modules/@blueoak/list/index.json const list_namespaceObject = /*#__PURE__*/JSON.parse('[{"name":"Model","notes":"The model license demonstrates all the characteristics the council looks for in a permissive open software license.","licenses":[{"name":"Blue Oak Model License 1.0.0","id":"BlueOak-1.0.0","url":"https://blueoakcouncil.org/license/1.0.0"}]},{"name":"Gold","notes":"These licenses address patents explicitly, use robust language, and require only simple notice of license terms and copyright notices.","licenses":[{"name":"BSD-2-Clause Plus Patent License","id":"BSD-2-Clause-Patent","url":"https://spdx.org/licenses/BSD-2-Clause-Patent.html"}]},{"name":"Silver","notes":"These licenses use robust language but either fail to address patents explicitly or require more than simple notice of license terms and copyright notices.","licenses":[{"name":"Amazon Digital Services License","id":"ADSL","url":"https://spdx.org/licenses/ADSL.html"},{"name":"Apache License 2.0","id":"Apache-2.0","url":"https://spdx.org/licenses/Apache-2.0.html"},{"name":"Adobe Postscript AFM License","id":"APAFML","url":"https://spdx.org/licenses/APAFML.html"},{"name":"BSD 1-Clause License","id":"BSD-1-Clause","url":"https://spdx.org/licenses/BSD-1-Clause.html"},{"name":"BSD 2-Clause \\"Simplified\\" License","id":"BSD-2-Clause","url":"https://spdx.org/licenses/BSD-2-Clause.html"},{"name":"BSD 2-Clause FreeBSD License","id":"BSD-2-Clause-FreeBSD","url":"https://spdx.org/licenses/BSD-2-Clause-FreeBSD.html"},{"name":"BSD 2-Clause NetBSD License","id":"BSD-2-Clause-NetBSD","url":"https://spdx.org/licenses/BSD-2-Clause-NetBSD.html"},{"name":"BSD 2-Clause with Views Sentence","id":"BSD-2-Clause-Views","url":"https://spdx.org/licenses/BSD-2-Clause-Views.html"},{"name":"Boost Software License 1.0","id":"BSL-1.0","url":"https://spdx.org/licenses/BSL-1.0.html"},{"name":"DSDP License","id":"DSDP","url":"https://spdx.org/licenses/DSDP.html"},{"name":"Educational Community License v1.0","id":"ECL-1.0","url":"https://spdx.org/licenses/ECL-1.0.html"},{"name":"Educational Community License v2.0","id":"ECL-2.0","url":"https://spdx.org/licenses/ECL-2.0.html"},{"name":"hdparm License","id":"hdparm","url":"https://spdx.org/licenses/hdparm"},{"name":"ImageMagick License","id":"ImageMagick","url":"https://spdx.org/licenses/ImageMagick.html"},{"name":"Intel ACPI Software License Agreement","id":"Intel-ACPI","url":"https://spdx.org/licenses/Intel-ACPI"},{"name":"ISC License","id":"ISC","url":"https://spdx.org/licenses/ISC.html"},{"name":"Linux Kernel Variant of OpenIB.org license","id":"Linux-OpenIB","url":"https://spdx.org/licenses/Linux-OpenIB.html"},{"name":"MIT License","id":"MIT","url":"https://spdx.org/licenses/MIT.html"},{"name":"MIT License Modern Variant","id":"MIT-Modern-Variant","url":"https://spdx.org/licenses/MIT-Modern-Variant.html"},{"name":"MIT testregex Variant","id":"MIT-testregex","url":"https://spdx.org/licenses/MIT-testregex"},{"name":"MIT Tom Wu Variant","id":"MIT-Wu","url":"https://spdx.org/licenses/MIT-Wu"},{"name":"Microsoft Public License","id":"MS-PL","url":"https://spdx.org/licenses/MS-PL.html"},{"id":"MulanPSL-1.0","url":"https://spdx.org/licenses/MulanPSL-1.0.html","name":"Mulan Permissive Software License, Version 1"},{"name":"Mup License","id":"Mup","url":"https://spdx.org/licenses/Mup.html"},{"name":"PostgreSQL License","id":"PostgreSQL","url":"https://spdx.org/licenses/PostgreSQL.html"},{"name":"Solderpad Hardware License v0.5","id":"SHL-0.5","url":"https://spdx.org/licenses/SHL-0.5"},{"name":"Spencer License 99","id":"Spencer-99","url":"https://spdx.org/licenses/Spencer-99.html"},{"name":"Universal Permissive License v1.0","id":"UPL-1.0","url":"https://spdx.org/licenses/UPL-1.0.html"},{"name":"Xerox License","id":"Xerox","url":"https://spdx.org/licenses/Xerox.html"},{"name":"Xfig License","id":"Xfig","url":"https://spdx.org/licenses/Xfig"}]},{"name":"Bronze","notes":"These licenses lack important but nonessential elements of permissive open software licenses or impose additional requirements or restrictions, such as BSD-style prohibitions against endorsement and promotion.","licenses":[{"id":"0BSD","url":"https://spdx.org/licenses/0BSD.html","name":"BSD Zero Clause License"},{"id":"AFL-1.1","url":"https://spdx.org/licenses/AFL-1.1.html","name":"Academic Free License v1.1"},{"id":"AFL-1.2","url":"https://spdx.org/licenses/AFL-1.2.html","name":"Academic Free License v1.2"},{"id":"AFL-2.0","url":"https://spdx.org/licenses/AFL-2.0.html","name":"Academic Free License v2.0"},{"id":"AFL-2.1","url":"https://spdx.org/licenses/AFL-2.1.html","name":"Academic Free License v2.1"},{"id":"AFL-3.0","url":"https://spdx.org/licenses/AFL-3.0.html","name":"Academic Free License v3.0"},{"id":"AMDPLPA","url":"https://spdx.org/licenses/AMDPLPA.html","name":"AMD\'s plpa_map.c License"},{"id":"AML","url":"https://spdx.org/licenses/AML.html","name":"Apple MIT License"},{"id":"AMPAS","url":"https://spdx.org/licenses/AMPAS.html","name":"Academy of Motion Picture Arts and Sciences BSD"},{"id":"ANTLR-PD","url":"https://spdx.org/licenses/ANTLR-PD.html","name":"ANTLR Software Rights Notice"},{"id":"ANTLR-PD-fallback","url":"https://spdx.org/licenses/ANTLR-PD-fallback.html","name":"ANTLR Software Rights Notice with license fallback"},{"id":"Apache-1.0","url":"https://spdx.org/licenses/Apache-1.0.html","name":"Apache License 1.0"},{"id":"Apache-1.1","url":"https://spdx.org/licenses/Apache-1.1.html","name":"Apache License 1.1"},{"id":"Artistic-2.0","url":"https://spdx.org/licenses/Artistic-2.0.html","name":"Artistic License 2.0"},{"id":"Bahyph","url":"https://spdx.org/licenses/Bahyph","name":"Bahyph License"},{"id":"Barr","url":"https://spdx.org/licenses/Barr.html","name":"Barr License"},{"name":"bcrypt Solar Designer License","id":"bcrypt-Solar-Designer","url":"https://spdx.org/licenses/bcrypt-Solar-Designer"},{"id":"BSD-3-Clause","url":"https://spdx.org/licenses/BSD-3-Clause.html","name":"BSD 3-Clause \\"New\\" or \\"Revised\\" License"},{"id":"BSD-3-Clause-Attribution","url":"https://spdx.org/licenses/BSD-3-Clause-Attribution.html","name":"BSD with attribution"},{"id":"BSD-3-Clause-Clear","url":"https://spdx.org/licenses/BSD-3-Clause-Clear.html","name":"BSD 3-Clause Clear License"},{"name":"Hewlett-Packard BSD variant license","id":"BSD-3-Clause-HP","url":"https://spdx.org/licenses/BSD-3-Clause-HP"},{"id":"BSD-3-Clause-LBNL","url":"https://spdx.org/licenses/BSD-3-Clause-LBNL.html","name":"Lawrence Berkeley National Labs BSD variant license"},{"id":"BSD-3-Clause-Modification","url":"https://spdx.org/licenses/BSD-3-Clause-Modification.html","name":"BSD 3-Clause Modification"},{"id":"BSD-3-Clause-No-Nuclear-License-2014","url":"https://spdx.org/licenses/BSD-3-Clause-No-Nuclear-License-2014.html","name":"BSD 3-Clause No Nuclear License 2014"},{"id":"BSD-3-Clause-No-Nuclear-Warranty","url":"https://spdx.org/licenses/BSD-3-Clause-No-Nuclear-Warranty.html","name":"BSD 3-Clause No Nuclear Warranty"},{"id":"BSD-3-Clause-Open-MPI","url":"https://spdx.org/licenses/BSD-3-Clause-Open-MPI","name":"BSD 3-Clause Open MPI Variant"},{"name":"BSD 3-Clause Sun Microsystems","id":"BSD-3-Clause-Sun","url":"https://spdx.org/licenses/BSD-3-Clause-Sun"},{"id":"BSD-4-Clause","url":"https://spdx.org/licenses/BSD-4-Clause.html","name":"BSD 4-Clause \\"Original\\" or \\"Old\\" License"},{"id":"BSD-4-Clause-Shortened","url":"https://spdx.org/licenses/BSD-4-Clause-Shortened.html","name":"BSD 4-Clause Shortened"},{"id":"BSD-4-Clause-UC","url":"https://spdx.org/licenses/BSD-4-Clause-UC.html","name":"BSD-4-Clause (University of California-Specific)"},{"id":"BSD-Source-Code","url":"https://spdx.org/licenses/BSD-Source-Code.html","name":"BSD Source Code Attribution"},{"id":"bzip2-1.0.5","url":"https://spdx.org/licenses/bzip2-1.0.5.html","name":"bzip2 and libbzip2 License v1.0.5"},{"id":"bzip2-1.0.6","url":"https://spdx.org/licenses/bzip2-1.0.6.html","name":"bzip2 and libbzip2 License v1.0.6"},{"id":"CC0-1.0","url":"https://spdx.org/licenses/CC0-1.0.html","name":"Creative Commons Zero v1.0 Universal"},{"name":"CFITSIO License","id":"CFITSIO","url":"https://spdx.org/licenses/CFITSIO"},{"name":"Clips License","id":"Clips","url":"https://spdx.org/licenses/Clips"},{"id":"CNRI-Jython","url":"https://spdx.org/licenses/CNRI-Jython.html","name":"CNRI Jython License"},{"id":"CNRI-Python","url":"https://spdx.org/licenses/CNRI-Python.html","name":"CNRI Python License"},{"id":"CNRI-Python-GPL-Compatible","url":"https://spdx.org/licenses/CNRI-Python-GPL-Compatible.html","name":"CNRI Python Open Source GPL Compatible License Agreement"},{"id":"Cube","url":"https://spdx.org/licenses/Cube.html","name":"Cube License"},{"id":"curl","url":"https://spdx.org/licenses/curl.html","name":"curl License"},{"id":"eGenix","url":"https://spdx.org/licenses/eGenix.html","name":"eGenix.com Public License 1.1.0"},{"id":"Entessa","url":"https://spdx.org/licenses/Entessa.html","name":"Entessa Public License v1.0"},{"id":"FTL","url":"https://spdx.org/licenses/FTL.html","name":"Freetype Project License"},{"name":"fwlw License","id":"fwlw","url":"https://spdx.org/licenses/fwlw"},{"name":"Historical Permission Notice and Disclaimer - Fenneberg-Livingston variant","id":"HPND-Fenneberg-Livingston","url":"https://spdx.org/licenses/HPND-Fenneberg-Livingston"},{"name":"Historical Permission Notice and Disclaimer - sell regexpr variant","id":"HPND-sell-regexpr","url":"https://spdx.org/licenses/HPND-sell-regexpr"},{"id":"HTMLTIDY","url":"https://spdx.org/licenses/HTMLTIDY.html","name":"HTML Tidy License"},{"id":"IBM-pibs","url":"https://spdx.org/licenses/IBM-pibs.html","name":"IBM PowerPC Initialization and Boot Software"},{"id":"ICU","url":"https://spdx.org/licenses/ICU.html","name":"ICU License"},{"id":"Info-ZIP","url":"https://spdx.org/licenses/Info-ZIP.html","name":"Info-ZIP License"},{"id":"Intel","url":"https://spdx.org/licenses/Intel.html","name":"Intel Open Source License"},{"id":"JasPer-2.0","url":"https://spdx.org/licenses/JasPer-2.0.html","name":"JasPer License"},{"id":"Libpng","url":"https://spdx.org/licenses/Libpng.html","name":"libpng License"},{"id":"libpng-2.0","url":"https://spdx.org/licenses/libpng-2.0.html","name":"PNG Reference Library version 2"},{"id":"libtiff","url":"https://spdx.org/licenses/libtiff.html","name":"libtiff License"},{"id":"LPPL-1.3c","url":"https://spdx.org/licenses/LPPL-1.3c.html","name":"LaTeX Project Public License v1.3c"},{"name":"LZMA SDK License (versions 9.22 and beyond)","id":"LZMA-SDK-9.22","url":"https://spdx.org/licenses/LZMA-SDK-9.22"},{"id":"MIT-0","url":"https://spdx.org/licenses/MIT-0.html","name":"MIT No Attribution"},{"id":"MIT-advertising","url":"https://spdx.org/licenses/MIT-advertising.html","name":"Enlightenment License (e16)"},{"id":"MIT-CMU","url":"https://spdx.org/licenses/MIT-CMU.html","name":"CMU License"},{"id":"MIT-enna","url":"https://spdx.org/licenses/MIT-enna.html","name":"enna License"},{"id":"MIT-feh","url":"https://spdx.org/licenses/MIT-feh.html","name":"feh License"},{"id":"MIT-open-group","url":"https://spdx.org/licenses/MIT-open-group.html","name":"MIT Open Group Variant"},{"id":"MITNFA","url":"https://spdx.org/licenses/MITNFA.html","name":"MIT +no-false-attribs license"},{"id":"MTLL","url":"https://spdx.org/licenses/MTLL.html","name":"Matrix Template Library License"},{"id":"MulanPSL-2.0","url":"https://spdx.org/licenses/MulanPSL-2.0.html","name":"Mulan Permissive Software License, Version 2"},{"id":"Multics","url":"https://spdx.org/licenses/Multics.html","name":"Multics License"},{"id":"Naumen","url":"https://spdx.org/licenses/Naumen.html","name":"Naumen Public License"},{"id":"NCSA","url":"https://spdx.org/licenses/NCSA.html","name":"University of Illinois/NCSA Open Source License"},{"id":"Net-SNMP","url":"https://spdx.org/licenses/Net-SNMP.html","name":"Net-SNMP License"},{"id":"NetCDF","url":"https://spdx.org/licenses/NetCDF.html","name":"NetCDF license"},{"name":"NICTA Public Software License, Version 1.0","id":"NICTA-1.0","url":"https://spdx.org/licenses/NICTA-1.0"},{"name":"NIST Software License","id":"NIST-Software","url":"https://spdx.org/licenses/NIST-Software"},{"id":"NTP","url":"https://spdx.org/licenses/NTP.html","name":"NTP License"},{"name":"Open Government Licence - Canada","id":"OGL-Canada-2.0","url":"https://spdx.org/licenses/OGL-Canada-2.0"},{"id":"OLDAP-2.0","url":"https://spdx.org/licenses/OLDAP-2.0.html","name":"Open LDAP Public License v2.0 (or possibly 2.0A and 2.0B)"},{"id":"OLDAP-2.0.1","url":"https://spdx.org/licenses/OLDAP-2.0.1.html","name":"Open LDAP Public License v2.0.1"},{"id":"OLDAP-2.1","url":"https://spdx.org/licenses/OLDAP-2.1.html","name":"Open LDAP Public License v2.1"},{"id":"OLDAP-2.2","url":"https://spdx.org/licenses/OLDAP-2.2.html","name":"Open LDAP Public License v2.2"},{"id":"OLDAP-2.2.1","url":"https://spdx.org/licenses/OLDAP-2.2.1.html","name":"Open LDAP Public License v2.2.1"},{"id":"OLDAP-2.2.2","url":"https://spdx.org/licenses/OLDAP-2.2.2.html","name":"Open LDAP Public License 2.2.2"},{"id":"OLDAP-2.3","url":"https://spdx.org/licenses/OLDAP-2.3.html","name":"Open LDAP Public License v2.3"},{"id":"OLDAP-2.4","url":"https://spdx.org/licenses/OLDAP-2.4.html","name":"Open LDAP Public License v2.4"},{"id":"OLDAP-2.5","url":"https://spdx.org/licenses/OLDAP-2.5.html","name":"Open LDAP Public License v2.5"},{"id":"OLDAP-2.6","url":"https://spdx.org/licenses/OLDAP-2.6.html","name":"Open LDAP Public License v2.6"},{"id":"OLDAP-2.7","url":"https://spdx.org/licenses/OLDAP-2.7.html","name":"Open LDAP Public License v2.7"},{"id":"OLDAP-2.8","url":"https://spdx.org/licenses/OLDAP-2.8.html","name":"Open LDAP Public License v2.8"},{"id":"OML","url":"https://spdx.org/licenses/OML.html","name":"Open Market License"},{"id":"OpenSSL","url":"https://spdx.org/licenses/OpenSSL.html","name":"OpenSSL License"},{"id":"PHP-3.0","url":"https://spdx.org/licenses/PHP-3.0.html","name":"PHP License v3.0"},{"id":"PHP-3.01","url":"https://spdx.org/licenses/PHP-3.01.html","name":"PHP License v3.01"},{"id":"Plexus","url":"https://spdx.org/licenses/Plexus.html","name":"Plexus Classworlds License"},{"id":"PSF-2.0","url":"https://spdx.org/licenses/PSF-2.0.html","name":"Python Software Foundation License 2.0"},{"id":"Python-2.0","url":"https://spdx.org/licenses/Python-2.0.html","name":"Python License 2.0"},{"id":"Ruby","url":"https://spdx.org/licenses/Ruby.html","name":"Ruby License"},{"id":"Saxpath","url":"https://spdx.org/licenses/Saxpath.html","name":"Saxpath License"},{"id":"SGI-B-2.0","url":"https://spdx.org/licenses/SGI-B-2.0.html","name":"SGI Free Software License B v2.0"},{"id":"SMLNJ","url":"https://spdx.org/licenses/SMLNJ.html","name":"Standard ML of New Jersey License"},{"name":"SunPro License","id":"SunPro","url":"https://spdx.org/licenses/SunPro"},{"id":"SWL","url":"https://spdx.org/licenses/SWL.html","name":"Scheme Widget Library (SWL) Software License Agreement"},{"name":"Symlinks License","id":"Symlinks","url":"https://spdx.org/licenses/Symlinks"},{"id":"TCL","url":"https://spdx.org/licenses/TCL.html","name":"TCL/TK License"},{"id":"TCP-wrappers","url":"https://spdx.org/licenses/TCP-wrappers.html","name":"TCP Wrappers License"},{"name":"UCAR License","id":"UCAR","url":"https://spdx.org/licenses/UCAR"},{"id":"Unicode-DFS-2015","url":"https://spdx.org/licenses/Unicode-DFS-2015.html","name":"Unicode License Agreement - Data Files and Software (2015)"},{"id":"Unicode-DFS-2016","url":"https://spdx.org/licenses/Unicode-DFS-2016.html","name":"Unicode License Agreement - Data Files and Software (2016)"},{"name":"UnixCrypt License","id":"UnixCrypt","url":"https://spdx.org/licenses/UnixCrypt"},{"id":"Unlicense","url":"https://spdx.org/licenses/Unlicense.html","name":"The Unlicense"},{"id":"VSL-1.0","url":"https://spdx.org/licenses/VSL-1.0.html","name":"Vovida Software License v1.0"},{"id":"W3C","url":"https://spdx.org/licenses/W3C.html","name":"W3C Software Notice and License (2002-12-31)"},{"id":"X11","url":"https://spdx.org/licenses/X11.html","name":"X11 License"},{"id":"XFree86-1.1","url":"https://spdx.org/licenses/XFree86-1.1.html","name":"XFree86 License 1.1"},{"name":"xlock License","id":"xlock","url":"https://spdx.org/licenses/xlock"},{"id":"Xnet","url":"https://spdx.org/licenses/Xnet.html","name":"X.Net License"},{"id":"xpp","url":"https://spdx.org/licenses/xpp.html","name":"XPP License"},{"id":"Zlib","url":"https://spdx.org/licenses/Zlib.html","name":"zlib License"},{"id":"zlib-acknowledgement","url":"https://spdx.org/licenses/zlib-acknowledgement.html","name":"zlib/libpng License with Acknowledgement"},{"id":"ZPL-2.0","url":"https://spdx.org/licenses/ZPL-2.0.html","name":"Zope Public License 2.0"},{"id":"ZPL-2.1","url":"https://spdx.org/licenses/ZPL-2.1.html","name":"Zope Public License 2.1"}]},{"name":"Lead","notes":"These licenses lack one or more essential elements of permissive open software licenses or impose unusually burdensome requirements. Many use unclear, jocular, or incomplete language.","licenses":[{"id":"AAL","url":"https://spdx.org/licenses/AAL.html","name":"Attribution Assurance License"},{"id":"Adobe-2006","url":"https://spdx.org/licenses/Adobe-2006","name":"Adobe Systems Incorporated Source Code License Agreement"},{"id":"Afmparse","url":"https://spdx.org/licenses/Afmparse.html","name":"Afmparse License"},{"id":"Artistic-1.0","url":"https://spdx.org/licenses/Artistic-1.0.html","name":"Artistic License 1.0"},{"id":"Artistic-1.0-cl8","url":"https://spdx.org/licenses/Artistic-1.0-cl8.html","name":"Artistic License 1.0 w/clause 8"},{"id":"Artistic-1.0-Perl","url":"https://spdx.org/licenses/Artistic-1.0-Perl.html","name":"Artistic License 1.0 (Perl)"},{"id":"Beerware","url":"https://spdx.org/licenses/Beerware.html","name":"Beerware License"},{"id":"blessing","url":"https://spdx.org/licenses/blessing.html","name":"SQLite Blessing"},{"id":"Borceux","url":"https://spdx.org/licenses/Borceux.html","name":"Borceux license"},{"name":"BSD 2-Clause - Ian Darwin variant","id":"BSD-2-Clause-Darwin","url":"https://spdx.org/licenses/BSD-2-Clause-Darwin"},{"id":"CECILL-B","url":"https://spdx.org/licenses/CECILL-B.html","name":"CeCILL-B Free Software License Agreement"},{"name":"check-cvs License","id":"check-cvs","url":"https://spdx.org/licenses/check-cvs"},{"id":"ClArtistic","url":"https://spdx.org/licenses/ClArtistic.html","name":"Clarified Artistic License"},{"id":"Condor-1.1","url":"https://spdx.org/licenses/Condor-1.1.html","name":"Condor Public License v1.1"},{"id":"Crossword","url":"https://spdx.org/licenses/Crossword.html","name":"Crossword License"},{"id":"CrystalStacker","url":"https://spdx.org/licenses/CrystalStacker.html","name":"CrystalStacker License"},{"id":"diffmark","url":"https://spdx.org/licenses/diffmark.html","name":"diffmark license"},{"id":"DOC","url":"https://spdx.org/licenses/DOC.html","name":"DOC License"},{"id":"EFL-1.0","url":"https://spdx.org/licenses/EFL-1.0.html","name":"Eiffel Forum License v1.0"},{"id":"EFL-2.0","url":"https://spdx.org/licenses/EFL-2.0.html","name":"Eiffel Forum License v2.0"},{"id":"Fair","url":"https://spdx.org/licenses/Fair.html","name":"Fair License"},{"id":"FSFAP","url":"https://spdx.org/licenses/FSFAP.html","name":"FSF All Permissive License"},{"id":"FSFUL","url":"https://spdx.org/licenses/FSFUL.html","name":"FSF Unlimited License"},{"id":"FSFULLR","url":"https://spdx.org/licenses/FSFULLR.html","name":"FSF Unlimited License (with License Retention)"},{"id":"Giftware","url":"https://spdx.org/licenses/Giftware.html","name":"Giftware License"},{"name":"Good Luck With That Public License","id":"GLWTPL","url":"https://spdx.org/licenses/GLWTPL"},{"id":"HPND","url":"https://spdx.org/licenses/HPND.html","name":"Historical Permission Notice and Disclaimer"},{"name":"HPND with US Government export control warning","id":"HPND-export-US","url":"https://spdx.org/licenses/HPND-export-US"},{"id":"IJG","url":"https://spdx.org/licenses/IJG.html","name":"Independent JPEG Group License"},{"name":"Independent JPEG Group License - short","id":"IJG-short","url":"https://spdx.org/licenses/IJG-short"},{"name":"Jam License","id":"Jam","url":"https://spdx.org/licenses/Jam"},{"name":"Kazlib License","id":"Kazlib","url":"https://spdx.org/licenses/Kazlib"},{"id":"Leptonica","url":"https://spdx.org/licenses/Leptonica.html","name":"Leptonica License"},{"id":"LPL-1.0","url":"https://spdx.org/licenses/LPL-1.0.html","name":"Lucent Public License Version 1.0"},{"id":"LPL-1.02","url":"https://spdx.org/licenses/LPL-1.02.html","name":"Lucent Public License v1.02"},{"name":"McPhee Slideshow License","id":"McPhee-slideshow","url":"https://spdx.org/licenses/McPhee-slideshow"},{"id":"MirOS","url":"https://spdx.org/licenses/MirOS.html","name":"MirOS License"},{"id":"mpich2","url":"https://spdx.org/licenses/mpich2.html","name":"mpich2 License"},{"name":"Nara Institute of Science and Technology License (2003)","id":"NAIST-2003","url":"https://spdx.org/licenses/NAIST-2003"},{"id":"NASA-1.3","url":"https://spdx.org/licenses/NASA-1.3.html","name":"NASA Open Source Agreement 1.3"},{"id":"NBPL-1.0","url":"https://spdx.org/licenses/NBPL-1.0.html","name":"Net Boolean Public License v1"},{"id":"Newsletr","url":"https://spdx.org/licenses/Newsletr.html","name":"Newsletr License"},{"id":"NLPL","url":"https://spdx.org/licenses/NLPL.html","name":"No Limit Public License"},{"id":"NRL","url":"https://spdx.org/licenses/NRL.html","name":"NRL License"},{"name":"NTP No Attribution","id":"NTP-0","url":"https://spdx.org/licenses/NTP-0"},{"name":"OFFIS License","id":"OFFIS","url":"https://spdx.org/licenses/OFFIS"},{"id":"OGTSL","url":"https://spdx.org/licenses/OGTSL.html","name":"Open Group Test Suite License"},{"id":"OLDAP-1.1","url":"https://spdx.org/licenses/OLDAP-1.1.html","name":"Open LDAP Public License v1.1"},{"id":"OLDAP-1.2","url":"https://spdx.org/licenses/OLDAP-1.2.html","name":"Open LDAP Public License v1.2"},{"id":"OLDAP-1.3","url":"https://spdx.org/licenses/OLDAP-1.3.html","name":"Open LDAP Public License v1.3"},{"id":"OLDAP-1.4","url":"https://spdx.org/licenses/OLDAP-1.4.html","name":"Open LDAP Public License v1.4"},{"id":"psutils","url":"https://spdx.org/licenses/psutils.html","name":"psutils License"},{"name":"Python ldap License","id":"python-ldap","url":"https://spdx.org/licenses/python-ldap"},{"id":"Qhull","url":"https://spdx.org/licenses/Qhull.html","name":"Qhull License"},{"id":"Rdisc","url":"https://spdx.org/licenses/Rdisc.html","name":"Rdisc License"},{"id":"RSA-MD","url":"https://spdx.org/licenses/RSA-MD.html","name":"RSA Message-Digest License "},{"name":"snprintf License","id":"snprintf","url":"https://spdx.org/licenses/snprintf"},{"id":"Spencer-86","url":"https://spdx.org/licenses/Spencer-86.html","name":"Spencer License 86"},{"id":"Spencer-94","url":"https://spdx.org/licenses/Spencer-94.html","name":"Spencer License 94"},{"name":"SSH short notice","id":"SSH-short","url":"https://spdx.org/licenses/SSH-short"},{"id":"TU-Berlin-1.0","url":"https://spdx.org/licenses/TU-Berlin-1.0.html","name":"Technische Universitaet Berlin License 1.0"},{"id":"TU-Berlin-2.0","url":"https://spdx.org/licenses/TU-Berlin-2.0.html","name":"Technische Universitaet Berlin License 2.0"},{"id":"Vim","url":"https://spdx.org/licenses/Vim.html","name":"Vim License"},{"id":"W3C-19980720","url":"https://spdx.org/licenses/W3C-19980720.html","name":"W3C Software Notice and License (1998-07-20)"},{"id":"W3C-20150513","url":"https://spdx.org/licenses/W3C-20150513.html","name":"W3C Software Notice and Document License (2015-05-13)"},{"id":"Wsuipa","url":"https://spdx.org/licenses/Wsuipa.html","name":"Wsuipa License"},{"id":"WTFPL","url":"https://spdx.org/licenses/WTFPL.html","name":"Do What The F*ck You Want To Public License"},{"id":"xinetd","url":"https://spdx.org/licenses/xinetd.html","name":"xinetd License"},{"name":"XSkat License","id":"XSkat","url":"https://spdx.org/licenses/XSkat"},{"id":"Zed","url":"https://spdx.org/licenses/Zed.html","name":"Zed License"},{"id":"Zend-2.0","url":"https://spdx.org/licenses/Zend-2.0.html","name":"Zend License v2.0"},{"id":"ZPL-1.1","url":"https://spdx.org/licenses/ZPL-1.1.html","name":"Zope Public License 1.1"}]}]'); ;// CONCATENATED MODULE: ./lib/build-packages/check-license/index.js @@ -30874,7 +30874,11 @@ const list_namespaceObject = /*#__PURE__*/JSON.parse('[{"name":"Model","notes":" // Permissive FLOSS licenses are ok, see https://blueoakcouncil.org/list for details. const ALLOWED_STATUSES = new Set(['Model', 'Gold', 'Silver', 'Bronze']); // Some packages have multiple licenses, and as long as one of them is acceptable, we allow it. -const ADDITIONAL_ALLOWED = new Set(['(BSD-3-Clause OR GPL-2.0)']); +const ADDITIONAL_ALLOWED = new Set([ + '(BSD-3-Clause OR GPL-2.0)', + 'CC-BY-3.0', + 'CC-BY-4.0' +]); const ALLOWED_LICENSES = new Set(list_namespaceObject .filter(({ name }) => ALLOWED_STATUSES.has(name)) .flatMap(({ licenses }) => licenses) diff --git a/.github/actions/check-pr/action.yml b/.github/actions/check-pr/action.yml index f6e613a870..0609d8b1b5 100644 --- a/.github/actions/check-pr/action.yml +++ b/.github/actions/check-pr/action.yml @@ -5,5 +5,5 @@ inputs: description: 'Changed files in the .changeset directory on the current PR.' required: true runs: - using: 'node16' + using: 'node24' main: 'index.js' diff --git a/.github/actions/check-pr/index.js b/.github/actions/check-pr/index.js index 7beeff42f4..1b6b125f4b 100644 --- a/.github/actions/check-pr/index.js +++ b/.github/actions/check-pr/index.js @@ -1,7 +1,7 @@ import { createRequire as __WEBPACK_EXTERNAL_createRequire } from "module"; /******/ var __webpack_modules__ = ({ -/***/ 9920: +/***/ 3864: /***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { @@ -54,9 +54,9 @@ exports.getProxyUrl = getProxyUrl; exports.isHttps = isHttps; const http = __importStar(__nccwpck_require__(8611)); const https = __importStar(__nccwpck_require__(5692)); -const pm = __importStar(__nccwpck_require__(8688)); -const tunnel = __importStar(__nccwpck_require__(5070)); -const undici_1 = __nccwpck_require__(1684); +const pm = __importStar(__nccwpck_require__(6424)); +const tunnel = __importStar(__nccwpck_require__(7285)); +const undici_1 = __nccwpck_require__(4906); var HttpCodes; (function (HttpCodes) { HttpCodes[HttpCodes["OK"] = 200] = "OK"; @@ -744,7 +744,7 @@ const lowercaseKeys = (obj) => Object.keys(obj).reduce((c, k) => ((c[k.toLowerCa /***/ }), -/***/ 8688: +/***/ 6424: /***/ ((__unused_webpack_module, exports) => { @@ -844,15 +844,15 @@ class DecodedURL extends URL { /***/ }), -/***/ 5070: +/***/ 7285: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -module.exports = __nccwpck_require__(5862); +module.exports = __nccwpck_require__(8703); /***/ }), -/***/ 5862: +/***/ 8703: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -1123,33 +1123,33 @@ exports.debug = debug; // for test /***/ }), -/***/ 1684: +/***/ 4906: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const Client = __nccwpck_require__(1313) -const Dispatcher = __nccwpck_require__(3415) -const Pool = __nccwpck_require__(5928) -const BalancedPool = __nccwpck_require__(6681) -const Agent = __nccwpck_require__(1745) -const ProxyAgent = __nccwpck_require__(7508) -const EnvHttpProxyAgent = __nccwpck_require__(9221) -const RetryAgent = __nccwpck_require__(334) -const errors = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) +const Client = __nccwpck_require__(979) +const Dispatcher = __nccwpck_require__(7029) +const Pool = __nccwpck_require__(9610) +const BalancedPool = __nccwpck_require__(7475) +const Agent = __nccwpck_require__(7823) +const ProxyAgent = __nccwpck_require__(826) +const EnvHttpProxyAgent = __nccwpck_require__(2935) +const RetryAgent = __nccwpck_require__(5308) +const errors = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) const { InvalidArgumentError } = errors -const api = __nccwpck_require__(2531) -const buildConnector = __nccwpck_require__(1332) -const MockClient = __nccwpck_require__(2361) -const MockAgent = __nccwpck_require__(7017) -const MockPool = __nccwpck_require__(6480) -const mockErrors = __nccwpck_require__(2673) -const RetryHandler = __nccwpck_require__(4004) -const { getGlobalDispatcher, setGlobalDispatcher } = __nccwpck_require__(1481) -const DecoratorHandler = __nccwpck_require__(9151) -const RedirectHandler = __nccwpck_require__(7158) -const createRedirectInterceptor = __nccwpck_require__(1576) +const api = __nccwpck_require__(3797) +const buildConnector = __nccwpck_require__(46) +const MockClient = __nccwpck_require__(6899) +const MockAgent = __nccwpck_require__(2527) +const MockPool = __nccwpck_require__(7226) +const mockErrors = __nccwpck_require__(2863) +const RetryHandler = __nccwpck_require__(1450) +const { getGlobalDispatcher, setGlobalDispatcher } = __nccwpck_require__(8707) +const DecoratorHandler = __nccwpck_require__(801) +const RedirectHandler = __nccwpck_require__(1932) +const createRedirectInterceptor = __nccwpck_require__(7958) Object.assign(Dispatcher.prototype, api) @@ -1167,10 +1167,10 @@ module.exports.DecoratorHandler = DecoratorHandler module.exports.RedirectHandler = RedirectHandler module.exports.createRedirectInterceptor = createRedirectInterceptor module.exports.interceptors = { - redirect: __nccwpck_require__(7734), - retry: __nccwpck_require__(5486), - dump: __nccwpck_require__(5376), - dns: __nccwpck_require__(4287) + redirect: __nccwpck_require__(3184), + retry: __nccwpck_require__(5904), + dump: __nccwpck_require__(4166), + dns: __nccwpck_require__(4289) } module.exports.buildConnector = buildConnector @@ -1232,7 +1232,7 @@ function makeDispatcher (fn) { module.exports.setGlobalDispatcher = setGlobalDispatcher module.exports.getGlobalDispatcher = getGlobalDispatcher -const fetchImpl = (__nccwpck_require__(4202).fetch) +const fetchImpl = (__nccwpck_require__(224).fetch) module.exports.fetch = async function fetch (init, options = undefined) { try { return await fetchImpl(init, options) @@ -1244,39 +1244,39 @@ module.exports.fetch = async function fetch (init, options = undefined) { throw err } } -module.exports.Headers = __nccwpck_require__(3408).Headers -module.exports.Response = __nccwpck_require__(7287).Response -module.exports.Request = __nccwpck_require__(9683).Request -module.exports.FormData = __nccwpck_require__(3818).FormData +module.exports.Headers = __nccwpck_require__(8146).Headers +module.exports.Response = __nccwpck_require__(2873).Response +module.exports.Request = __nccwpck_require__(557).Request +module.exports.FormData = __nccwpck_require__(8932).FormData module.exports.File = globalThis.File ?? (__nccwpck_require__(4573).File) -module.exports.FileReader = __nccwpck_require__(6575).FileReader +module.exports.FileReader = __nccwpck_require__(7669).FileReader -const { setGlobalOrigin, getGlobalOrigin } = __nccwpck_require__(5311) +const { setGlobalOrigin, getGlobalOrigin } = __nccwpck_require__(777) module.exports.setGlobalOrigin = setGlobalOrigin module.exports.getGlobalOrigin = getGlobalOrigin -const { CacheStorage } = __nccwpck_require__(6577) -const { kConstruct } = __nccwpck_require__(8329) +const { CacheStorage } = __nccwpck_require__(4215) +const { kConstruct } = __nccwpck_require__(7747) // Cache & CacheStorage are tightly coupled with fetch. Even if it may run // in an older version of Node, it doesn't have any use without fetch. module.exports.caches = new CacheStorage(kConstruct) -const { deleteCookie, getCookies, getSetCookies, setCookie } = __nccwpck_require__(7889) +const { deleteCookie, getCookies, getSetCookies, setCookie } = __nccwpck_require__(8659) module.exports.deleteCookie = deleteCookie module.exports.getCookies = getCookies module.exports.getSetCookies = getSetCookies module.exports.setCookie = setCookie -const { parseMIMEType, serializeAMimeType } = __nccwpck_require__(192) +const { parseMIMEType, serializeAMimeType } = __nccwpck_require__(8394) module.exports.parseMIMEType = parseMIMEType module.exports.serializeAMimeType = serializeAMimeType -const { CloseEvent, ErrorEvent, MessageEvent } = __nccwpck_require__(6760) -module.exports.WebSocket = __nccwpck_require__(2522).WebSocket +const { CloseEvent, ErrorEvent, MessageEvent } = __nccwpck_require__(7690) +module.exports.WebSocket = __nccwpck_require__(7836).WebSocket module.exports.CloseEvent = CloseEvent module.exports.ErrorEvent = ErrorEvent module.exports.MessageEvent = MessageEvent @@ -1292,18 +1292,18 @@ module.exports.MockPool = MockPool module.exports.MockAgent = MockAgent module.exports.mockErrors = mockErrors -const { EventSource } = __nccwpck_require__(7042) +const { EventSource } = __nccwpck_require__(3276) module.exports.EventSource = EventSource /***/ }), -/***/ 2730: +/***/ 6756: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { addAbortListener } = __nccwpck_require__(9500) -const { RequestAbortedError } = __nccwpck_require__(3959) +const { addAbortListener } = __nccwpck_require__(7662) +const { RequestAbortedError } = __nccwpck_require__(5933) const kListener = Symbol('kListener') const kSignal = Symbol('kSignal') @@ -1363,16 +1363,16 @@ module.exports = { /***/ }), -/***/ 3192: +/***/ 7530: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { AsyncResource } = __nccwpck_require__(6698) -const { InvalidArgumentError, SocketError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const { InvalidArgumentError, SocketError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { addSignal, removeSignal } = __nccwpck_require__(6756) class ConnectHandler extends AsyncResource { constructor (opts, callback) { @@ -1478,7 +1478,7 @@ module.exports = connect /***/ }), -/***/ 2466: +/***/ 8656: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -1492,10 +1492,10 @@ const { InvalidArgumentError, InvalidReturnValueError, RequestAbortedError -} = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) +} = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) const { AsyncResource } = __nccwpck_require__(6698) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const { addSignal, removeSignal } = __nccwpck_require__(6756) const assert = __nccwpck_require__(4589) const kResume = Symbol('resume') @@ -1736,16 +1736,16 @@ module.exports = pipeline /***/ }), -/***/ 887: +/***/ 7157: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { Readable } = __nccwpck_require__(8947) -const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { getResolveErrorBodyCallback } = __nccwpck_require__(363) +const { Readable } = __nccwpck_require__(2797) +const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { getResolveErrorBodyCallback } = __nccwpck_require__(3877) const { AsyncResource } = __nccwpck_require__(6698) class RequestHandler extends AsyncResource { @@ -1957,18 +1957,18 @@ module.exports.RequestHandler = RequestHandler /***/ }), -/***/ 4388: +/***/ 3718: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { finished, PassThrough } = __nccwpck_require__(7075) -const { InvalidArgumentError, InvalidReturnValueError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { getResolveErrorBodyCallback } = __nccwpck_require__(363) +const { InvalidArgumentError, InvalidReturnValueError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { getResolveErrorBodyCallback } = __nccwpck_require__(3877) const { AsyncResource } = __nccwpck_require__(6698) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const { addSignal, removeSignal } = __nccwpck_require__(6756) class StreamHandler extends AsyncResource { constructor (opts, factory, callback) { @@ -2184,15 +2184,15 @@ module.exports = stream /***/ }), -/***/ 6342: +/***/ 9764: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { InvalidArgumentError, SocketError } = __nccwpck_require__(3959) +const { InvalidArgumentError, SocketError } = __nccwpck_require__(5933) const { AsyncResource } = __nccwpck_require__(6698) -const util = __nccwpck_require__(9500) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const util = __nccwpck_require__(7662) +const { addSignal, removeSignal } = __nccwpck_require__(6756) const assert = __nccwpck_require__(4589) class UpgradeHandler extends AsyncResource { @@ -2299,21 +2299,21 @@ module.exports = upgrade /***/ }), -/***/ 2531: +/***/ 3797: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -module.exports.request = __nccwpck_require__(887) -module.exports.stream = __nccwpck_require__(4388) -module.exports.pipeline = __nccwpck_require__(2466) -module.exports.upgrade = __nccwpck_require__(6342) -module.exports.connect = __nccwpck_require__(3192) +module.exports.request = __nccwpck_require__(7157) +module.exports.stream = __nccwpck_require__(3718) +module.exports.pipeline = __nccwpck_require__(8656) +module.exports.upgrade = __nccwpck_require__(9764) +module.exports.connect = __nccwpck_require__(7530) /***/ }), -/***/ 8947: +/***/ 2797: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Ported from https://github.com/nodejs/undici/pull/907 @@ -2322,9 +2322,9 @@ module.exports.connect = __nccwpck_require__(3192) const assert = __nccwpck_require__(4589) const { Readable } = __nccwpck_require__(7075) -const { RequestAbortedError, NotSupportedError, InvalidArgumentError, AbortError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { ReadableStreamFrom } = __nccwpck_require__(9500) +const { RequestAbortedError, NotSupportedError, InvalidArgumentError, AbortError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { ReadableStreamFrom } = __nccwpck_require__(7662) const kConsume = Symbol('kConsume') const kReading = Symbol('kReading') @@ -2705,15 +2705,15 @@ module.exports = { Readable: BodyReadable, chunksDecode } /***/ }), -/***/ 363: +/***/ 3877: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { ResponseStatusCodeError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) -const { chunksDecode } = __nccwpck_require__(8947) +const { chunksDecode } = __nccwpck_require__(2797) const CHUNK_LIMIT = 128 * 1024 async function getResolveErrorBodyCallback ({ callback, body, contentType, statusCode, statusMessage, headers }) { @@ -2805,16 +2805,16 @@ module.exports = { /***/ }), -/***/ 1332: +/***/ 46: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const net = __nccwpck_require__(7030) const assert = __nccwpck_require__(4589) -const util = __nccwpck_require__(9500) -const { InvalidArgumentError, ConnectTimeoutError } = __nccwpck_require__(3959) -const timers = __nccwpck_require__(4591) +const util = __nccwpck_require__(7662) +const { InvalidArgumentError, ConnectTimeoutError } = __nccwpck_require__(5933) +const timers = __nccwpck_require__(7797) function noop () {} @@ -3052,7 +3052,7 @@ module.exports = buildConnector /***/ }), -/***/ 2371: +/***/ 7313: /***/ ((module) => { @@ -3177,7 +3177,7 @@ module.exports = { /***/ }), -/***/ 5458: +/***/ 8560: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -3386,7 +3386,7 @@ module.exports = { /***/ }), -/***/ 3959: +/***/ 5933: /***/ ((module) => { @@ -3818,7 +3818,7 @@ module.exports = { /***/ }), -/***/ 9691: +/***/ 9441: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -3826,7 +3826,7 @@ module.exports = { const { InvalidArgumentError, NotSupportedError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const assert = __nccwpck_require__(4589) const { isValidHTTPToken, @@ -3841,9 +3841,9 @@ const { validateHandler, getServerName, normalizedMethodRecords -} = __nccwpck_require__(9500) -const { channels } = __nccwpck_require__(5458) -const { headerNameLowerCasedRecord } = __nccwpck_require__(2371) +} = __nccwpck_require__(7662) +const { channels } = __nccwpck_require__(8560) +const { headerNameLowerCasedRecord } = __nccwpck_require__(7313) // Verifies that a given path is valid does not contain control chars \x00 to \x20 const invalidPathRegex = /[^\u0021-\u00ff]/ @@ -4230,7 +4230,7 @@ module.exports = Request /***/ }), -/***/ 8031: +/***/ 3373: /***/ ((module) => { module.exports = { @@ -4304,7 +4304,7 @@ module.exports = { /***/ }), -/***/ 6868: +/***/ 6338: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -4312,7 +4312,7 @@ module.exports = { const { wellknownHeaderNames, headerNameLowerCasedRecord -} = __nccwpck_require__(2371) +} = __nccwpck_require__(7313) class TstNode { /** @type {any} */ @@ -4463,13 +4463,13 @@ module.exports = { /***/ }), -/***/ 9500: +/***/ 7662: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { kDestroyed, kBodyUsed, kListeners, kBody } = __nccwpck_require__(8031) +const { kDestroyed, kBodyUsed, kListeners, kBody } = __nccwpck_require__(3373) const { IncomingMessage } = __nccwpck_require__(7067) const stream = __nccwpck_require__(7075) const net = __nccwpck_require__(7030) @@ -4477,9 +4477,9 @@ const { Blob } = __nccwpck_require__(4573) const nodeUtil = __nccwpck_require__(7975) const { stringify } = __nccwpck_require__(1792) const { EventEmitter: EE } = __nccwpck_require__(8474) -const { InvalidArgumentError } = __nccwpck_require__(3959) -const { headerNameLowerCasedRecord } = __nccwpck_require__(2371) -const { tree } = __nccwpck_require__(6868) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const { headerNameLowerCasedRecord } = __nccwpck_require__(7313) +const { tree } = __nccwpck_require__(6338) const [nodeMajor, nodeMinor] = process.versions.node.split('.').map(v => Number(v)) @@ -5189,18 +5189,18 @@ module.exports = { /***/ }), -/***/ 1745: +/***/ 7823: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { InvalidArgumentError } = __nccwpck_require__(3959) -const { kClients, kRunning, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(8031) -const DispatcherBase = __nccwpck_require__(1517) -const Pool = __nccwpck_require__(5928) -const Client = __nccwpck_require__(1313) -const util = __nccwpck_require__(9500) -const createRedirectInterceptor = __nccwpck_require__(1576) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const { kClients, kRunning, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(3373) +const DispatcherBase = __nccwpck_require__(103) +const Pool = __nccwpck_require__(9610) +const Client = __nccwpck_require__(979) +const util = __nccwpck_require__(7662) +const createRedirectInterceptor = __nccwpck_require__(7958) const kOnConnect = Symbol('onConnect') const kOnDisconnect = Symbol('onDisconnect') @@ -5325,7 +5325,7 @@ module.exports = Agent /***/ }), -/***/ 6681: +/***/ 7475: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -5333,7 +5333,7 @@ module.exports = Agent const { BalancedPoolMissingUpstreamError, InvalidArgumentError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const { PoolBase, kClients, @@ -5341,10 +5341,10 @@ const { kAddClient, kRemoveClient, kGetDispatcher -} = __nccwpck_require__(7292) -const Pool = __nccwpck_require__(5928) -const { kUrl, kInterceptors } = __nccwpck_require__(8031) -const { parseOrigin } = __nccwpck_require__(9500) +} = __nccwpck_require__(9266) +const Pool = __nccwpck_require__(9610) +const { kUrl, kInterceptors } = __nccwpck_require__(3373) +const { parseOrigin } = __nccwpck_require__(7662) const kFactory = Symbol('factory') const kOptions = Symbol('options') @@ -5541,7 +5541,7 @@ module.exports = BalancedPool /***/ }), -/***/ 4393: +/***/ 7727: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -5549,9 +5549,9 @@ module.exports = BalancedPool /* global WebAssembly */ const assert = __nccwpck_require__(4589) -const util = __nccwpck_require__(9500) -const { channels } = __nccwpck_require__(5458) -const timers = __nccwpck_require__(4591) +const util = __nccwpck_require__(7662) +const { channels } = __nccwpck_require__(8560) +const timers = __nccwpck_require__(7797) const { RequestContentLengthMismatchError, ResponseContentLengthMismatchError, @@ -5563,7 +5563,7 @@ const { BodyTimeoutError, HTTPParserError, ResponseExceededMaxSizeError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const { kUrl, kReset, @@ -5596,9 +5596,9 @@ const { kOnError, kResume, kHTTPContext -} = __nccwpck_require__(8031) +} = __nccwpck_require__(3373) -const constants = __nccwpck_require__(748) +const constants = __nccwpck_require__(1214) const EMPTY_BUF = Buffer.alloc(0) const FastBuffer = Buffer[Symbol.species] const addListener = util.addListener @@ -5607,11 +5607,11 @@ const removeAllListeners = util.removeAllListeners let extractBody async function lazyllhttp () { - const llhttpWasmData = process.env.JEST_WORKER_ID ? __nccwpck_require__(3922) : undefined + const llhttpWasmData = process.env.JEST_WORKER_ID ? __nccwpck_require__(4916) : undefined let mod try { - mod = await WebAssembly.compile(__nccwpck_require__(3742)) + mod = await WebAssembly.compile(__nccwpck_require__(7708)) } catch (e) { /* istanbul ignore next */ @@ -5619,7 +5619,7 @@ async function lazyllhttp () { // being enabled, but the occurring of this other error // * https://github.com/emscripten-core/emscripten/issues/11495 // got me to remove that check to avoid breaking Node 12. - mod = await WebAssembly.compile(llhttpWasmData || __nccwpck_require__(3922)) + mod = await WebAssembly.compile(llhttpWasmData || __nccwpck_require__(4916)) } return await WebAssembly.instantiate(mod, { @@ -6414,7 +6414,7 @@ function writeH1 (client, request) { if (util.isFormDataLike(body)) { if (!extractBody) { - extractBody = (__nccwpck_require__(1448).extractBody) + extractBody = (__nccwpck_require__(4086).extractBody) } const [bodyStream, contentType] = extractBody(body) @@ -6918,20 +6918,20 @@ module.exports = connectH1 /***/ }), -/***/ 3504: +/***/ 930: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { pipeline } = __nccwpck_require__(7075) -const util = __nccwpck_require__(9500) +const util = __nccwpck_require__(7662) const { RequestContentLengthMismatchError, RequestAbortedError, SocketError, InformationalError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const { kUrl, kReset, @@ -6950,7 +6950,7 @@ const { kResume, kSize, kHTTPContext -} = __nccwpck_require__(8031) +} = __nccwpck_require__(3373) const kOpenStreams = Symbol('open streams') @@ -7309,7 +7309,7 @@ function writeH2 (client, request) { let contentLength = util.bodyLength(body) if (util.isFormDataLike(body)) { - extractBody ??= (__nccwpck_require__(1448).extractBody) + extractBody ??= (__nccwpck_require__(4086).extractBody) const [bodyStream, contentType] = extractBody(body) headers['content-type'] = contentType @@ -7669,7 +7669,7 @@ module.exports = connectH2 /***/ }), -/***/ 1313: +/***/ 979: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // @ts-check @@ -7679,16 +7679,16 @@ module.exports = connectH2 const assert = __nccwpck_require__(4589) const net = __nccwpck_require__(7030) const http = __nccwpck_require__(7067) -const util = __nccwpck_require__(9500) -const { channels } = __nccwpck_require__(5458) -const Request = __nccwpck_require__(9691) -const DispatcherBase = __nccwpck_require__(1517) +const util = __nccwpck_require__(7662) +const { channels } = __nccwpck_require__(8560) +const Request = __nccwpck_require__(9441) +const DispatcherBase = __nccwpck_require__(103) const { InvalidArgumentError, InformationalError, ClientDestroyedError -} = __nccwpck_require__(3959) -const buildConnector = __nccwpck_require__(1332) +} = __nccwpck_require__(5933) +const buildConnector = __nccwpck_require__(46) const { kUrl, kServerName, @@ -7730,9 +7730,9 @@ const { kHTTPContext, kMaxConcurrentStreams, kResume -} = __nccwpck_require__(8031) -const connectH1 = __nccwpck_require__(4393) -const connectH2 = __nccwpck_require__(3504) +} = __nccwpck_require__(3373) +const connectH1 = __nccwpck_require__(7727) +const connectH2 = __nccwpck_require__(930) let deprecatedInterceptorWarned = false const kClosedResolve = Symbol('kClosedResolve') @@ -8038,7 +8038,7 @@ class Client extends DispatcherBase { } } -const createRedirectInterceptor = __nccwpck_require__(1576) +const createRedirectInterceptor = __nccwpck_require__(7958) function onError (client, err) { if ( @@ -8298,18 +8298,18 @@ module.exports = Client /***/ }), -/***/ 1517: +/***/ 103: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const Dispatcher = __nccwpck_require__(3415) +const Dispatcher = __nccwpck_require__(7029) const { ClientDestroyedError, ClientClosedError, InvalidArgumentError -} = __nccwpck_require__(3959) -const { kDestroy, kClose, kClosed, kDestroyed, kDispatch, kInterceptors } = __nccwpck_require__(8031) +} = __nccwpck_require__(5933) +const { kDestroy, kClose, kClosed, kDestroyed, kDispatch, kInterceptors } = __nccwpck_require__(3373) const kOnDestroyed = Symbol('onDestroyed') const kOnClosed = Symbol('onClosed') @@ -8495,7 +8495,7 @@ module.exports = DispatcherBase /***/ }), -/***/ 3415: +/***/ 7029: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -8567,15 +8567,15 @@ module.exports = Dispatcher /***/ }), -/***/ 9221: +/***/ 2935: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const DispatcherBase = __nccwpck_require__(1517) -const { kClose, kDestroy, kClosed, kDestroyed, kDispatch, kNoProxyAgent, kHttpProxyAgent, kHttpsProxyAgent } = __nccwpck_require__(8031) -const ProxyAgent = __nccwpck_require__(7508) -const Agent = __nccwpck_require__(1745) +const DispatcherBase = __nccwpck_require__(103) +const { kClose, kDestroy, kClosed, kDestroyed, kDispatch, kNoProxyAgent, kHttpProxyAgent, kHttpsProxyAgent } = __nccwpck_require__(3373) +const ProxyAgent = __nccwpck_require__(826) +const Agent = __nccwpck_require__(7823) const DEFAULT_PORTS = { 'http:': 80, @@ -8734,7 +8734,7 @@ module.exports = EnvHttpProxyAgent /***/ }), -/***/ 5464: +/***/ 1034: /***/ ((module) => { /* eslint-disable */ @@ -8858,15 +8858,15 @@ module.exports = class FixedQueue { /***/ }), -/***/ 7292: +/***/ 9266: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const DispatcherBase = __nccwpck_require__(1517) -const FixedQueue = __nccwpck_require__(5464) -const { kConnected, kSize, kRunning, kPending, kQueued, kBusy, kFree, kUrl, kClose, kDestroy, kDispatch } = __nccwpck_require__(8031) -const PoolStats = __nccwpck_require__(8186) +const DispatcherBase = __nccwpck_require__(103) +const FixedQueue = __nccwpck_require__(1034) +const { kConnected, kSize, kRunning, kPending, kQueued, kBusy, kFree, kUrl, kClose, kDestroy, kDispatch } = __nccwpck_require__(3373) +const PoolStats = __nccwpck_require__(7956) const kClients = Symbol('clients') const kNeedDrain = Symbol('needDrain') @@ -9059,10 +9059,10 @@ module.exports = { /***/ }), -/***/ 8186: +/***/ 7956: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kFree, kConnected, kPending, kQueued, kRunning, kSize } = __nccwpck_require__(8031) +const { kFree, kConnected, kPending, kQueued, kRunning, kSize } = __nccwpck_require__(3373) const kPool = Symbol('pool') class PoolStats { @@ -9100,7 +9100,7 @@ module.exports = PoolStats /***/ }), -/***/ 5928: +/***/ 9610: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -9111,14 +9111,14 @@ const { kNeedDrain, kAddClient, kGetDispatcher -} = __nccwpck_require__(7292) -const Client = __nccwpck_require__(1313) +} = __nccwpck_require__(9266) +const Client = __nccwpck_require__(979) const { InvalidArgumentError -} = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { kUrl, kInterceptors } = __nccwpck_require__(8031) -const buildConnector = __nccwpck_require__(1332) +} = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { kUrl, kInterceptors } = __nccwpck_require__(3373) +const buildConnector = __nccwpck_require__(46) const kOptions = Symbol('options') const kConnections = Symbol('connections') @@ -9214,19 +9214,19 @@ module.exports = Pool /***/ }), -/***/ 7508: +/***/ 826: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kProxy, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(8031) +const { kProxy, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(3373) const { URL } = __nccwpck_require__(3136) -const Agent = __nccwpck_require__(1745) -const Pool = __nccwpck_require__(5928) -const DispatcherBase = __nccwpck_require__(1517) -const { InvalidArgumentError, RequestAbortedError, SecureProxyConnectionError } = __nccwpck_require__(3959) -const buildConnector = __nccwpck_require__(1332) -const Client = __nccwpck_require__(1313) +const Agent = __nccwpck_require__(7823) +const Pool = __nccwpck_require__(9610) +const DispatcherBase = __nccwpck_require__(103) +const { InvalidArgumentError, RequestAbortedError, SecureProxyConnectionError } = __nccwpck_require__(5933) +const buildConnector = __nccwpck_require__(46) +const Client = __nccwpck_require__(979) const kAgent = Symbol('proxy agent') const kClient = Symbol('proxy client') @@ -9495,13 +9495,13 @@ module.exports = ProxyAgent /***/ }), -/***/ 334: +/***/ 5308: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const Dispatcher = __nccwpck_require__(3415) -const RetryHandler = __nccwpck_require__(4004) +const Dispatcher = __nccwpck_require__(7029) +const RetryHandler = __nccwpck_require__(1450) class RetryAgent extends Dispatcher { #agent = null @@ -9537,7 +9537,7 @@ module.exports = RetryAgent /***/ }), -/***/ 1481: +/***/ 8707: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -9545,8 +9545,8 @@ module.exports = RetryAgent // We include a version number for the Dispatcher API. In case of breaking changes, // this version number must be increased to avoid conflicts. const globalDispatcher = Symbol.for('undici.globalDispatcher.1') -const { InvalidArgumentError } = __nccwpck_require__(3959) -const Agent = __nccwpck_require__(1745) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const Agent = __nccwpck_require__(7823) if (getGlobalDispatcher() === undefined) { setGlobalDispatcher(new Agent()) @@ -9576,7 +9576,7 @@ module.exports = { /***/ }), -/***/ 9151: +/***/ 801: /***/ ((module) => { @@ -9627,15 +9627,15 @@ module.exports = class DecoratorHandler { /***/ }), -/***/ 7158: +/***/ 1932: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const util = __nccwpck_require__(9500) -const { kBodyUsed } = __nccwpck_require__(8031) +const util = __nccwpck_require__(7662) +const { kBodyUsed } = __nccwpck_require__(3373) const assert = __nccwpck_require__(4589) -const { InvalidArgumentError } = __nccwpck_require__(3959) +const { InvalidArgumentError } = __nccwpck_require__(5933) const EE = __nccwpck_require__(8474) const redirectableStatusCodes = [300, 301, 302, 303, 307, 308] @@ -9866,20 +9866,20 @@ module.exports = RedirectHandler /***/ }), -/***/ 4004: +/***/ 1450: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { kRetryHandlerDefaultRetry } = __nccwpck_require__(8031) -const { RequestRetryError } = __nccwpck_require__(3959) +const { kRetryHandlerDefaultRetry } = __nccwpck_require__(3373) +const { RequestRetryError } = __nccwpck_require__(5933) const { isDisturbed, parseHeaders, parseRangeHeader, wrapRequestBody -} = __nccwpck_require__(9500) +} = __nccwpck_require__(7662) function calculateRetryAfterHeader (retryAfter) { const current = Date.now() @@ -10247,14 +10247,14 @@ module.exports = RetryHandler /***/ }), -/***/ 4287: +/***/ 4289: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { isIP } = __nccwpck_require__(7030) const { lookup } = __nccwpck_require__(610) -const DecoratorHandler = __nccwpck_require__(9151) -const { InvalidArgumentError, InformationalError } = __nccwpck_require__(3959) +const DecoratorHandler = __nccwpck_require__(801) +const { InvalidArgumentError, InformationalError } = __nccwpck_require__(5933) const maxInt = Math.pow(2, 31) - 1 class DNSInstance { @@ -10629,14 +10629,14 @@ module.exports = interceptorOpts => { /***/ }), -/***/ 5376: +/***/ 4166: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const util = __nccwpck_require__(9500) -const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(3959) -const DecoratorHandler = __nccwpck_require__(9151) +const util = __nccwpck_require__(7662) +const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(5933) +const DecoratorHandler = __nccwpck_require__(801) class DumpHandler extends DecoratorHandler { #maxSize = 1024 * 1024 @@ -10759,12 +10759,12 @@ module.exports = createDumpInterceptor /***/ }), -/***/ 1576: +/***/ 7958: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const RedirectHandler = __nccwpck_require__(7158) +const RedirectHandler = __nccwpck_require__(1932) function createRedirectInterceptor ({ maxRedirections: defaultMaxRedirections }) { return (dispatch) => { @@ -10787,11 +10787,11 @@ module.exports = createRedirectInterceptor /***/ }), -/***/ 7734: +/***/ 3184: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const RedirectHandler = __nccwpck_require__(7158) +const RedirectHandler = __nccwpck_require__(1932) module.exports = opts => { const globalMaxRedirections = opts?.maxRedirections @@ -10818,11 +10818,11 @@ module.exports = opts => { /***/ }), -/***/ 5486: +/***/ 5904: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const RetryHandler = __nccwpck_require__(4004) +const RetryHandler = __nccwpck_require__(1450) module.exports = globalOpts => { return dispatch => { @@ -10844,13 +10844,13 @@ module.exports = globalOpts => { /***/ }), -/***/ 748: +/***/ 1214: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.SPECIAL_HEADERS = exports.HEADER_STATE = exports.MINOR = exports.MAJOR = exports.CONNECTION_TOKEN_CHARS = exports.HEADER_CHARS = exports.TOKEN = exports.STRICT_TOKEN = exports.HEX = exports.URL_CHAR = exports.STRICT_URL_CHAR = exports.USERINFO_CHARS = exports.MARK = exports.ALPHANUM = exports.NUM = exports.HEX_MAP = exports.NUM_MAP = exports.ALPHA = exports.FINISH = exports.H_METHOD_MAP = exports.METHOD_MAP = exports.METHODS_RTSP = exports.METHODS_ICE = exports.METHODS_HTTP = exports.METHODS = exports.LENIENT_FLAGS = exports.FLAGS = exports.TYPE = exports.ERROR = void 0; -const utils_1 = __nccwpck_require__(4608); +const utils_1 = __nccwpck_require__(9430); // C headers var ERROR; (function (ERROR) { @@ -11128,7 +11128,7 @@ exports.SPECIAL_HEADERS = { /***/ }), -/***/ 3922: +/***/ 4916: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -11140,7 +11140,7 @@ module.exports = Buffer.from('AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f3 /***/ }), -/***/ 3742: +/***/ 7708: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -11152,7 +11152,7 @@ module.exports = Buffer.from('AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f3 /***/ }), -/***/ 4608: +/***/ 9430: /***/ ((__unused_webpack_module, exports) => { @@ -11173,13 +11173,13 @@ exports.enumToMap = enumToMap; /***/ }), -/***/ 7017: +/***/ 2527: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kClients } = __nccwpck_require__(8031) -const Agent = __nccwpck_require__(1745) +const { kClients } = __nccwpck_require__(3373) +const Agent = __nccwpck_require__(7823) const { kAgent, kMockAgentSet, @@ -11190,14 +11190,14 @@ const { kGetNetConnect, kOptions, kFactory -} = __nccwpck_require__(2305) -const MockClient = __nccwpck_require__(2361) -const MockPool = __nccwpck_require__(6480) -const { matchValue, buildMockOptions } = __nccwpck_require__(3193) -const { InvalidArgumentError, UndiciError } = __nccwpck_require__(3959) -const Dispatcher = __nccwpck_require__(3415) -const Pluralizer = __nccwpck_require__(5773) -const PendingInterceptorsFormatter = __nccwpck_require__(5738) +} = __nccwpck_require__(7351) +const MockClient = __nccwpck_require__(6899) +const MockPool = __nccwpck_require__(7226) +const { matchValue, buildMockOptions } = __nccwpck_require__(987) +const { InvalidArgumentError, UndiciError } = __nccwpck_require__(5933) +const Dispatcher = __nccwpck_require__(7029) +const Pluralizer = __nccwpck_require__(899) +const PendingInterceptorsFormatter = __nccwpck_require__(3576) class MockAgent extends Dispatcher { constructor (opts) { @@ -11340,14 +11340,14 @@ module.exports = MockAgent /***/ }), -/***/ 2361: +/***/ 6899: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { promisify } = __nccwpck_require__(7975) -const Client = __nccwpck_require__(1313) -const { buildMockDispatch } = __nccwpck_require__(3193) +const Client = __nccwpck_require__(979) +const { buildMockDispatch } = __nccwpck_require__(987) const { kDispatches, kMockAgent, @@ -11356,10 +11356,10 @@ const { kOrigin, kOriginalDispatch, kConnected -} = __nccwpck_require__(2305) -const { MockInterceptor } = __nccwpck_require__(5843) -const Symbols = __nccwpck_require__(8031) -const { InvalidArgumentError } = __nccwpck_require__(3959) +} = __nccwpck_require__(7351) +const { MockInterceptor } = __nccwpck_require__(3237) +const Symbols = __nccwpck_require__(3373) +const { InvalidArgumentError } = __nccwpck_require__(5933) /** * MockClient provides an API that extends the Client to influence the mockDispatches. @@ -11406,12 +11406,12 @@ module.exports = MockClient /***/ }), -/***/ 2673: +/***/ 2863: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { UndiciError } = __nccwpck_require__(3959) +const { UndiciError } = __nccwpck_require__(5933) const kMockNotMatchedError = Symbol.for('undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED') @@ -11441,12 +11441,12 @@ module.exports = { /***/ }), -/***/ 5843: +/***/ 3237: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { getResponseData, buildKey, addMockDispatch } = __nccwpck_require__(3193) +const { getResponseData, buildKey, addMockDispatch } = __nccwpck_require__(987) const { kDispatches, kDispatchKey, @@ -11454,9 +11454,9 @@ const { kDefaultTrailers, kContentLength, kMockDispatch -} = __nccwpck_require__(2305) -const { InvalidArgumentError } = __nccwpck_require__(3959) -const { buildURL } = __nccwpck_require__(9500) +} = __nccwpck_require__(7351) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const { buildURL } = __nccwpck_require__(7662) /** * Defines the scope API for an interceptor reply @@ -11655,14 +11655,14 @@ module.exports.MockScope = MockScope /***/ }), -/***/ 6480: +/***/ 7226: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { promisify } = __nccwpck_require__(7975) -const Pool = __nccwpck_require__(5928) -const { buildMockDispatch } = __nccwpck_require__(3193) +const Pool = __nccwpck_require__(9610) +const { buildMockDispatch } = __nccwpck_require__(987) const { kDispatches, kMockAgent, @@ -11671,10 +11671,10 @@ const { kOrigin, kOriginalDispatch, kConnected -} = __nccwpck_require__(2305) -const { MockInterceptor } = __nccwpck_require__(5843) -const Symbols = __nccwpck_require__(8031) -const { InvalidArgumentError } = __nccwpck_require__(3959) +} = __nccwpck_require__(7351) +const { MockInterceptor } = __nccwpck_require__(3237) +const Symbols = __nccwpck_require__(3373) +const { InvalidArgumentError } = __nccwpck_require__(5933) /** * MockPool provides an API that extends the Pool to influence the mockDispatches. @@ -11721,7 +11721,7 @@ module.exports = MockPool /***/ }), -/***/ 2305: +/***/ 7351: /***/ ((module) => { @@ -11751,20 +11751,20 @@ module.exports = { /***/ }), -/***/ 3193: +/***/ 987: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { MockNotMatchedError } = __nccwpck_require__(2673) +const { MockNotMatchedError } = __nccwpck_require__(2863) const { kDispatches, kMockAgent, kOriginalDispatch, kOrigin, kGetNetConnect -} = __nccwpck_require__(2305) -const { buildURL } = __nccwpck_require__(9500) +} = __nccwpck_require__(7351) +const { buildURL } = __nccwpck_require__(7662) const { STATUS_CODES } = __nccwpck_require__(7067) const { types: { @@ -12125,7 +12125,7 @@ module.exports = { /***/ }), -/***/ 5738: +/***/ 3576: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -12175,7 +12175,7 @@ module.exports = class PendingInterceptorsFormatter { /***/ }), -/***/ 5773: +/***/ 899: /***/ ((module) => { @@ -12211,7 +12211,7 @@ module.exports = class Pluralizer { /***/ }), -/***/ 4591: +/***/ 7797: /***/ ((module) => { @@ -12641,20 +12641,20 @@ module.exports = { /***/ }), -/***/ 9918: +/***/ 3416: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kConstruct } = __nccwpck_require__(8329) -const { urlEquals, getFieldValues } = __nccwpck_require__(3762) -const { kEnumerableProperty, isDisturbed } = __nccwpck_require__(9500) -const { webidl } = __nccwpck_require__(4625) -const { Response, cloneResponse, fromInnerResponse } = __nccwpck_require__(7287) -const { Request, fromInnerRequest } = __nccwpck_require__(9683) -const { kState } = __nccwpck_require__(3175) -const { fetching } = __nccwpck_require__(4202) -const { urlIsHttpHttpsScheme, createDeferredPromise, readAllBytes } = __nccwpck_require__(1204) +const { kConstruct } = __nccwpck_require__(7747) +const { urlEquals, getFieldValues } = __nccwpck_require__(9272) +const { kEnumerableProperty, isDisturbed } = __nccwpck_require__(7662) +const { webidl } = __nccwpck_require__(9735) +const { Response, cloneResponse, fromInnerResponse } = __nccwpck_require__(2873) +const { Request, fromInnerRequest } = __nccwpck_require__(557) +const { kState } = __nccwpck_require__(1) +const { fetching } = __nccwpck_require__(224) +const { urlIsHttpHttpsScheme, createDeferredPromise, readAllBytes } = __nccwpck_require__(7722) const assert = __nccwpck_require__(4589) /** @@ -13507,15 +13507,15 @@ module.exports = { /***/ }), -/***/ 6577: +/***/ 4215: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kConstruct } = __nccwpck_require__(8329) -const { Cache } = __nccwpck_require__(9918) -const { webidl } = __nccwpck_require__(4625) -const { kEnumerableProperty } = __nccwpck_require__(9500) +const { kConstruct } = __nccwpck_require__(7747) +const { Cache } = __nccwpck_require__(3416) +const { webidl } = __nccwpck_require__(9735) +const { kEnumerableProperty } = __nccwpck_require__(7662) class CacheStorage { /** @@ -13666,26 +13666,26 @@ module.exports = { /***/ }), -/***/ 8329: +/***/ 7747: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { module.exports = { - kConstruct: (__nccwpck_require__(8031).kConstruct) + kConstruct: (__nccwpck_require__(3373).kConstruct) } /***/ }), -/***/ 3762: +/***/ 9272: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { URLSerializer } = __nccwpck_require__(192) -const { isValidHeaderName } = __nccwpck_require__(1204) +const { URLSerializer } = __nccwpck_require__(8394) +const { isValidHeaderName } = __nccwpck_require__(7722) /** * @see https://url.spec.whatwg.org/#concept-url-equals @@ -13730,7 +13730,7 @@ module.exports = { /***/ }), -/***/ 5848: +/***/ 1574: /***/ ((module) => { @@ -13749,15 +13749,15 @@ module.exports = { /***/ }), -/***/ 7889: +/***/ 8659: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { parseSetCookie } = __nccwpck_require__(1814) -const { stringify } = __nccwpck_require__(185) -const { webidl } = __nccwpck_require__(4625) -const { Headers } = __nccwpck_require__(3408) +const { parseSetCookie } = __nccwpck_require__(3804) +const { stringify } = __nccwpck_require__(3643) +const { webidl } = __nccwpck_require__(9735) +const { Headers } = __nccwpck_require__(8146) /** * @typedef {Object} Cookie @@ -13940,14 +13940,14 @@ module.exports = { /***/ }), -/***/ 1814: +/***/ 3804: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { maxNameValuePairSize, maxAttributeValueSize } = __nccwpck_require__(5848) -const { isCTLExcludingHtab } = __nccwpck_require__(185) -const { collectASequenceOfCodePointsFast } = __nccwpck_require__(192) +const { maxNameValuePairSize, maxAttributeValueSize } = __nccwpck_require__(1574) +const { isCTLExcludingHtab } = __nccwpck_require__(3643) +const { collectASequenceOfCodePointsFast } = __nccwpck_require__(8394) const assert = __nccwpck_require__(4589) /** @@ -14264,7 +14264,7 @@ module.exports = { /***/ }), -/***/ 185: +/***/ 3643: /***/ ((module) => { @@ -14553,12 +14553,12 @@ module.exports = { /***/ }), -/***/ 8819: +/***/ 6521: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Transform } = __nccwpck_require__(7075) -const { isASCIINumber, isValidLastEventId } = __nccwpck_require__(3943) +const { isASCIINumber, isValidLastEventId } = __nccwpck_require__(6293) /** * @type {number[]} BOM @@ -14958,22 +14958,22 @@ module.exports = { /***/ }), -/***/ 7042: +/***/ 3276: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { pipeline } = __nccwpck_require__(7075) -const { fetching } = __nccwpck_require__(4202) -const { makeRequest } = __nccwpck_require__(9683) -const { webidl } = __nccwpck_require__(4625) -const { EventSourceStream } = __nccwpck_require__(8819) -const { parseMIMEType } = __nccwpck_require__(192) -const { createFastMessageEvent } = __nccwpck_require__(6760) -const { isNetworkError } = __nccwpck_require__(7287) -const { delay } = __nccwpck_require__(3943) -const { kEnumerableProperty } = __nccwpck_require__(9500) -const { environmentSettingsObject } = __nccwpck_require__(1204) +const { fetching } = __nccwpck_require__(224) +const { makeRequest } = __nccwpck_require__(557) +const { webidl } = __nccwpck_require__(9735) +const { EventSourceStream } = __nccwpck_require__(6521) +const { parseMIMEType } = __nccwpck_require__(8394) +const { createFastMessageEvent } = __nccwpck_require__(7690) +const { isNetworkError } = __nccwpck_require__(2873) +const { delay } = __nccwpck_require__(6293) +const { kEnumerableProperty } = __nccwpck_require__(7662) +const { environmentSettingsObject } = __nccwpck_require__(7722) let experimentalWarned = false @@ -15445,7 +15445,7 @@ module.exports = { /***/ }), -/***/ 3943: +/***/ 6293: /***/ ((module) => { @@ -15489,12 +15489,12 @@ module.exports = { /***/ }), -/***/ 1448: +/***/ 4086: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const util = __nccwpck_require__(9500) +const util = __nccwpck_require__(7662) const { ReadableStreamFrom, isBlobLike, @@ -15504,16 +15504,16 @@ const { fullyReadBody, extractMimeType, utf8DecodeBytes -} = __nccwpck_require__(1204) -const { FormData } = __nccwpck_require__(3818) -const { kState } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) +} = __nccwpck_require__(7722) +const { FormData } = __nccwpck_require__(8932) +const { kState } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) const { Blob } = __nccwpck_require__(4573) const assert = __nccwpck_require__(4589) const { isErrored, isDisturbed } = __nccwpck_require__(7075) const { isArrayBuffer } = __nccwpck_require__(3429) -const { serializeAMimeType } = __nccwpck_require__(192) -const { multipartFormDataParser } = __nccwpck_require__(8016) +const { serializeAMimeType } = __nccwpck_require__(8394) +const { multipartFormDataParser } = __nccwpck_require__(6442) let random try { @@ -16025,7 +16025,7 @@ module.exports = { /***/ }), -/***/ 4219: +/***/ 1797: /***/ ((module) => { @@ -16156,7 +16156,7 @@ module.exports = { /***/ }), -/***/ 192: +/***/ 8394: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -16907,12 +16907,12 @@ module.exports = { /***/ }), -/***/ 8905: +/***/ 379: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kConnected, kSize } = __nccwpck_require__(8031) +const { kConnected, kSize } = __nccwpck_require__(3373) class CompatWeakRef { constructor (value) { @@ -16960,14 +16960,14 @@ module.exports = function () { /***/ }), -/***/ 3486: +/***/ 2944: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Blob, File } = __nccwpck_require__(4573) -const { kState } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) +const { kState } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) // TODO(@KhafraDev): remove class FileLike { @@ -17093,16 +17093,16 @@ module.exports = { FileLike, isFileLike } /***/ }), -/***/ 8016: +/***/ 6442: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { isUSVString, bufferToLowerCasedHeaderName } = __nccwpck_require__(9500) -const { utf8DecodeBytes } = __nccwpck_require__(1204) -const { HTTP_TOKEN_CODEPOINTS, isomorphicDecode } = __nccwpck_require__(192) -const { isFileLike } = __nccwpck_require__(3486) -const { makeEntry } = __nccwpck_require__(3818) +const { isUSVString, bufferToLowerCasedHeaderName } = __nccwpck_require__(7662) +const { utf8DecodeBytes } = __nccwpck_require__(7722) +const { HTTP_TOKEN_CODEPOINTS, isomorphicDecode } = __nccwpck_require__(8394) +const { isFileLike } = __nccwpck_require__(2944) +const { makeEntry } = __nccwpck_require__(8932) const assert = __nccwpck_require__(4589) const { File: NodeFile } = __nccwpck_require__(4573) @@ -17574,16 +17574,16 @@ module.exports = { /***/ }), -/***/ 3818: +/***/ 8932: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { isBlobLike, iteratorMixin } = __nccwpck_require__(1204) -const { kState } = __nccwpck_require__(3175) -const { kEnumerableProperty } = __nccwpck_require__(9500) -const { FileLike, isFileLike } = __nccwpck_require__(3486) -const { webidl } = __nccwpck_require__(4625) +const { isBlobLike, iteratorMixin } = __nccwpck_require__(7722) +const { kState } = __nccwpck_require__(1) +const { kEnumerableProperty } = __nccwpck_require__(7662) +const { FileLike, isFileLike } = __nccwpck_require__(2944) +const { webidl } = __nccwpck_require__(9735) const { File: NativeFile } = __nccwpck_require__(4573) const nodeUtil = __nccwpck_require__(7975) @@ -17833,7 +17833,7 @@ module.exports = { FormData, makeEntry } /***/ }), -/***/ 5311: +/***/ 777: /***/ ((module) => { @@ -17880,21 +17880,21 @@ module.exports = { /***/ }), -/***/ 3408: +/***/ 8146: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // https://github.com/Ethan-Arrowood/undici-fetch -const { kConstruct } = __nccwpck_require__(8031) -const { kEnumerableProperty } = __nccwpck_require__(9500) +const { kConstruct } = __nccwpck_require__(3373) +const { kEnumerableProperty } = __nccwpck_require__(7662) const { iteratorMixin, isValidHeaderName, isValidHeaderValue -} = __nccwpck_require__(1204) -const { webidl } = __nccwpck_require__(4625) +} = __nccwpck_require__(7722) +const { webidl } = __nccwpck_require__(9735) const assert = __nccwpck_require__(4589) const util = __nccwpck_require__(7975) @@ -18574,7 +18574,7 @@ module.exports = { /***/ }), -/***/ 4202: +/***/ 224: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // https://github.com/Ethan-Arrowood/undici-fetch @@ -18587,9 +18587,9 @@ const { filterResponse, makeResponse, fromInnerResponse -} = __nccwpck_require__(7287) -const { HeadersList } = __nccwpck_require__(3408) -const { Request, cloneRequest } = __nccwpck_require__(9683) +} = __nccwpck_require__(2873) +const { HeadersList } = __nccwpck_require__(8146) +const { Request, cloneRequest } = __nccwpck_require__(557) const zlib = __nccwpck_require__(8522) const { bytesMatch, @@ -18625,23 +18625,23 @@ const { buildContentRange, createInflate, extractMimeType -} = __nccwpck_require__(1204) -const { kState, kDispatcher } = __nccwpck_require__(3175) +} = __nccwpck_require__(7722) +const { kState, kDispatcher } = __nccwpck_require__(1) const assert = __nccwpck_require__(4589) -const { safelyExtractBody, extractBody } = __nccwpck_require__(1448) +const { safelyExtractBody, extractBody } = __nccwpck_require__(4086) const { redirectStatusSet, nullBodyStatus, safeMethodsSet, requestBodyHeader, subresourceSet -} = __nccwpck_require__(4219) +} = __nccwpck_require__(1797) const EE = __nccwpck_require__(8474) const { Readable, pipeline, finished } = __nccwpck_require__(7075) -const { addAbortListener, isErrored, isReadable, bufferToLowerCasedHeaderName } = __nccwpck_require__(9500) -const { dataURLProcessor, serializeAMimeType, minimizeSupportedMimeType } = __nccwpck_require__(192) -const { getGlobalDispatcher } = __nccwpck_require__(1481) -const { webidl } = __nccwpck_require__(4625) +const { addAbortListener, isErrored, isReadable, bufferToLowerCasedHeaderName } = __nccwpck_require__(7662) +const { dataURLProcessor, serializeAMimeType, minimizeSupportedMimeType } = __nccwpck_require__(8394) +const { getGlobalDispatcher } = __nccwpck_require__(8707) +const { webidl } = __nccwpck_require__(9735) const { STATUS_CODES } = __nccwpck_require__(7067) const GET_OR_HEAD = ['GET', 'HEAD'] @@ -20853,23 +20853,23 @@ module.exports = { /***/ }), -/***/ 9683: +/***/ 557: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /* globals AbortController */ -const { extractBody, mixinBody, cloneBody, bodyUnusable } = __nccwpck_require__(1448) -const { Headers, fill: fillHeaders, HeadersList, setHeadersGuard, getHeadersGuard, setHeadersList, getHeadersList } = __nccwpck_require__(3408) -const { FinalizationRegistry } = __nccwpck_require__(8905)() -const util = __nccwpck_require__(9500) +const { extractBody, mixinBody, cloneBody, bodyUnusable } = __nccwpck_require__(4086) +const { Headers, fill: fillHeaders, HeadersList, setHeadersGuard, getHeadersGuard, setHeadersList, getHeadersList } = __nccwpck_require__(8146) +const { FinalizationRegistry } = __nccwpck_require__(379)() +const util = __nccwpck_require__(7662) const nodeUtil = __nccwpck_require__(7975) const { isValidHTTPToken, sameOrigin, environmentSettingsObject -} = __nccwpck_require__(1204) +} = __nccwpck_require__(7722) const { forbiddenMethodsSet, corsSafeListedMethodsSet, @@ -20879,12 +20879,12 @@ const { requestCredentials, requestCache, requestDuplex -} = __nccwpck_require__(4219) +} = __nccwpck_require__(1797) const { kEnumerableProperty, normalizedMethodRecordsBase, normalizedMethodRecords } = util -const { kHeaders, kSignal, kState, kDispatcher } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) -const { URLSerializer } = __nccwpck_require__(192) -const { kConstruct } = __nccwpck_require__(8031) +const { kHeaders, kSignal, kState, kDispatcher } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) +const { URLSerializer } = __nccwpck_require__(8394) +const { kConstruct } = __nccwpck_require__(3373) const assert = __nccwpck_require__(4589) const { getMaxListeners, setMaxListeners, getEventListeners, defaultMaxListeners } = __nccwpck_require__(8474) @@ -21897,14 +21897,14 @@ module.exports = { Request, makeRequest, fromInnerRequest, cloneRequest } /***/ }), -/***/ 7287: +/***/ 2873: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { Headers, HeadersList, fill, getHeadersGuard, setHeadersGuard, setHeadersList } = __nccwpck_require__(3408) -const { extractBody, cloneBody, mixinBody, hasFinalizationRegistry, streamRegistry, bodyUnusable } = __nccwpck_require__(1448) -const util = __nccwpck_require__(9500) +const { Headers, HeadersList, fill, getHeadersGuard, setHeadersGuard, setHeadersList } = __nccwpck_require__(8146) +const { extractBody, cloneBody, mixinBody, hasFinalizationRegistry, streamRegistry, bodyUnusable } = __nccwpck_require__(4086) +const util = __nccwpck_require__(7662) const nodeUtil = __nccwpck_require__(7975) const { kEnumerableProperty } = util const { @@ -21916,16 +21916,16 @@ const { isErrorLike, isomorphicEncode, environmentSettingsObject: relevantRealm -} = __nccwpck_require__(1204) +} = __nccwpck_require__(7722) const { redirectStatusSet, nullBodyStatus -} = __nccwpck_require__(4219) -const { kState, kHeaders } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) -const { FormData } = __nccwpck_require__(3818) -const { URLSerializer } = __nccwpck_require__(192) -const { kConstruct } = __nccwpck_require__(8031) +} = __nccwpck_require__(1797) +const { kState, kHeaders } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) +const { FormData } = __nccwpck_require__(8932) +const { URLSerializer } = __nccwpck_require__(8394) +const { kConstruct } = __nccwpck_require__(3373) const assert = __nccwpck_require__(4589) const { types } = __nccwpck_require__(7975) @@ -22514,7 +22514,7 @@ module.exports = { /***/ }), -/***/ 3175: +/***/ 1: /***/ ((module) => { @@ -22530,21 +22530,21 @@ module.exports = { /***/ }), -/***/ 1204: +/***/ 7722: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Transform } = __nccwpck_require__(7075) const zlib = __nccwpck_require__(8522) -const { redirectStatusSet, referrerPolicySet: referrerPolicyTokens, badPortsSet } = __nccwpck_require__(4219) -const { getGlobalOrigin } = __nccwpck_require__(5311) -const { collectASequenceOfCodePoints, collectAnHTTPQuotedString, removeChars, parseMIMEType } = __nccwpck_require__(192) +const { redirectStatusSet, referrerPolicySet: referrerPolicyTokens, badPortsSet } = __nccwpck_require__(1797) +const { getGlobalOrigin } = __nccwpck_require__(777) +const { collectASequenceOfCodePoints, collectAnHTTPQuotedString, removeChars, parseMIMEType } = __nccwpck_require__(8394) const { performance } = __nccwpck_require__(643) -const { isBlobLike, ReadableStreamFrom, isValidHTTPToken, normalizedMethodRecordsBase } = __nccwpck_require__(9500) +const { isBlobLike, ReadableStreamFrom, isValidHTTPToken, normalizedMethodRecordsBase } = __nccwpck_require__(7662) const assert = __nccwpck_require__(4589) const { isUint8Array } = __nccwpck_require__(3429) -const { webidl } = __nccwpck_require__(4625) +const { webidl } = __nccwpck_require__(9735) let supportedHashes = [] @@ -24169,14 +24169,14 @@ module.exports = { /***/ }), -/***/ 4625: +/***/ 9735: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { types, inspect } = __nccwpck_require__(7975) const { markAsUncloneable } = __nccwpck_require__(5919) -const { toUSVString } = __nccwpck_require__(9500) +const { toUSVString } = __nccwpck_require__(7662) /** @type {import('../../../types/webidl').Webidl} */ const webidl = {} @@ -24871,7 +24871,7 @@ module.exports = { /***/ }), -/***/ 1691: +/***/ 2705: /***/ ((module) => { @@ -25168,7 +25168,7 @@ module.exports = { /***/ }), -/***/ 6575: +/***/ 7669: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -25177,16 +25177,16 @@ const { staticPropertyDescriptors, readOperation, fireAProgressEvent -} = __nccwpck_require__(6014) +} = __nccwpck_require__(8912) const { kState, kError, kResult, kEvents, kAborted -} = __nccwpck_require__(8445) -const { webidl } = __nccwpck_require__(4625) -const { kEnumerableProperty } = __nccwpck_require__(9500) +} = __nccwpck_require__(6107) +const { webidl } = __nccwpck_require__(9735) +const { kEnumerableProperty } = __nccwpck_require__(7662) class FileReader extends EventTarget { constructor () { @@ -25519,12 +25519,12 @@ module.exports = { /***/ }), -/***/ 9393: +/***/ 1367: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { webidl } = __nccwpck_require__(4625) +const { webidl } = __nccwpck_require__(9735) const kState = Symbol('ProgressEvent state') @@ -25604,7 +25604,7 @@ module.exports = { /***/ }), -/***/ 8445: +/***/ 6107: /***/ ((module) => { @@ -25621,7 +25621,7 @@ module.exports = { /***/ }), -/***/ 6014: +/***/ 8912: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -25632,12 +25632,12 @@ const { kResult, kAborted, kLastProgressEventFired -} = __nccwpck_require__(8445) -const { ProgressEvent } = __nccwpck_require__(9393) -const { getEncoding } = __nccwpck_require__(1691) -const { serializeAMimeType, parseMIMEType } = __nccwpck_require__(192) +} = __nccwpck_require__(6107) +const { ProgressEvent } = __nccwpck_require__(1367) +const { getEncoding } = __nccwpck_require__(2705) +const { serializeAMimeType, parseMIMEType } = __nccwpck_require__(8394) const { types } = __nccwpck_require__(7975) -const { StringDecoder } = __nccwpck_require__(5574) +const { StringDecoder } = __nccwpck_require__(3193) const { btoa } = __nccwpck_require__(4573) /** @type {PropertyDescriptor} */ @@ -26019,27 +26019,27 @@ module.exports = { /***/ }), -/***/ 773: +/***/ 9431: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { uid, states, sentCloseFrameState, emptyBuffer, opcodes } = __nccwpck_require__(7119) +const { uid, states, sentCloseFrameState, emptyBuffer, opcodes } = __nccwpck_require__(5214) const { kReadyState, kSentClose, kByteParser, kReceivedClose, kResponse -} = __nccwpck_require__(4911) -const { fireEvent, failWebsocketConnection, isClosing, isClosed, isEstablished, parseExtensions } = __nccwpck_require__(965) -const { channels } = __nccwpck_require__(5458) -const { CloseEvent } = __nccwpck_require__(6760) -const { makeRequest } = __nccwpck_require__(9683) -const { fetching } = __nccwpck_require__(4202) -const { Headers, getHeadersList } = __nccwpck_require__(3408) -const { getDecodeSplit } = __nccwpck_require__(1204) -const { WebsocketFrameSend } = __nccwpck_require__(9676) +} = __nccwpck_require__(1150) +const { fireEvent, failWebsocketConnection, isClosing, isClosed, isEstablished, parseExtensions } = __nccwpck_require__(3155) +const { channels } = __nccwpck_require__(8560) +const { CloseEvent } = __nccwpck_require__(7690) +const { makeRequest } = __nccwpck_require__(557) +const { fetching } = __nccwpck_require__(224) +const { Headers, getHeadersList } = __nccwpck_require__(8146) +const { getDecodeSplit } = __nccwpck_require__(7722) +const { WebsocketFrameSend } = __nccwpck_require__(2438) /** @type {import('crypto')} */ let crypto @@ -26397,7 +26397,7 @@ module.exports = { /***/ }), -/***/ 7119: +/***/ 5214: /***/ ((module) => { @@ -26470,14 +26470,14 @@ module.exports = { /***/ }), -/***/ 6760: +/***/ 7690: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { webidl } = __nccwpck_require__(4625) -const { kEnumerableProperty } = __nccwpck_require__(9500) -const { kConstruct } = __nccwpck_require__(8031) +const { webidl } = __nccwpck_require__(9735) +const { kEnumerableProperty } = __nccwpck_require__(7662) +const { kConstruct } = __nccwpck_require__(3373) const { MessagePort } = __nccwpck_require__(5919) /** @@ -26806,12 +26806,12 @@ module.exports = { /***/ }), -/***/ 9676: +/***/ 2438: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { maxUnsigned16Bit } = __nccwpck_require__(7119) +const { maxUnsigned16Bit } = __nccwpck_require__(5214) const BUFFER_SIZE = 16386 @@ -26909,14 +26909,14 @@ module.exports = { /***/ }), -/***/ 4841: +/***/ 4739: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { createInflateRaw, Z_DEFAULT_WINDOWBITS } = __nccwpck_require__(8522) -const { isValidClientWindowBits } = __nccwpck_require__(965) -const { MessageSizeExceededError } = __nccwpck_require__(3959) +const { isValidClientWindowBits } = __nccwpck_require__(3155) +const { MessageSizeExceededError } = __nccwpck_require__(5933) const tail = Buffer.from([0x00, 0x00, 0xff, 0xff]) const kBuffer = Symbol('kBuffer') @@ -27034,16 +27034,16 @@ module.exports = { PerMessageDeflate } /***/ }), -/***/ 1872: +/***/ 2502: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Writable } = __nccwpck_require__(7075) const assert = __nccwpck_require__(4589) -const { parserStates, opcodes, states, emptyBuffer, sentCloseFrameState } = __nccwpck_require__(7119) -const { kReadyState, kSentClose, kResponse, kReceivedClose } = __nccwpck_require__(4911) -const { channels } = __nccwpck_require__(5458) +const { parserStates, opcodes, states, emptyBuffer, sentCloseFrameState } = __nccwpck_require__(5214) +const { kReadyState, kSentClose, kResponse, kReceivedClose } = __nccwpck_require__(1150) +const { channels } = __nccwpck_require__(8560) const { isValidStatusCode, isValidOpcode, @@ -27053,10 +27053,10 @@ const { isControlFrame, isTextBinaryFrame, isContinuationFrame -} = __nccwpck_require__(965) -const { WebsocketFrameSend } = __nccwpck_require__(9676) -const { closeWebSocketConnection } = __nccwpck_require__(773) -const { PerMessageDeflate } = __nccwpck_require__(4841) +} = __nccwpck_require__(3155) +const { WebsocketFrameSend } = __nccwpck_require__(2438) +const { closeWebSocketConnection } = __nccwpck_require__(9431) +const { PerMessageDeflate } = __nccwpck_require__(4739) // This code was influenced by ws released under the MIT license. // Copyright (c) 2011 Einar Otto Stangvik @@ -27468,14 +27468,14 @@ module.exports = { /***/ }), -/***/ 504: +/***/ 7562: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { WebsocketFrameSend } = __nccwpck_require__(9676) -const { opcodes, sendHints } = __nccwpck_require__(7119) -const FixedQueue = __nccwpck_require__(5464) +const { WebsocketFrameSend } = __nccwpck_require__(2438) +const { opcodes, sendHints } = __nccwpck_require__(5214) +const FixedQueue = __nccwpck_require__(1034) /** @type {typeof Uint8Array} */ const FastBuffer = Buffer[Symbol.species] @@ -27579,7 +27579,7 @@ module.exports = { SendQueue } /***/ }), -/***/ 4911: +/***/ 1150: /***/ ((module) => { @@ -27598,16 +27598,16 @@ module.exports = { /***/ }), -/***/ 965: +/***/ 3155: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kReadyState, kController, kResponse, kBinaryType, kWebSocketURL } = __nccwpck_require__(4911) -const { states, opcodes } = __nccwpck_require__(7119) -const { ErrorEvent, createFastMessageEvent } = __nccwpck_require__(6760) +const { kReadyState, kController, kResponse, kBinaryType, kWebSocketURL } = __nccwpck_require__(1150) +const { states, opcodes } = __nccwpck_require__(5214) +const { ErrorEvent, createFastMessageEvent } = __nccwpck_require__(7690) const { isUtf8 } = __nccwpck_require__(4573) -const { collectASequenceOfCodePointsFast, removeHTTPWhitespace } = __nccwpck_require__(192) +const { collectASequenceOfCodePointsFast, removeHTTPWhitespace } = __nccwpck_require__(8394) /* globals Blob */ @@ -27927,15 +27927,15 @@ module.exports = { /***/ }), -/***/ 2522: +/***/ 7836: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { webidl } = __nccwpck_require__(4625) -const { URLSerializer } = __nccwpck_require__(192) -const { environmentSettingsObject } = __nccwpck_require__(1204) -const { staticPropertyDescriptors, states, sentCloseFrameState, sendHints } = __nccwpck_require__(7119) +const { webidl } = __nccwpck_require__(9735) +const { URLSerializer } = __nccwpck_require__(8394) +const { environmentSettingsObject } = __nccwpck_require__(7722) +const { staticPropertyDescriptors, states, sentCloseFrameState, sendHints } = __nccwpck_require__(5214) const { kWebSocketURL, kReadyState, @@ -27944,21 +27944,21 @@ const { kResponse, kSentClose, kByteParser -} = __nccwpck_require__(4911) +} = __nccwpck_require__(1150) const { isConnecting, isEstablished, isClosing, isValidSubprotocol, fireEvent -} = __nccwpck_require__(965) -const { establishWebSocketConnection, closeWebSocketConnection } = __nccwpck_require__(773) -const { ByteParser } = __nccwpck_require__(1872) -const { kEnumerableProperty, isBlobLike } = __nccwpck_require__(9500) -const { getGlobalDispatcher } = __nccwpck_require__(1481) +} = __nccwpck_require__(3155) +const { establishWebSocketConnection, closeWebSocketConnection } = __nccwpck_require__(9431) +const { ByteParser } = __nccwpck_require__(2502) +const { kEnumerableProperty, isBlobLike } = __nccwpck_require__(7662) +const { getGlobalDispatcher } = __nccwpck_require__(8707) const { types } = __nccwpck_require__(7975) -const { ErrorEvent, CloseEvent } = __nccwpck_require__(6760) -const { SendQueue } = __nccwpck_require__(504) +const { ErrorEvent, CloseEvent } = __nccwpck_require__(7690) +const { SendQueue } = __nccwpck_require__(7562) // https://websockets.spec.whatwg.org/#interface-definition class WebSocket extends EventTarget { @@ -28697,7 +28697,7 @@ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:zlib"); /***/ }), -/***/ 5574: +/***/ 3193: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("string_decoder"); @@ -28718,7 +28718,7 @@ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("util"); /***/ }), -/***/ 2852: +/***/ 5723: /***/ ((module) => { var __webpack_unused_export__; @@ -28937,7 +28937,7 @@ var __webpack_exports__ = {}; ;// CONCATENATED MODULE: external "os" const external_os_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("os"); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/utils.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/utils.js // We use any as a valid input type /* eslint-disable @typescript-eslint/no-explicit-any */ /** @@ -28973,7 +28973,7 @@ function utils_toCommandProperties(annotationProperties) { }; } //# sourceMappingURL=utils.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/command.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/command.js /** @@ -29069,7 +29069,7 @@ function escapeProperty(s) { const external_crypto_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("crypto"); ;// CONCATENATED MODULE: external "fs" const external_fs_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("fs"); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/file-command.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/file-command.js // For internal use, subject to change. // We use any as a valid input type /* eslint-disable @typescript-eslint/no-explicit-any */ @@ -29110,7 +29110,7 @@ const external_path_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.me var external_http_ = __nccwpck_require__(8611); // EXTERNAL MODULE: external "https" var external_https_ = __nccwpck_require__(5692); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/node_modules/@actions/http-client/lib/proxy.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+http-client@4.0.0/node_modules/@actions/http-client/lib/proxy.js function getProxyUrl(reqUrl) { const usingSsl = reqUrl.protocol === 'https:'; if (checkBypass(reqUrl)) { @@ -29201,11 +29201,11 @@ class DecodedURL extends URL { } } //# sourceMappingURL=proxy.js.map -// EXTERNAL MODULE: ../../node_modules/tunnel/index.js -var node_modules_tunnel = __nccwpck_require__(5070); -// EXTERNAL MODULE: ../../node_modules/undici/index.js -var undici = __nccwpck_require__(1684); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/node_modules/@actions/http-client/lib/index.js +// EXTERNAL MODULE: ../../node_modules/.pnpm/tunnel@0.0.6/node_modules/tunnel/index.js +var node_modules_tunnel = __nccwpck_require__(7285); +// EXTERNAL MODULE: ../../node_modules/.pnpm/undici@6.24.1/node_modules/undici/index.js +var undici = __nccwpck_require__(4906); +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+http-client@4.0.0/node_modules/@actions/http-client/lib/index.js /* eslint-disable @typescript-eslint/no-explicit-any */ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } @@ -29902,7 +29902,7 @@ class lib_HttpClient { } const lowercaseKeys = (obj) => Object.keys(obj).reduce((c, k) => ((c[k.toLowerCase()] = obj[k]), c), {}); //# sourceMappingURL=index.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/node_modules/@actions/http-client/lib/auth.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+http-client@4.0.0/node_modules/@actions/http-client/lib/auth.js var auth_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -29978,7 +29978,7 @@ class PersonalAccessTokenCredentialHandler { } } //# sourceMappingURL=auth.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/oidc-utils.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/oidc-utils.js var oidc_utils_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -30052,7 +30052,7 @@ class oidc_utils_OidcClient { } } //# sourceMappingURL=oidc-utils.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/summary.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/summary.js var summary_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -30333,7 +30333,7 @@ const _summary = new Summary(); const markdownSummary = (/* unused pure expression or super */ null && (_summary)); const summary = (/* unused pure expression or super */ null && (_summary)); //# sourceMappingURL=summary.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/path-utils.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/path-utils.js /** * toPosixPath converts the given path to the posix form. On Windows, \\ will be @@ -30368,14 +30368,14 @@ function toPlatformPath(pth) { } //# sourceMappingURL=path-utils.js.map // EXTERNAL MODULE: external "string_decoder" -var external_string_decoder_ = __nccwpck_require__(5574); +var external_string_decoder_ = __nccwpck_require__(3193); // EXTERNAL MODULE: external "events" var external_events_ = __nccwpck_require__(4434); ;// CONCATENATED MODULE: external "child_process" const external_child_process_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("child_process"); // EXTERNAL MODULE: external "assert" var external_assert_ = __nccwpck_require__(2613); -;// CONCATENATED MODULE: ../../node_modules/@actions/io/lib/io-util.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+io@3.0.2/node_modules/@actions/io/lib/io-util.js var io_util_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -30555,7 +30555,7 @@ function getCmdPath() { return (_a = process.env['COMSPEC']) !== null && _a !== void 0 ? _a : `cmd.exe`; } //# sourceMappingURL=io-util.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/io/lib/io.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+io@3.0.2/node_modules/@actions/io/lib/io.js var io_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -30829,7 +30829,7 @@ function io_copyFile(srcFile, destFile, force) { //# sourceMappingURL=io.js.map ;// CONCATENATED MODULE: external "timers" const external_timers_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("timers"); -;// CONCATENATED MODULE: ../../node_modules/@actions/exec/lib/toolrunner.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+exec@3.0.0/node_modules/@actions/exec/lib/toolrunner.js var toolrunner_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -31417,7 +31417,7 @@ class ExecState extends external_events_.EventEmitter { } } //# sourceMappingURL=toolrunner.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/exec/lib/exec.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+exec@3.0.0/node_modules/@actions/exec/lib/exec.js var exec_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -31497,7 +31497,7 @@ function getExecOutput(commandLine, args, options) { }); } //# sourceMappingURL=exec.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/platform.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/platform.js var platform_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -31562,7 +31562,7 @@ function getDetails() { }); } //# sourceMappingURL=platform.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/core.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/core.js var core_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -31880,7 +31880,7 @@ function getIDToken(aud) { */ //# sourceMappingURL=core.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/github/lib/context.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+github@9.1.0/node_modules/@actions/github/lib/context.js class Context { @@ -31933,9 +31933,9 @@ class Context { } } //# sourceMappingURL=context.js.map -// EXTERNAL MODULE: ../../node_modules/@actions/http-client/lib/index.js -var lib = __nccwpck_require__(9920); -;// CONCATENATED MODULE: ../../node_modules/@actions/github/lib/internal/utils.js +// EXTERNAL MODULE: ../../node_modules/.pnpm/@actions+http-client@3.0.2/node_modules/@actions/http-client/lib/index.js +var lib = __nccwpck_require__(3864); +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+github@9.1.0/node_modules/@actions/github/lib/internal/utils.js var utils_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -31988,7 +31988,7 @@ function getUserAgentWithOrchestrationId(baseUserAgent) { return baseUserAgent; } //# sourceMappingURL=utils.js.map -;// CONCATENATED MODULE: ../../node_modules/universal-user-agent/index.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/universal-user-agent@7.0.3/node_modules/universal-user-agent/index.js function getUserAgent() { if (typeof navigator === "object" && "userAgent" in navigator) { return navigator.userAgent; @@ -32003,7 +32003,7 @@ function getUserAgent() { return ""; } -;// CONCATENATED MODULE: ../../node_modules/before-after-hook/lib/register.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/before-after-hook@4.0.0/node_modules/before-after-hook/lib/register.js // @ts-check function register(state, name, method, options) { @@ -32032,7 +32032,7 @@ function register(state, name, method, options) { }); } -;// CONCATENATED MODULE: ../../node_modules/before-after-hook/lib/add.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/before-after-hook@4.0.0/node_modules/before-after-hook/lib/add.js // @ts-check function addHook(state, kind, name, hook) { @@ -32080,7 +32080,7 @@ function addHook(state, kind, name, hook) { }); } -;// CONCATENATED MODULE: ../../node_modules/before-after-hook/lib/remove.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/before-after-hook@4.0.0/node_modules/before-after-hook/lib/remove.js // @ts-check function removeHook(state, name, method) { @@ -32101,7 +32101,7 @@ function removeHook(state, name, method) { state.registry[name].splice(index, 1); } -;// CONCATENATED MODULE: ../../node_modules/before-after-hook/index.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/before-after-hook@4.0.0/node_modules/before-after-hook/index.js // @ts-check @@ -32148,7 +32148,7 @@ function Collection() { /* harmony default export */ const before_after_hook = ({ Singular, Collection }); -;// CONCATENATED MODULE: ../../node_modules/@octokit/endpoint/dist-bundle/index.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@octokit+endpoint@11.0.3/node_modules/@octokit/endpoint/dist-bundle/index.js // pkg/dist-src/defaults.js @@ -32494,9 +32494,9 @@ function withDefaults(oldDefaults, newDefaults) { var endpoint = withDefaults(null, DEFAULTS); -// EXTERNAL MODULE: ../../node_modules/fast-content-type-parse/index.js -var fast_content_type_parse = __nccwpck_require__(2852); -;// CONCATENATED MODULE: ../../node_modules/json-with-bigint/json-with-bigint.js +// EXTERNAL MODULE: ../../node_modules/.pnpm/fast-content-type-parse@3.0.0/node_modules/fast-content-type-parse/index.js +var fast_content_type_parse = __nccwpck_require__(5723); +;// CONCATENATED MODULE: ../../node_modules/.pnpm/json-with-bigint@3.5.8/node_modules/json-with-bigint/json-with-bigint.js const intRegex = /^-?\d+$/; const noiseValue = /^-?\d+n+$/; // Noise - strings that match the custom format before being converted to it const originalStringify = JSON.stringify; @@ -32507,14 +32507,26 @@ const bigIntsStringify = /([\[:])?"(-?\d+)n"($|([\\n]|\s)*(\s|[\\n])*[,\}\]])/g; const noiseStringify = /([\[:])?("-?\d+n+)n("$|"([\\n]|\s)*(\s|[\\n])*[,\}\]])/g; -/** @typedef {(key: string, value: any, context?: { source: string }) => any} Reviver */ +/** + * @typedef {(this: any, key: string | number | undefined, value: any) => any} Replacer + * @typedef {(key: string | number | undefined, value: any, context?: { source: string }) => any} Reviver + */ /** - * Function to serialize value to a JSON string. - * Converts BigInt values to a custom format (strings with digits and "n" at the end) and then converts them to proper big integers in a JSON string. - * @param {*} value - The value to convert to a JSON string. - * @param {(Function|Array|null)} [replacer] - A function that alters the behavior of the stringification process, or an array of strings to indicate properties to exclude. - * @param {(string|number)} [space] - A string or number to specify indentation or pretty-printing. + * Converts a JavaScript value to a JSON string. + * + * Supports serialization of BigInt values using two strategies: + * 1. Custom format "123n" → "123" (universal fallback) + * 2. Native JSON.rawJSON() (Node.js 22+, fastest) when available + * + * All other values are serialized exactly like native JSON.stringify(). + * + * @param {*} value The value to convert to a JSON string. + * @param {Replacer | Array | null} [replacer] + * A function that alters the behavior of the stringification process, + * or an array of strings/numbers to indicate properties to exclude. + * @param {string | number} [space] + * A string or number to specify indentation or pretty-printing. * @returns {string} The JSON string representation. */ const JSONStringify = (value, replacer, space) => { @@ -32539,8 +32551,7 @@ const JSONStringify = (value, replacer, space) => { const convertedToCustomJSON = originalStringify( value, (key, value) => { - const isNoise = - typeof value === "string" && Boolean(value.match(noiseValue)); + const isNoise = typeof value === "string" && noiseValue.test(value); if (isNoise) return value.toString() + "n"; // Mark noise values with additional "n" to offset the deletion of one "n" during the processing @@ -32563,33 +32574,71 @@ const JSONStringify = (value, replacer, space) => { return denoisedJSON; }; +const featureCache = new Map(); + /** - * Support for JSON.parse's context.source feature detection. - * @type {boolean} + * Detects if the current JSON.parse implementation supports the context.source feature. + * + * Uses toString() fingerprinting to cache results and automatically detect runtime + * replacements of JSON.parse (polyfills, mocks, etc.). + * + * @returns {boolean} true if context.source is supported, false otherwise. */ -const isContextSourceSupported = () => - JSON.parse("1", (_, __, context) => !!context && context.source === "1"); +const isContextSourceSupported = () => { + const parseFingerprint = JSON.parse.toString(); + + if (featureCache.has(parseFingerprint)) { + return featureCache.get(parseFingerprint); + } + + try { + const result = JSON.parse( + "1", + (_, __, context) => !!context?.source && context.source === "1", + ); + featureCache.set(parseFingerprint, result); + + return result; + } catch { + featureCache.set(parseFingerprint, false); + + return false; + } +}; /** - * Convert marked big numbers to BigInt - * @type {Reviver} + * Reviver function that converts custom-format BigInt strings back to BigInt values. + * Also handles "noise" strings that accidentally match the BigInt format. + * + * @param {string | number | undefined} key The object key. + * @param {*} value The value being parsed. + * @param {object} [context] Parse context (if supported by JSON.parse). + * @param {Reviver} [userReviver] User's custom reviver function. + * @returns {any} The transformed value. */ const convertMarkedBigIntsReviver = (key, value, context, userReviver) => { const isCustomFormatBigInt = - typeof value === "string" && value.match(customFormat); + typeof value === "string" && customFormat.test(value); if (isCustomFormatBigInt) return BigInt(value.slice(0, -1)); - const isNoiseValue = typeof value === "string" && value.match(noiseValue); + const isNoiseValue = typeof value === "string" && noiseValue.test(value); if (isNoiseValue) return value.slice(0, -1); if (typeof userReviver !== "function") return value; + return userReviver(key, value, context); }; /** - * Faster (2x) and simpler function to parse JSON. - * Based on JSON.parse's context.source feature, which is not universally available now. - * Does not support the legacy custom format, used in the first version of this library. + * Fast JSON.parse implementation (~2x faster than classic fallback). + * Uses JSON.parse's context.source feature to detect integers and convert + * large numbers directly to BigInt without string manipulation. + * + * Does not support legacy custom format from v1 of this library. + * + * @param {string} text JSON string to parse. + * @param {Reviver} [reviver] Transform function to apply to each value. + * @returns {any} Parsed JavaScript value. */ const JSONParseV2 = (text, reviver) => { return JSON.parse(text, (key, value, context) => { @@ -32614,9 +32663,21 @@ const stringsOrLargeNumbers = const noiseValueWithQuotes = /^"-?\d+n+"$/; // Noise - strings that match the custom format before being converted to it /** - * Function to parse JSON. - * If JSON has number values greater than Number.MAX_SAFE_INTEGER, we convert those values to a custom format, then parse them to BigInt values. - * Other types of values are not affected and parsed as native JSON.parse() would parse them. + * Converts a JSON string into a JavaScript value. + * + * Supports parsing of large integers using two strategies: + * 1. Classic fallback: Marks large numbers with "123n" format, then converts to BigInt + * 2. Fast path (JSONParseV2): Uses context.source feature (~2x faster) when available + * + * All other JSON values are parsed exactly like native JSON.parse(). + * + * @param {string} text A valid JSON string. + * @param {Reviver} [reviver] + * A function that transforms the results. This function is called for each member + * of the object. If a member contains nested objects, the nested objects are + * transformed before the parent object is. + * @returns {any} The parsed JavaScript value. + * @throws {SyntaxError} If text is not valid JSON. */ const JSONParse = (text, reviver) => { if (!text) return originalParse(text, reviver); @@ -32628,7 +32689,7 @@ const JSONParse = (text, reviver) => { stringsOrLargeNumbers, (text, digits, fractional, exponential) => { const isString = text[0] === '"'; - const isNoise = isString && Boolean(text.match(noiseValueWithQuotes)); + const isNoise = isString && noiseValueWithQuotes.test(text); if (isNoise) return text.substring(0, text.length - 1) + 'n"'; // Mark noise values with additional "n" to offset the deletion of one "n" during the processing @@ -32652,7 +32713,7 @@ const JSONParse = (text, reviver) => { -;// CONCATENATED MODULE: ../../node_modules/@octokit/request-error/dist-src/index.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@octokit+request-error@7.1.0/node_modules/@octokit/request-error/dist-src/index.js class RequestError extends Error { name; /** @@ -32693,7 +32754,7 @@ class RequestError extends Error { } -;// CONCATENATED MODULE: ../../node_modules/@octokit/request/dist-bundle/index.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@octokit+request@10.0.8/node_modules/@octokit/request/dist-bundle/index.js // pkg/dist-src/index.js @@ -32896,7 +32957,7 @@ var request = dist_bundle_withDefaults(endpoint, defaults_default); /* v8 ignore next -- @preserve */ /* v8 ignore else -- @preserve */ -;// CONCATENATED MODULE: ../../node_modules/@octokit/graphql/dist-bundle/index.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@octokit+graphql@9.0.3/node_modules/@octokit/graphql/dist-bundle/index.js // pkg/dist-src/index.js @@ -33023,7 +33084,7 @@ function withCustomRequest(customRequest) { } -;// CONCATENATED MODULE: ../../node_modules/@octokit/auth-token/dist-bundle/index.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@octokit+auth-token@6.0.0/node_modules/@octokit/auth-token/dist-bundle/index.js // pkg/dist-src/is-jwt.js var b64url = "(?:[a-zA-Z0-9_-]+)"; var sep = "\\."; @@ -33078,11 +33139,11 @@ var createTokenAuth = function createTokenAuth2(token) { }; -;// CONCATENATED MODULE: ../../node_modules/@octokit/core/dist-src/version.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@octokit+core@7.0.6/node_modules/@octokit/core/dist-src/version.js const version_VERSION = "7.0.6"; -;// CONCATENATED MODULE: ../../node_modules/@octokit/core/dist-src/index.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@octokit+core@7.0.6/node_modules/@octokit/core/dist-src/index.js @@ -33223,12 +33284,12 @@ class Octokit { } -;// CONCATENATED MODULE: ../../node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/version.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@octokit+plugin-rest-endpoint-methods@17.0.0_@octokit+core@7.0.6/node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/version.js const dist_src_version_VERSION = "17.0.0"; //# sourceMappingURL=version.js.map -;// CONCATENATED MODULE: ../../node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/generated/endpoints.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@octokit+plugin-rest-endpoint-methods@17.0.0_@octokit+core@7.0.6/node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/generated/endpoints.js const Endpoints = { actions: { addCustomLabelsToSelfHostedRunnerForOrg: [ @@ -35522,7 +35583,7 @@ var endpoints_default = Endpoints; //# sourceMappingURL=endpoints.js.map -;// CONCATENATED MODULE: ../../node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/endpoints-to-methods.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@octokit+plugin-rest-endpoint-methods@17.0.0_@octokit+core@7.0.6/node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/endpoints-to-methods.js const endpointMethodsMap = /* @__PURE__ */ new Map(); for (const [scope, endpoints] of Object.entries(endpoints_default)) { @@ -35648,7 +35709,7 @@ function decorate(octokit, scope, methodName, defaults, decorations) { //# sourceMappingURL=endpoints-to-methods.js.map -;// CONCATENATED MODULE: ../../node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/index.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@octokit+plugin-rest-endpoint-methods@17.0.0_@octokit+core@7.0.6/node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/index.js function restEndpointMethods(octokit) { @@ -35669,7 +35730,7 @@ legacyRestEndpointMethods.VERSION = dist_src_version_VERSION; //# sourceMappingURL=index.js.map -;// CONCATENATED MODULE: ../../node_modules/@octokit/plugin-paginate-rest/dist-bundle/index.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@octokit+plugin-paginate-rest@14.0.0_@octokit+core@7.0.6/node_modules/@octokit/plugin-paginate-rest/dist-bundle/index.js // pkg/dist-src/version.js var plugin_paginate_rest_dist_bundle_VERSION = "0.0.0-development"; @@ -36081,7 +36142,7 @@ function paginateRest(octokit) { paginateRest.VERSION = plugin_paginate_rest_dist_bundle_VERSION; -;// CONCATENATED MODULE: ../../node_modules/@actions/github/lib/utils.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+github@9.1.0/node_modules/@actions/github/lib/utils.js // octokit + plugins @@ -36120,7 +36181,7 @@ function utils_getOctokitOptions(token, options) { return opts; } //# sourceMappingURL=utils.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/github/lib/github.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+github@9.1.0/node_modules/@actions/github/lib/github.js const github_context = new Context(); diff --git a/.github/actions/check-public-api/index.js b/.github/actions/check-public-api/index.js index 8ad2387054..0066dd9045 100644 --- a/.github/actions/check-public-api/index.js +++ b/.github/actions/check-public-api/index.js @@ -1,525 +1,7 @@ import { createRequire as __WEBPACK_EXTERNAL_createRequire } from "module"; /******/ var __webpack_modules__ = ({ -/***/ 7543: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - - - -Object.defineProperty(exports, "__esModule", ({ value: true })); - -var path = __nccwpck_require__(6928); -var fs = __nccwpck_require__(9896); -var fsp = __nccwpck_require__(1943); -var tools = __nccwpck_require__(9341); - -function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } - -var path__default = /*#__PURE__*/_interopDefault(path); -var fs__default = /*#__PURE__*/_interopDefault(fs); -var fsp__default = /*#__PURE__*/_interopDefault(fsp); - -/** - * A default ordering for monorepo tool checks. - * - * This ordering is designed to check the most typical package.json-based - * monorepo implementations first, with tools based on custom file schemas - * checked last. - */ -const DEFAULT_TOOLS = [tools.YarnTool, tools.PnpmTool, tools.LernaTool, tools.RushTool, tools.BoltTool, tools.RootTool]; -const isNoEntryError = err => !!err && typeof err === "object" && "code" in err && err.code === "ENOENT"; -class NoPkgJsonFound extends Error { - constructor(directory) { - super(`No package.json could be found upwards from directory ${directory}`); - this.directory = directory; - } -} -class NoMatchingMonorepoFound extends Error { - constructor(directory) { - super(`No monorepo matching the list of supported monorepos could be found upwards from directory ${directory}`); - this.directory = directory; - } -} - -/** - * Configuration options for `findRoot` and `findRootSync` functions. - */ - -/** - * Given a starting folder, search that folder and its parents until a supported monorepo - * is found, and return a `MonorepoRoot` object with the discovered directory and a - * corresponding monorepo `Tool` object. - * - * By default, all predefined `Tool` implementations are included in the search -- the - * caller can provide a list of desired tools to restrict the types of monorepos discovered, - * or to provide a custom tool implementation. - */ -async function findRoot(cwd, options = {}) { - let monorepoRoot; - const tools$1 = options.tools || DEFAULT_TOOLS; - await findUp(async directory => { - return Promise.all(tools$1.map(async tool => { - if (await tool.isMonorepoRoot(directory)) { - return { - tool: tool, - rootDir: directory - }; - } - })).then(x => x.find(value => value)).then(result => { - if (result) { - monorepoRoot = result; - return directory; - } - }); - }, cwd); - if (monorepoRoot) { - return monorepoRoot; - } - if (!tools$1.includes(tools.RootTool)) { - throw new NoMatchingMonorepoFound(cwd); - } - - // If there is no monorepo root, but we can find a single package json file, we will - // return a "RootTool" repo, which is the special case where we just have a root package - // with no monorepo implementation (i.e.: a normal package folder). - let rootDir = await findUp(async directory => { - try { - await fsp__default["default"].access(path__default["default"].join(directory, "package.json")); - return directory; - } catch (err) { - if (!isNoEntryError(err)) { - throw err; - } - } - }, cwd); - if (!rootDir) { - throw new NoPkgJsonFound(cwd); - } - return { - tool: tools.RootTool, - rootDir - }; -} - -/** - * A synchronous version of {@link findRoot}. - */ -function findRootSync(cwd, options = {}) { - let monorepoRoot; - const tools$1 = options.tools || DEFAULT_TOOLS; - findUpSync(directory => { - for (const tool of tools$1) { - if (tool.isMonorepoRootSync(directory)) { - monorepoRoot = { - tool: tool, - rootDir: directory - }; - return directory; - } - } - }, cwd); - if (monorepoRoot) { - return monorepoRoot; - } - if (!tools$1.includes(tools.RootTool)) { - throw new NoMatchingMonorepoFound(cwd); - } - - // If there is no monorepo root, but we can find a single package json file, we will - // return a "RootTool" repo, which is the special case where we just have a root package - // with no monorepo implementation (i.e.: a normal package folder). - const rootDir = findUpSync(directory => { - const exists = fs__default["default"].existsSync(path__default["default"].join(directory, "package.json")); - return exists ? directory : undefined; - }, cwd); - if (!rootDir) { - throw new NoPkgJsonFound(cwd); - } - return { - tool: tools.RootTool, - rootDir - }; -} -async function findUp(matcher, cwd) { - let directory = path__default["default"].resolve(cwd); - const { - root - } = path__default["default"].parse(directory); - while (directory && directory !== root) { - const filePath = await matcher(directory); - if (filePath) { - return path__default["default"].resolve(directory, filePath); - } - directory = path__default["default"].dirname(directory); - } -} -function findUpSync(matcher, cwd) { - let directory = path__default["default"].resolve(cwd); - const { - root - } = path__default["default"].parse(directory); - while (directory && directory !== root) { - const filePath = matcher(directory); - if (filePath) { - return path__default["default"].resolve(directory, filePath); - } - directory = path__default["default"].dirname(directory); - } -} - -exports.NoMatchingMonorepoFound = NoMatchingMonorepoFound; -exports.NoPkgJsonFound = NoPkgJsonFound; -exports.findRoot = findRoot; -exports.findRootSync = findRootSync; - - -/***/ }), - -/***/ 7014: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -if (process.env.NODE_ENV === "production") { - module.exports = __nccwpck_require__(1071); -} else { - module.exports = __nccwpck_require__(7543); -} - - -/***/ }), - -/***/ 1071: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - - - -Object.defineProperty(exports, "__esModule", ({ value: true })); - -var path = __nccwpck_require__(6928); -var fs = __nccwpck_require__(9896); -var fsp = __nccwpck_require__(1943); -var tools = __nccwpck_require__(9341); - -function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } - -var path__default = /*#__PURE__*/_interopDefault(path); -var fs__default = /*#__PURE__*/_interopDefault(fs); -var fsp__default = /*#__PURE__*/_interopDefault(fsp); - -/** - * A default ordering for monorepo tool checks. - * - * This ordering is designed to check the most typical package.json-based - * monorepo implementations first, with tools based on custom file schemas - * checked last. - */ -const DEFAULT_TOOLS = [tools.YarnTool, tools.PnpmTool, tools.LernaTool, tools.RushTool, tools.BoltTool, tools.RootTool]; -const isNoEntryError = err => !!err && typeof err === "object" && "code" in err && err.code === "ENOENT"; -class NoPkgJsonFound extends Error { - constructor(directory) { - super(`No package.json could be found upwards from directory ${directory}`); - this.directory = directory; - } -} -class NoMatchingMonorepoFound extends Error { - constructor(directory) { - super(`No monorepo matching the list of supported monorepos could be found upwards from directory ${directory}`); - this.directory = directory; - } -} - -/** - * Configuration options for `findRoot` and `findRootSync` functions. - */ - -/** - * Given a starting folder, search that folder and its parents until a supported monorepo - * is found, and return a `MonorepoRoot` object with the discovered directory and a - * corresponding monorepo `Tool` object. - * - * By default, all predefined `Tool` implementations are included in the search -- the - * caller can provide a list of desired tools to restrict the types of monorepos discovered, - * or to provide a custom tool implementation. - */ -async function findRoot(cwd, options = {}) { - let monorepoRoot; - const tools$1 = options.tools || DEFAULT_TOOLS; - await findUp(async directory => { - return Promise.all(tools$1.map(async tool => { - if (await tool.isMonorepoRoot(directory)) { - return { - tool: tool, - rootDir: directory - }; - } - })).then(x => x.find(value => value)).then(result => { - if (result) { - monorepoRoot = result; - return directory; - } - }); - }, cwd); - if (monorepoRoot) { - return monorepoRoot; - } - if (!tools$1.includes(tools.RootTool)) { - throw new NoMatchingMonorepoFound(cwd); - } - - // If there is no monorepo root, but we can find a single package json file, we will - // return a "RootTool" repo, which is the special case where we just have a root package - // with no monorepo implementation (i.e.: a normal package folder). - let rootDir = await findUp(async directory => { - try { - await fsp__default["default"].access(path__default["default"].join(directory, "package.json")); - return directory; - } catch (err) { - if (!isNoEntryError(err)) { - throw err; - } - } - }, cwd); - if (!rootDir) { - throw new NoPkgJsonFound(cwd); - } - return { - tool: tools.RootTool, - rootDir - }; -} - -/** - * A synchronous version of {@link findRoot}. - */ -function findRootSync(cwd, options = {}) { - let monorepoRoot; - const tools$1 = options.tools || DEFAULT_TOOLS; - findUpSync(directory => { - for (const tool of tools$1) { - if (tool.isMonorepoRootSync(directory)) { - monorepoRoot = { - tool: tool, - rootDir: directory - }; - return directory; - } - } - }, cwd); - if (monorepoRoot) { - return monorepoRoot; - } - if (!tools$1.includes(tools.RootTool)) { - throw new NoMatchingMonorepoFound(cwd); - } - - // If there is no monorepo root, but we can find a single package json file, we will - // return a "RootTool" repo, which is the special case where we just have a root package - // with no monorepo implementation (i.e.: a normal package folder). - const rootDir = findUpSync(directory => { - const exists = fs__default["default"].existsSync(path__default["default"].join(directory, "package.json")); - return exists ? directory : undefined; - }, cwd); - if (!rootDir) { - throw new NoPkgJsonFound(cwd); - } - return { - tool: tools.RootTool, - rootDir - }; -} -async function findUp(matcher, cwd) { - let directory = path__default["default"].resolve(cwd); - const { - root - } = path__default["default"].parse(directory); - while (directory && directory !== root) { - const filePath = await matcher(directory); - if (filePath) { - return path__default["default"].resolve(directory, filePath); - } - directory = path__default["default"].dirname(directory); - } -} -function findUpSync(matcher, cwd) { - let directory = path__default["default"].resolve(cwd); - const { - root - } = path__default["default"].parse(directory); - while (directory && directory !== root) { - const filePath = matcher(directory); - if (filePath) { - return path__default["default"].resolve(directory, filePath); - } - directory = path__default["default"].dirname(directory); - } -} - -exports.NoMatchingMonorepoFound = NoMatchingMonorepoFound; -exports.NoPkgJsonFound = NoPkgJsonFound; -exports.findRoot = findRoot; -exports.findRootSync = findRootSync; - - -/***/ }), - -/***/ 7959: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -var __webpack_unused_export__; - - -__webpack_unused_export__ = ({ value: true }); - -var path = __nccwpck_require__(6928); -var findRoot = __nccwpck_require__(7014); - -function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } - -var path__default = /*#__PURE__*/_interopDefault(path); - -class PackageJsonMissingNameError extends Error { - constructor(directories) { - super(`The following package.jsons are missing the "name" field:\n${directories.join("\n")}`); - this.directories = directories; - } -} - -/** - * Configuration options for `getPackages` and `getPackagesSync` functions. - */ - -/** - * Given a starting folder, search that folder and its parents until a supported monorepo - * is found, and return the collection of packages and a corresponding monorepo `Tool` - * object. - * - * By default, all predefined `Tool` implementations are included in the search -- the - * caller can provide a list of desired tools to restrict the types of monorepos discovered, - * or to provide a custom tool implementation. - */ -async function getPackages(dir, options) { - const monorepoRoot = await findRoot.findRoot(dir, options); - const packages = await monorepoRoot.tool.getPackages(monorepoRoot.rootDir); - validatePackages(packages); - return packages; -} - -/** - * A synchronous version of {@link getPackages}. - */ -function getPackagesSync(dir, options) { - const monorepoRoot = findRoot.findRootSync(dir, options); - const packages = monorepoRoot.tool.getPackagesSync(monorepoRoot.rootDir); - validatePackages(packages); - return packages; -} -function validatePackages(packages) { - const pkgJsonsMissingNameField = []; - for (const pkg of packages.packages) { - if (!pkg.packageJson.name) { - pkgJsonsMissingNameField.push(path__default["default"].join(pkg.relativeDir, "package.json")); - } - } - if (pkgJsonsMissingNameField.length > 0) { - pkgJsonsMissingNameField.sort(); - throw new PackageJsonMissingNameError(pkgJsonsMissingNameField); - } -} - -__webpack_unused_export__ = PackageJsonMissingNameError; -exports.getPackages = getPackages; -__webpack_unused_export__ = getPackagesSync; - - -/***/ }), - -/***/ 886: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -if (process.env.NODE_ENV === "production") { - module.exports = __nccwpck_require__(8095); -} else { - module.exports = __nccwpck_require__(7959); -} - - -/***/ }), - -/***/ 8095: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -var __webpack_unused_export__; - - -__webpack_unused_export__ = ({ value: true }); - -var path = __nccwpck_require__(6928); -var findRoot = __nccwpck_require__(7014); - -function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } - -var path__default = /*#__PURE__*/_interopDefault(path); - -class PackageJsonMissingNameError extends Error { - constructor(directories) { - super(`The following package.jsons are missing the "name" field:\n${directories.join("\n")}`); - this.directories = directories; - } -} - -/** - * Configuration options for `getPackages` and `getPackagesSync` functions. - */ - -/** - * Given a starting folder, search that folder and its parents until a supported monorepo - * is found, and return the collection of packages and a corresponding monorepo `Tool` - * object. - * - * By default, all predefined `Tool` implementations are included in the search -- the - * caller can provide a list of desired tools to restrict the types of monorepos discovered, - * or to provide a custom tool implementation. - */ -async function getPackages(dir, options) { - const monorepoRoot = await findRoot.findRoot(dir, options); - const packages = await monorepoRoot.tool.getPackages(monorepoRoot.rootDir); - validatePackages(packages); - return packages; -} - -/** - * A synchronous version of {@link getPackages}. - */ -function getPackagesSync(dir, options) { - const monorepoRoot = findRoot.findRootSync(dir, options); - const packages = monorepoRoot.tool.getPackagesSync(monorepoRoot.rootDir); - validatePackages(packages); - return packages; -} -function validatePackages(packages) { - const pkgJsonsMissingNameField = []; - for (const pkg of packages.packages) { - if (!pkg.packageJson.name) { - pkgJsonsMissingNameField.push(path__default["default"].join(pkg.relativeDir, "package.json")); - } - } - if (pkgJsonsMissingNameField.length > 0) { - pkgJsonsMissingNameField.sort(); - throw new PackageJsonMissingNameError(pkgJsonsMissingNameField); - } -} - -__webpack_unused_export__ = PackageJsonMissingNameError; -exports.getPackages = getPackages; -__webpack_unused_export__ = getPackagesSync; - - -/***/ }), - -/***/ 8969: +/***/ 3916: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /* @@ -558,11 +40,11 @@ module['exports'] = colors; colors.themes = {}; var util = __nccwpck_require__(9023); -var ansiStyles = colors.styles = __nccwpck_require__(7495); +var ansiStyles = colors.styles = __nccwpck_require__(7434); var defineProps = Object.defineProperties; var newLineRegex = new RegExp(/[\r\n]+/g); -colors.supportsColor = (__nccwpck_require__(2448).supportsColor); +colors.supportsColor = (__nccwpck_require__(1625).supportsColor); if (typeof colors.enabled === 'undefined') { colors.enabled = colors.supportsColor() !== false; @@ -714,15 +196,15 @@ var sequencer = function sequencer(map, str) { }; // custom formatter methods -colors.trap = __nccwpck_require__(7878); -colors.zalgo = __nccwpck_require__(7652); +colors.trap = __nccwpck_require__(1297); +colors.zalgo = __nccwpck_require__(6653); // maps colors.maps = {}; -colors.maps.america = __nccwpck_require__(9605)(colors); -colors.maps.zebra = __nccwpck_require__(8789)(colors); -colors.maps.rainbow = __nccwpck_require__(7467)(colors); -colors.maps.random = __nccwpck_require__(2689)(colors); +colors.maps.america = __nccwpck_require__(6316)(colors); +colors.maps.zebra = __nccwpck_require__(1288)(colors); +colors.maps.rainbow = __nccwpck_require__(2206)(colors); +colors.maps.random = __nccwpck_require__(3217)(colors); for (var map in colors.maps) { (function(map) { @@ -737,7 +219,7 @@ defineProps(colors, init()); /***/ }), -/***/ 7878: +/***/ 1297: /***/ ((module) => { module['exports'] = function runTheTrap(text, options) { @@ -790,7 +272,7 @@ module['exports'] = function runTheTrap(text, options) { /***/ }), -/***/ 7652: +/***/ 6653: /***/ ((module) => { // please no @@ -907,7 +389,7 @@ module['exports'] = function zalgo(text, options) { /***/ }), -/***/ 9605: +/***/ 6316: /***/ ((module) => { module['exports'] = function(colors) { @@ -924,7 +406,7 @@ module['exports'] = function(colors) { /***/ }), -/***/ 7467: +/***/ 2206: /***/ ((module) => { module['exports'] = function(colors) { @@ -943,7 +425,7 @@ module['exports'] = function(colors) { /***/ }), -/***/ 2689: +/***/ 3217: /***/ ((module) => { module['exports'] = function(colors) { @@ -961,7 +443,7 @@ module['exports'] = function(colors) { /***/ }), -/***/ 8789: +/***/ 1288: /***/ ((module) => { module['exports'] = function(colors) { @@ -973,7 +455,7 @@ module['exports'] = function(colors) { /***/ }), -/***/ 7495: +/***/ 7434: /***/ ((module) => { /* @@ -1075,7 +557,7 @@ Object.keys(codes).forEach(function(key) { /***/ }), -/***/ 6146: +/***/ 8569: /***/ ((module) => { /* @@ -1117,7 +599,7 @@ module.exports = function(flag, argv) { /***/ }), -/***/ 2448: +/***/ 1625: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /* @@ -1148,7 +630,7 @@ THE SOFTWARE. var os = __nccwpck_require__(857); -var hasFlag = __nccwpck_require__(6146); +var hasFlag = __nccwpck_require__(8569); var env = process.env; @@ -1275,7 +757,7 @@ module.exports = { /***/ }), -/***/ 6040: +/***/ 6457: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // @@ -1286,16 +768,16 @@ module.exports = { // colors.red("foo") // // -var colors = __nccwpck_require__(8969); +var colors = __nccwpck_require__(3916); module['exports'] = colors; /***/ }), -/***/ 3919: +/***/ 7766: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var enabled = __nccwpck_require__(5601); +var enabled = __nccwpck_require__(8395); /** * Creates a new Adapter. @@ -1317,10 +799,10 @@ module.exports = function create(fn) { /***/ }), -/***/ 6211: +/***/ 666: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var adapter = __nccwpck_require__(3919); +var adapter = __nccwpck_require__(7766); /** * Extracts the values from process.env. @@ -1335,7 +817,7 @@ module.exports = adapter(function processenv() { /***/ }), -/***/ 6834: +/***/ 7241: /***/ ((module) => { /** @@ -1554,7 +1036,7 @@ module.exports = function create(diagnostics) { /***/ }), -/***/ 5198: +/***/ 1155: /***/ ((module) => { /** @@ -1580,11 +1062,11 @@ module.exports = function (meta, messages) { /***/ }), -/***/ 3882: +/***/ 2872: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var colorspace = __nccwpck_require__(3386); -var kuler = __nccwpck_require__(8083); +var colorspace = __nccwpck_require__(1470); +var kuler = __nccwpck_require__(5407); /** * Prefix the messages with a colored namespace. @@ -1607,10 +1089,10 @@ module.exports = function ansiModifier(args, options) { /***/ }), -/***/ 566: +/***/ 7987: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var create = __nccwpck_require__(6834); +var create = __nccwpck_require__(7241); var tty = (__nccwpck_require__(2018).isatty)(1); /** @@ -1638,9 +1120,9 @@ var diagnostics = create(function dev(namespace, options) { // // Configure the logger for the given environment. // -diagnostics.modify(__nccwpck_require__(3882)); -diagnostics.use(__nccwpck_require__(6211)); -diagnostics.set(__nccwpck_require__(5198)); +diagnostics.modify(__nccwpck_require__(2872)); +diagnostics.use(__nccwpck_require__(666)); +diagnostics.set(__nccwpck_require__(1155)); // // Expose the diagnostics logger. @@ -1650,25 +1132,25 @@ module.exports = diagnostics; /***/ }), -/***/ 6479: +/***/ 6302: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // // Select the correct build version depending on the environment. // if (process.env.NODE_ENV === 'production') { - module.exports = __nccwpck_require__(1036); + module.exports = __nccwpck_require__(6567); } else { - module.exports = __nccwpck_require__(566); + module.exports = __nccwpck_require__(7987); } /***/ }), -/***/ 1036: +/***/ 6567: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var create = __nccwpck_require__(6834); +var create = __nccwpck_require__(7241); /** * Create a new diagnostics logger. @@ -1696,7 +1178,525 @@ module.exports = diagnostics; /***/ }), -/***/ 2792: +/***/ 9286: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { + + + +Object.defineProperty(exports, "__esModule", ({ value: true })); + +var path = __nccwpck_require__(6928); +var fs = __nccwpck_require__(9896); +var fsp = __nccwpck_require__(1943); +var tools = __nccwpck_require__(807); + +function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } + +var path__default = /*#__PURE__*/_interopDefault(path); +var fs__default = /*#__PURE__*/_interopDefault(fs); +var fsp__default = /*#__PURE__*/_interopDefault(fsp); + +/** + * A default ordering for monorepo tool checks. + * + * This ordering is designed to check the most typical package.json-based + * monorepo implementations first, with tools based on custom file schemas + * checked last. + */ +const DEFAULT_TOOLS = [tools.YarnTool, tools.PnpmTool, tools.LernaTool, tools.RushTool, tools.BoltTool, tools.RootTool]; +const isNoEntryError = err => !!err && typeof err === "object" && "code" in err && err.code === "ENOENT"; +class NoPkgJsonFound extends Error { + constructor(directory) { + super(`No package.json could be found upwards from directory ${directory}`); + this.directory = directory; + } +} +class NoMatchingMonorepoFound extends Error { + constructor(directory) { + super(`No monorepo matching the list of supported monorepos could be found upwards from directory ${directory}`); + this.directory = directory; + } +} + +/** + * Configuration options for `findRoot` and `findRootSync` functions. + */ + +/** + * Given a starting folder, search that folder and its parents until a supported monorepo + * is found, and return a `MonorepoRoot` object with the discovered directory and a + * corresponding monorepo `Tool` object. + * + * By default, all predefined `Tool` implementations are included in the search -- the + * caller can provide a list of desired tools to restrict the types of monorepos discovered, + * or to provide a custom tool implementation. + */ +async function findRoot(cwd, options = {}) { + let monorepoRoot; + const tools$1 = options.tools || DEFAULT_TOOLS; + await findUp(async directory => { + return Promise.all(tools$1.map(async tool => { + if (await tool.isMonorepoRoot(directory)) { + return { + tool: tool, + rootDir: directory + }; + } + })).then(x => x.find(value => value)).then(result => { + if (result) { + monorepoRoot = result; + return directory; + } + }); + }, cwd); + if (monorepoRoot) { + return monorepoRoot; + } + if (!tools$1.includes(tools.RootTool)) { + throw new NoMatchingMonorepoFound(cwd); + } + + // If there is no monorepo root, but we can find a single package json file, we will + // return a "RootTool" repo, which is the special case where we just have a root package + // with no monorepo implementation (i.e.: a normal package folder). + let rootDir = await findUp(async directory => { + try { + await fsp__default["default"].access(path__default["default"].join(directory, "package.json")); + return directory; + } catch (err) { + if (!isNoEntryError(err)) { + throw err; + } + } + }, cwd); + if (!rootDir) { + throw new NoPkgJsonFound(cwd); + } + return { + tool: tools.RootTool, + rootDir + }; +} + +/** + * A synchronous version of {@link findRoot}. + */ +function findRootSync(cwd, options = {}) { + let monorepoRoot; + const tools$1 = options.tools || DEFAULT_TOOLS; + findUpSync(directory => { + for (const tool of tools$1) { + if (tool.isMonorepoRootSync(directory)) { + monorepoRoot = { + tool: tool, + rootDir: directory + }; + return directory; + } + } + }, cwd); + if (monorepoRoot) { + return monorepoRoot; + } + if (!tools$1.includes(tools.RootTool)) { + throw new NoMatchingMonorepoFound(cwd); + } + + // If there is no monorepo root, but we can find a single package json file, we will + // return a "RootTool" repo, which is the special case where we just have a root package + // with no monorepo implementation (i.e.: a normal package folder). + const rootDir = findUpSync(directory => { + const exists = fs__default["default"].existsSync(path__default["default"].join(directory, "package.json")); + return exists ? directory : undefined; + }, cwd); + if (!rootDir) { + throw new NoPkgJsonFound(cwd); + } + return { + tool: tools.RootTool, + rootDir + }; +} +async function findUp(matcher, cwd) { + let directory = path__default["default"].resolve(cwd); + const { + root + } = path__default["default"].parse(directory); + while (directory && directory !== root) { + const filePath = await matcher(directory); + if (filePath) { + return path__default["default"].resolve(directory, filePath); + } + directory = path__default["default"].dirname(directory); + } +} +function findUpSync(matcher, cwd) { + let directory = path__default["default"].resolve(cwd); + const { + root + } = path__default["default"].parse(directory); + while (directory && directory !== root) { + const filePath = matcher(directory); + if (filePath) { + return path__default["default"].resolve(directory, filePath); + } + directory = path__default["default"].dirname(directory); + } +} + +exports.NoMatchingMonorepoFound = NoMatchingMonorepoFound; +exports.NoPkgJsonFound = NoPkgJsonFound; +exports.findRoot = findRoot; +exports.findRootSync = findRootSync; + + +/***/ }), + +/***/ 1307: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + + + +if (process.env.NODE_ENV === "production") { + module.exports = __nccwpck_require__(7544); +} else { + module.exports = __nccwpck_require__(9286); +} + + +/***/ }), + +/***/ 7544: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { + + + +Object.defineProperty(exports, "__esModule", ({ value: true })); + +var path = __nccwpck_require__(6928); +var fs = __nccwpck_require__(9896); +var fsp = __nccwpck_require__(1943); +var tools = __nccwpck_require__(807); + +function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } + +var path__default = /*#__PURE__*/_interopDefault(path); +var fs__default = /*#__PURE__*/_interopDefault(fs); +var fsp__default = /*#__PURE__*/_interopDefault(fsp); + +/** + * A default ordering for monorepo tool checks. + * + * This ordering is designed to check the most typical package.json-based + * monorepo implementations first, with tools based on custom file schemas + * checked last. + */ +const DEFAULT_TOOLS = [tools.YarnTool, tools.PnpmTool, tools.LernaTool, tools.RushTool, tools.BoltTool, tools.RootTool]; +const isNoEntryError = err => !!err && typeof err === "object" && "code" in err && err.code === "ENOENT"; +class NoPkgJsonFound extends Error { + constructor(directory) { + super(`No package.json could be found upwards from directory ${directory}`); + this.directory = directory; + } +} +class NoMatchingMonorepoFound extends Error { + constructor(directory) { + super(`No monorepo matching the list of supported monorepos could be found upwards from directory ${directory}`); + this.directory = directory; + } +} + +/** + * Configuration options for `findRoot` and `findRootSync` functions. + */ + +/** + * Given a starting folder, search that folder and its parents until a supported monorepo + * is found, and return a `MonorepoRoot` object with the discovered directory and a + * corresponding monorepo `Tool` object. + * + * By default, all predefined `Tool` implementations are included in the search -- the + * caller can provide a list of desired tools to restrict the types of monorepos discovered, + * or to provide a custom tool implementation. + */ +async function findRoot(cwd, options = {}) { + let monorepoRoot; + const tools$1 = options.tools || DEFAULT_TOOLS; + await findUp(async directory => { + return Promise.all(tools$1.map(async tool => { + if (await tool.isMonorepoRoot(directory)) { + return { + tool: tool, + rootDir: directory + }; + } + })).then(x => x.find(value => value)).then(result => { + if (result) { + monorepoRoot = result; + return directory; + } + }); + }, cwd); + if (monorepoRoot) { + return monorepoRoot; + } + if (!tools$1.includes(tools.RootTool)) { + throw new NoMatchingMonorepoFound(cwd); + } + + // If there is no monorepo root, but we can find a single package json file, we will + // return a "RootTool" repo, which is the special case where we just have a root package + // with no monorepo implementation (i.e.: a normal package folder). + let rootDir = await findUp(async directory => { + try { + await fsp__default["default"].access(path__default["default"].join(directory, "package.json")); + return directory; + } catch (err) { + if (!isNoEntryError(err)) { + throw err; + } + } + }, cwd); + if (!rootDir) { + throw new NoPkgJsonFound(cwd); + } + return { + tool: tools.RootTool, + rootDir + }; +} + +/** + * A synchronous version of {@link findRoot}. + */ +function findRootSync(cwd, options = {}) { + let monorepoRoot; + const tools$1 = options.tools || DEFAULT_TOOLS; + findUpSync(directory => { + for (const tool of tools$1) { + if (tool.isMonorepoRootSync(directory)) { + monorepoRoot = { + tool: tool, + rootDir: directory + }; + return directory; + } + } + }, cwd); + if (monorepoRoot) { + return monorepoRoot; + } + if (!tools$1.includes(tools.RootTool)) { + throw new NoMatchingMonorepoFound(cwd); + } + + // If there is no monorepo root, but we can find a single package json file, we will + // return a "RootTool" repo, which is the special case where we just have a root package + // with no monorepo implementation (i.e.: a normal package folder). + const rootDir = findUpSync(directory => { + const exists = fs__default["default"].existsSync(path__default["default"].join(directory, "package.json")); + return exists ? directory : undefined; + }, cwd); + if (!rootDir) { + throw new NoPkgJsonFound(cwd); + } + return { + tool: tools.RootTool, + rootDir + }; +} +async function findUp(matcher, cwd) { + let directory = path__default["default"].resolve(cwd); + const { + root + } = path__default["default"].parse(directory); + while (directory && directory !== root) { + const filePath = await matcher(directory); + if (filePath) { + return path__default["default"].resolve(directory, filePath); + } + directory = path__default["default"].dirname(directory); + } +} +function findUpSync(matcher, cwd) { + let directory = path__default["default"].resolve(cwd); + const { + root + } = path__default["default"].parse(directory); + while (directory && directory !== root) { + const filePath = matcher(directory); + if (filePath) { + return path__default["default"].resolve(directory, filePath); + } + directory = path__default["default"].dirname(directory); + } +} + +exports.NoMatchingMonorepoFound = NoMatchingMonorepoFound; +exports.NoPkgJsonFound = NoPkgJsonFound; +exports.findRoot = findRoot; +exports.findRootSync = findRootSync; + + +/***/ }), + +/***/ 9425: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { + +var __webpack_unused_export__; + + +__webpack_unused_export__ = ({ value: true }); + +var path = __nccwpck_require__(6928); +var findRoot = __nccwpck_require__(1307); + +function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } + +var path__default = /*#__PURE__*/_interopDefault(path); + +class PackageJsonMissingNameError extends Error { + constructor(directories) { + super(`The following package.jsons are missing the "name" field:\n${directories.join("\n")}`); + this.directories = directories; + } +} + +/** + * Configuration options for `getPackages` and `getPackagesSync` functions. + */ + +/** + * Given a starting folder, search that folder and its parents until a supported monorepo + * is found, and return the collection of packages and a corresponding monorepo `Tool` + * object. + * + * By default, all predefined `Tool` implementations are included in the search -- the + * caller can provide a list of desired tools to restrict the types of monorepos discovered, + * or to provide a custom tool implementation. + */ +async function getPackages(dir, options) { + const monorepoRoot = await findRoot.findRoot(dir, options); + const packages = await monorepoRoot.tool.getPackages(monorepoRoot.rootDir); + validatePackages(packages); + return packages; +} + +/** + * A synchronous version of {@link getPackages}. + */ +function getPackagesSync(dir, options) { + const monorepoRoot = findRoot.findRootSync(dir, options); + const packages = monorepoRoot.tool.getPackagesSync(monorepoRoot.rootDir); + validatePackages(packages); + return packages; +} +function validatePackages(packages) { + const pkgJsonsMissingNameField = []; + for (const pkg of packages.packages) { + if (!pkg.packageJson.name) { + pkgJsonsMissingNameField.push(path__default["default"].join(pkg.relativeDir, "package.json")); + } + } + if (pkgJsonsMissingNameField.length > 0) { + pkgJsonsMissingNameField.sort(); + throw new PackageJsonMissingNameError(pkgJsonsMissingNameField); + } +} + +__webpack_unused_export__ = PackageJsonMissingNameError; +exports.getPackages = getPackages; +__webpack_unused_export__ = getPackagesSync; + + +/***/ }), + +/***/ 4344: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + + + +if (process.env.NODE_ENV === "production") { + module.exports = __nccwpck_require__(2313); +} else { + module.exports = __nccwpck_require__(9425); +} + + +/***/ }), + +/***/ 2313: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { + +var __webpack_unused_export__; + + +__webpack_unused_export__ = ({ value: true }); + +var path = __nccwpck_require__(6928); +var findRoot = __nccwpck_require__(1307); + +function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } + +var path__default = /*#__PURE__*/_interopDefault(path); + +class PackageJsonMissingNameError extends Error { + constructor(directories) { + super(`The following package.jsons are missing the "name" field:\n${directories.join("\n")}`); + this.directories = directories; + } +} + +/** + * Configuration options for `getPackages` and `getPackagesSync` functions. + */ + +/** + * Given a starting folder, search that folder and its parents until a supported monorepo + * is found, and return the collection of packages and a corresponding monorepo `Tool` + * object. + * + * By default, all predefined `Tool` implementations are included in the search -- the + * caller can provide a list of desired tools to restrict the types of monorepos discovered, + * or to provide a custom tool implementation. + */ +async function getPackages(dir, options) { + const monorepoRoot = await findRoot.findRoot(dir, options); + const packages = await monorepoRoot.tool.getPackages(monorepoRoot.rootDir); + validatePackages(packages); + return packages; +} + +/** + * A synchronous version of {@link getPackages}. + */ +function getPackagesSync(dir, options) { + const monorepoRoot = findRoot.findRootSync(dir, options); + const packages = monorepoRoot.tool.getPackagesSync(monorepoRoot.rootDir); + validatePackages(packages); + return packages; +} +function validatePackages(packages) { + const pkgJsonsMissingNameField = []; + for (const pkg of packages.packages) { + if (!pkg.packageJson.name) { + pkgJsonsMissingNameField.push(path__default["default"].join(pkg.relativeDir, "package.json")); + } + } + if (pkgJsonsMissingNameField.length > 0) { + pkgJsonsMissingNameField.sort(); + throw new PackageJsonMissingNameError(pkgJsonsMissingNameField); + } +} + +__webpack_unused_export__ = PackageJsonMissingNameError; +exports.getPackages = getPackages; +__webpack_unused_export__ = getPackagesSync; + + +/***/ }), + +/***/ 229: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -1705,10 +1705,10 @@ Object.defineProperty(exports, "__esModule", ({ value: true })); var path = __nccwpck_require__(6928); var fsp = __nccwpck_require__(1943); -var glob = __nccwpck_require__(484); +var glob = __nccwpck_require__(4838); var fs = __nccwpck_require__(9896); -var yaml = __nccwpck_require__(677); -var jju = __nccwpck_require__(1871); +var yaml = __nccwpck_require__(5309); +var jju = __nccwpck_require__(9656); function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } @@ -2298,21 +2298,21 @@ exports.YarnTool = YarnTool; /***/ }), -/***/ 9341: +/***/ 807: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { if (process.env.NODE_ENV === "production") { - module.exports = __nccwpck_require__(4962); + module.exports = __nccwpck_require__(4452); } else { - module.exports = __nccwpck_require__(2792); + module.exports = __nccwpck_require__(229); } /***/ }), -/***/ 4962: +/***/ 4452: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -2321,10 +2321,10 @@ Object.defineProperty(exports, "__esModule", ({ value: true })); var path = __nccwpck_require__(6928); var fsp = __nccwpck_require__(1943); -var glob = __nccwpck_require__(484); +var glob = __nccwpck_require__(4838); var fs = __nccwpck_require__(9896); -var yaml = __nccwpck_require__(677); -var jju = __nccwpck_require__(1871); +var yaml = __nccwpck_require__(5309); +var jju = __nccwpck_require__(9656); function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } @@ -2914,7 +2914,7 @@ exports.YarnTool = YarnTool; /***/ }), -/***/ 9988: +/***/ 5254: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -2940,7 +2940,7 @@ exports.createFileSystemAdapter = createFileSystemAdapter; /***/ }), -/***/ 9459: +/***/ 1121: /***/ ((__unused_webpack_module, exports) => { @@ -2964,15 +2964,15 @@ exports.IS_SUPPORT_READDIR_WITH_FILE_TYPES = IS_MATCHED_BY_MAJOR || IS_MATCHED_B /***/ }), -/***/ 4482: +/***/ 1484: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.Settings = exports.scandirSync = exports.scandir = void 0; -const async = __nccwpck_require__(9359); -const sync = __nccwpck_require__(9588); -const settings_1 = __nccwpck_require__(2321); +const async = __nccwpck_require__(9977); +const sync = __nccwpck_require__(5554); +const settings_1 = __nccwpck_require__(595); exports.Settings = settings_1.default; function scandir(path, optionsOrSettingsOrCallback, callback) { if (typeof optionsOrSettingsOrCallback === 'function') { @@ -2997,17 +2997,17 @@ function getSettings(settingsOrOptions = {}) { /***/ }), -/***/ 9359: +/***/ 9977: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.readdir = exports.readdirWithFileTypes = exports.read = void 0; -const fsStat = __nccwpck_require__(794); -const rpl = __nccwpck_require__(347); -const constants_1 = __nccwpck_require__(9459); -const utils = __nccwpck_require__(6556); -const common = __nccwpck_require__(7254); +const fsStat = __nccwpck_require__(1309); +const rpl = __nccwpck_require__(7906); +const constants_1 = __nccwpck_require__(1121); +const utils = __nccwpck_require__(2046); +const common = __nccwpck_require__(9392); function read(directory, settings, callback) { if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) { readdirWithFileTypes(directory, settings, callback); @@ -3108,7 +3108,7 @@ function callSuccessCallback(callback, result) { /***/ }), -/***/ 7254: +/***/ 9392: /***/ ((__unused_webpack_module, exports) => { @@ -3128,16 +3128,16 @@ exports.joinPathSegments = joinPathSegments; /***/ }), -/***/ 9588: +/***/ 5554: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.readdir = exports.readdirWithFileTypes = exports.read = void 0; -const fsStat = __nccwpck_require__(794); -const constants_1 = __nccwpck_require__(9459); -const utils = __nccwpck_require__(6556); -const common = __nccwpck_require__(7254); +const fsStat = __nccwpck_require__(1309); +const constants_1 = __nccwpck_require__(1121); +const utils = __nccwpck_require__(2046); +const common = __nccwpck_require__(9392); function read(directory, settings) { if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) { return readdirWithFileTypes(directory, settings); @@ -3189,14 +3189,14 @@ exports.readdir = readdir; /***/ }), -/***/ 2321: +/***/ 595: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); const path = __nccwpck_require__(6928); -const fsStat = __nccwpck_require__(794); -const fs = __nccwpck_require__(9988); +const fsStat = __nccwpck_require__(1309); +const fs = __nccwpck_require__(5254); class Settings { constructor(_options = {}) { this._options = _options; @@ -3220,7 +3220,7 @@ exports["default"] = Settings; /***/ }), -/***/ 2789: +/***/ 2535: /***/ ((__unused_webpack_module, exports) => { @@ -3246,19 +3246,19 @@ exports.createDirentFromStats = createDirentFromStats; /***/ }), -/***/ 6556: +/***/ 2046: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.fs = void 0; -const fs = __nccwpck_require__(2789); +const fs = __nccwpck_require__(2535); exports.fs = fs; /***/ }), -/***/ 4076: +/***/ 5375: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -3282,15 +3282,15 @@ exports.createFileSystemAdapter = createFileSystemAdapter; /***/ }), -/***/ 794: +/***/ 1309: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.statSync = exports.stat = exports.Settings = void 0; -const async = __nccwpck_require__(6103); -const sync = __nccwpck_require__(652); -const settings_1 = __nccwpck_require__(5897); +const async = __nccwpck_require__(9100); +const sync = __nccwpck_require__(4421); +const settings_1 = __nccwpck_require__(8448); exports.Settings = settings_1.default; function stat(path, optionsOrSettingsOrCallback, callback) { if (typeof optionsOrSettingsOrCallback === 'function') { @@ -3315,7 +3315,7 @@ function getSettings(settingsOrOptions = {}) { /***/ }), -/***/ 6103: +/***/ 9100: /***/ ((__unused_webpack_module, exports) => { @@ -3358,7 +3358,7 @@ function callSuccessCallback(callback, result) { /***/ }), -/***/ 652: +/***/ 4421: /***/ ((__unused_webpack_module, exports) => { @@ -3388,12 +3388,12 @@ exports.read = read; /***/ }), -/***/ 5897: +/***/ 8448: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const fs = __nccwpck_require__(4076); +const fs = __nccwpck_require__(5375); class Settings { constructor(_options = {}) { this._options = _options; @@ -3411,16 +3411,16 @@ exports["default"] = Settings; /***/ }), -/***/ 3989: +/***/ 8734: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.Settings = exports.walkStream = exports.walkSync = exports.walk = void 0; -const async_1 = __nccwpck_require__(1316); -const stream_1 = __nccwpck_require__(390); -const sync_1 = __nccwpck_require__(7405); -const settings_1 = __nccwpck_require__(4520); +const async_1 = __nccwpck_require__(6200); +const stream_1 = __nccwpck_require__(2); +const sync_1 = __nccwpck_require__(6345); +const settings_1 = __nccwpck_require__(4668); exports.Settings = settings_1.default; function walk(directory, optionsOrSettingsOrCallback, callback) { if (typeof optionsOrSettingsOrCallback === 'function') { @@ -3452,12 +3452,12 @@ function getSettings(settingsOrOptions = {}) { /***/ }), -/***/ 1316: +/***/ 6200: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const async_1 = __nccwpck_require__(9134); +const async_1 = __nccwpck_require__(8445); class AsyncProvider { constructor(_root, _settings) { this._root = _root; @@ -3489,13 +3489,13 @@ function callSuccessCallback(callback, entries) { /***/ }), -/***/ 390: +/***/ 2: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); const stream_1 = __nccwpck_require__(2203); -const async_1 = __nccwpck_require__(9134); +const async_1 = __nccwpck_require__(8445); class StreamProvider { constructor(_root, _settings) { this._root = _root; @@ -3530,12 +3530,12 @@ exports["default"] = StreamProvider; /***/ }), -/***/ 7405: +/***/ 6345: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const sync_1 = __nccwpck_require__(3339); +const sync_1 = __nccwpck_require__(127); class SyncProvider { constructor(_root, _settings) { this._root = _root; @@ -3551,16 +3551,16 @@ exports["default"] = SyncProvider; /***/ }), -/***/ 9134: +/***/ 8445: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); const events_1 = __nccwpck_require__(4434); -const fsScandir = __nccwpck_require__(4482); -const fastq = __nccwpck_require__(4898); -const common = __nccwpck_require__(757); -const reader_1 = __nccwpck_require__(4739); +const fsScandir = __nccwpck_require__(1484); +const fastq = __nccwpck_require__(885); +const common = __nccwpck_require__(5305); +const reader_1 = __nccwpck_require__(2983); class AsyncReader extends reader_1.default { constructor(_root, _settings) { super(_root, _settings); @@ -3655,7 +3655,7 @@ exports["default"] = AsyncReader; /***/ }), -/***/ 757: +/***/ 5305: /***/ ((__unused_webpack_module, exports) => { @@ -3693,12 +3693,12 @@ exports.joinPathSegments = joinPathSegments; /***/ }), -/***/ 4739: +/***/ 2983: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const common = __nccwpck_require__(757); +const common = __nccwpck_require__(5305); class Reader { constructor(_root, _settings) { this._root = _root; @@ -3711,14 +3711,14 @@ exports["default"] = Reader; /***/ }), -/***/ 3339: +/***/ 127: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const fsScandir = __nccwpck_require__(4482); -const common = __nccwpck_require__(757); -const reader_1 = __nccwpck_require__(4739); +const fsScandir = __nccwpck_require__(1484); +const common = __nccwpck_require__(5305); +const reader_1 = __nccwpck_require__(2983); class SyncReader extends reader_1.default { constructor() { super(...arguments); @@ -3777,13 +3777,13 @@ exports["default"] = SyncReader; /***/ }), -/***/ 4520: +/***/ 4668: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); const path = __nccwpck_require__(6928); -const fsScandir = __nccwpck_require__(4482); +const fsScandir = __nccwpck_require__(1484); class Settings { constructor(_options = {}) { this._options = _options; @@ -3810,7 +3810,7 @@ exports["default"] = Settings; /***/ }), -/***/ 3386: +/***/ 1470: /***/ ((module) => { @@ -5888,7 +5888,7 @@ module.exports = colorspace; /***/ }), -/***/ 184: +/***/ 9672: /***/ ((module, exports, __nccwpck_require__) => { @@ -5898,15 +5898,15 @@ Object.defineProperty(exports, "__esModule", ({ })); exports["default"] = asyncify; -var _initialParams = __nccwpck_require__(8790); +var _initialParams = __nccwpck_require__(2262); var _initialParams2 = _interopRequireDefault(_initialParams); -var _setImmediate = __nccwpck_require__(7775); +var _setImmediate = __nccwpck_require__(7247); var _setImmediate2 = _interopRequireDefault(_setImmediate); -var _wrapAsync = __nccwpck_require__(48); +var _wrapAsync = __nccwpck_require__(8608); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } @@ -6012,7 +6012,7 @@ module.exports = exports.default; /***/ }), -/***/ 7582: +/***/ 3998: /***/ ((module, exports, __nccwpck_require__) => { @@ -6021,31 +6021,31 @@ Object.defineProperty(exports, "__esModule", ({ value: true })); -var _isArrayLike = __nccwpck_require__(6674); +var _isArrayLike = __nccwpck_require__(738); var _isArrayLike2 = _interopRequireDefault(_isArrayLike); -var _breakLoop = __nccwpck_require__(1493); +var _breakLoop = __nccwpck_require__(2149); var _breakLoop2 = _interopRequireDefault(_breakLoop); -var _eachOfLimit = __nccwpck_require__(4531); +var _eachOfLimit = __nccwpck_require__(6163); var _eachOfLimit2 = _interopRequireDefault(_eachOfLimit); -var _once = __nccwpck_require__(6511); +var _once = __nccwpck_require__(2127); var _once2 = _interopRequireDefault(_once); -var _onlyOnce = __nccwpck_require__(7817); +var _onlyOnce = __nccwpck_require__(25); var _onlyOnce2 = _interopRequireDefault(_onlyOnce); -var _wrapAsync = __nccwpck_require__(48); +var _wrapAsync = __nccwpck_require__(8608); var _wrapAsync2 = _interopRequireDefault(_wrapAsync); -var _awaitify = __nccwpck_require__(4506); +var _awaitify = __nccwpck_require__(9770); var _awaitify2 = _interopRequireDefault(_awaitify); @@ -6203,7 +6203,7 @@ module.exports = exports.default; /***/ }), -/***/ 4531: +/***/ 6163: /***/ ((module, exports, __nccwpck_require__) => { @@ -6212,15 +6212,15 @@ Object.defineProperty(exports, "__esModule", ({ value: true })); -var _eachOfLimit2 = __nccwpck_require__(5083); +var _eachOfLimit2 = __nccwpck_require__(1611); var _eachOfLimit3 = _interopRequireDefault(_eachOfLimit2); -var _wrapAsync = __nccwpck_require__(48); +var _wrapAsync = __nccwpck_require__(8608); var _wrapAsync2 = _interopRequireDefault(_wrapAsync); -var _awaitify = __nccwpck_require__(4506); +var _awaitify = __nccwpck_require__(9770); var _awaitify2 = _interopRequireDefault(_awaitify); @@ -6256,7 +6256,7 @@ module.exports = exports.default; /***/ }), -/***/ 7031: +/***/ 3223: /***/ ((module, exports, __nccwpck_require__) => { @@ -6265,11 +6265,11 @@ Object.defineProperty(exports, "__esModule", ({ value: true })); -var _eachOfLimit = __nccwpck_require__(4531); +var _eachOfLimit = __nccwpck_require__(6163); var _eachOfLimit2 = _interopRequireDefault(_eachOfLimit); -var _awaitify = __nccwpck_require__(4506); +var _awaitify = __nccwpck_require__(9770); var _awaitify2 = _interopRequireDefault(_awaitify); @@ -6301,7 +6301,7 @@ module.exports = exports.default; /***/ }), -/***/ 7422: +/***/ 3342: /***/ ((module, exports, __nccwpck_require__) => { @@ -6310,19 +6310,19 @@ Object.defineProperty(exports, "__esModule", ({ value: true })); -var _eachOf = __nccwpck_require__(7582); +var _eachOf = __nccwpck_require__(3998); var _eachOf2 = _interopRequireDefault(_eachOf); -var _withoutIndex = __nccwpck_require__(3830); +var _withoutIndex = __nccwpck_require__(2982); var _withoutIndex2 = _interopRequireDefault(_withoutIndex); -var _wrapAsync = __nccwpck_require__(48); +var _wrapAsync = __nccwpck_require__(8608); var _wrapAsync2 = _interopRequireDefault(_wrapAsync); -var _awaitify = __nccwpck_require__(4506); +var _awaitify = __nccwpck_require__(9770); var _awaitify2 = _interopRequireDefault(_awaitify); @@ -6436,7 +6436,7 @@ module.exports = exports.default; /***/ }), -/***/ 8729: +/***/ 2985: /***/ ((module, exports, __nccwpck_require__) => { @@ -6446,7 +6446,7 @@ Object.defineProperty(exports, "__esModule", ({ })); exports["default"] = asyncEachOfLimit; -var _breakLoop = __nccwpck_require__(1493); +var _breakLoop = __nccwpck_require__(2149); var _breakLoop2 = _interopRequireDefault(_breakLoop); @@ -6517,7 +6517,7 @@ module.exports = exports.default; /***/ }), -/***/ 4506: +/***/ 9770: /***/ ((module, exports) => { @@ -6551,7 +6551,7 @@ module.exports = exports.default; /***/ }), -/***/ 1493: +/***/ 2149: /***/ ((module, exports) => { @@ -6567,7 +6567,7 @@ module.exports = exports.default; /***/ }), -/***/ 5083: +/***/ 1611: /***/ ((module, exports, __nccwpck_require__) => { @@ -6576,25 +6576,25 @@ Object.defineProperty(exports, "__esModule", ({ value: true })); -var _once = __nccwpck_require__(6511); +var _once = __nccwpck_require__(2127); var _once2 = _interopRequireDefault(_once); -var _iterator = __nccwpck_require__(1760); +var _iterator = __nccwpck_require__(4128); var _iterator2 = _interopRequireDefault(_iterator); -var _onlyOnce = __nccwpck_require__(7817); +var _onlyOnce = __nccwpck_require__(25); var _onlyOnce2 = _interopRequireDefault(_onlyOnce); -var _wrapAsync = __nccwpck_require__(48); +var _wrapAsync = __nccwpck_require__(8608); -var _asyncEachOfLimit = __nccwpck_require__(8729); +var _asyncEachOfLimit = __nccwpck_require__(2985); var _asyncEachOfLimit2 = _interopRequireDefault(_asyncEachOfLimit); -var _breakLoop = __nccwpck_require__(1493); +var _breakLoop = __nccwpck_require__(2149); var _breakLoop2 = _interopRequireDefault(_breakLoop); @@ -6663,7 +6663,7 @@ module.exports = exports.default; /***/ }), -/***/ 2738: +/***/ 2242: /***/ ((module, exports) => { @@ -6680,7 +6680,7 @@ module.exports = exports.default; /***/ }), -/***/ 8790: +/***/ 2262: /***/ ((module, exports) => { @@ -6700,7 +6700,7 @@ module.exports = exports.default; /***/ }), -/***/ 6674: +/***/ 738: /***/ ((module, exports) => { @@ -6716,7 +6716,7 @@ module.exports = exports.default; /***/ }), -/***/ 1760: +/***/ 4128: /***/ ((module, exports, __nccwpck_require__) => { @@ -6726,11 +6726,11 @@ Object.defineProperty(exports, "__esModule", ({ })); exports["default"] = createIterator; -var _isArrayLike = __nccwpck_require__(6674); +var _isArrayLike = __nccwpck_require__(738); var _isArrayLike2 = _interopRequireDefault(_isArrayLike); -var _getIterator = __nccwpck_require__(2738); +var _getIterator = __nccwpck_require__(2242); var _getIterator2 = _interopRequireDefault(_getIterator); @@ -6779,7 +6779,7 @@ module.exports = exports.default; /***/ }), -/***/ 6511: +/***/ 2127: /***/ ((module, exports) => { @@ -6802,7 +6802,7 @@ module.exports = exports.default; /***/ }), -/***/ 7817: +/***/ 25: /***/ ((module, exports) => { @@ -6823,7 +6823,7 @@ module.exports = exports.default; /***/ }), -/***/ 729: +/***/ 9129: /***/ ((module, exports, __nccwpck_require__) => { @@ -6832,15 +6832,15 @@ Object.defineProperty(exports, "__esModule", ({ value: true })); -var _isArrayLike = __nccwpck_require__(6674); +var _isArrayLike = __nccwpck_require__(738); var _isArrayLike2 = _interopRequireDefault(_isArrayLike); -var _wrapAsync = __nccwpck_require__(48); +var _wrapAsync = __nccwpck_require__(8608); var _wrapAsync2 = _interopRequireDefault(_wrapAsync); -var _awaitify = __nccwpck_require__(4506); +var _awaitify = __nccwpck_require__(9770); var _awaitify2 = _interopRequireDefault(_awaitify); @@ -6863,7 +6863,7 @@ module.exports = exports.default; /***/ }), -/***/ 7775: +/***/ 7247: /***/ ((__unused_webpack_module, exports) => { @@ -6903,7 +6903,7 @@ exports["default"] = wrap(_defer); /***/ }), -/***/ 3830: +/***/ 2982: /***/ ((module, exports) => { @@ -6919,7 +6919,7 @@ module.exports = exports.default; /***/ }), -/***/ 48: +/***/ 8608: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -6929,7 +6929,7 @@ Object.defineProperty(exports, "__esModule", ({ })); exports.isAsyncIterable = exports.isAsyncGenerator = exports.isAsync = undefined; -var _asyncify = __nccwpck_require__(184); +var _asyncify = __nccwpck_require__(9672); var _asyncify2 = _interopRequireDefault(_asyncify); @@ -6959,7 +6959,7 @@ exports.isAsyncIterable = isAsyncIterable; /***/ }), -/***/ 2059: +/***/ 491: /***/ ((module, exports, __nccwpck_require__) => { @@ -6969,11 +6969,11 @@ Object.defineProperty(exports, "__esModule", ({ })); exports["default"] = series; -var _parallel2 = __nccwpck_require__(729); +var _parallel2 = __nccwpck_require__(9129); var _parallel3 = _interopRequireDefault(_parallel2); -var _eachOfSeries = __nccwpck_require__(7031); +var _eachOfSeries = __nccwpck_require__(3223); var _eachOfSeries2 = _interopRequireDefault(_eachOfSeries); @@ -7151,20 +7151,20 @@ module.exports = exports.default; /***/ }), -/***/ 1288: +/***/ 8915: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { module.exports = { - parallel : __nccwpck_require__(1053), - serial : __nccwpck_require__(2538), - serialOrdered : __nccwpck_require__(3909) + parallel : __nccwpck_require__(9612), + serial : __nccwpck_require__(1851), + serialOrdered : __nccwpck_require__(1742) }; /***/ }), -/***/ 2870: +/***/ 6941: /***/ ((module) => { // API @@ -7200,10 +7200,10 @@ function clean(key) /***/ }), -/***/ 9792: +/***/ 7563: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var defer = __nccwpck_require__(420); +var defer = __nccwpck_require__(9851); // API module.exports = async; @@ -7241,7 +7241,7 @@ function async(callback) /***/ }), -/***/ 420: +/***/ 9851: /***/ ((module) => { module.exports = defer; @@ -7274,11 +7274,11 @@ function defer(fn) /***/ }), -/***/ 3162: +/***/ 3493: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var async = __nccwpck_require__(9792) - , abort = __nccwpck_require__(2870) +var async = __nccwpck_require__(7563) + , abort = __nccwpck_require__(6941) ; // API @@ -7356,7 +7356,7 @@ function runJob(iterator, key, item, callback) /***/ }), -/***/ 1189: +/***/ 1606: /***/ ((module) => { // API @@ -7400,11 +7400,11 @@ function state(list, sortMethod) /***/ }), -/***/ 547: +/***/ 4718: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var abort = __nccwpck_require__(2870) - , async = __nccwpck_require__(9792) +var abort = __nccwpck_require__(6941) + , async = __nccwpck_require__(7563) ; // API @@ -7436,12 +7436,12 @@ function terminator(callback) /***/ }), -/***/ 1053: +/***/ 9612: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var iterate = __nccwpck_require__(3162) - , initState = __nccwpck_require__(1189) - , terminator = __nccwpck_require__(547) +var iterate = __nccwpck_require__(3493) + , initState = __nccwpck_require__(1606) + , terminator = __nccwpck_require__(4718) ; // Public API @@ -7486,10 +7486,10 @@ function parallel(list, iterator, callback) /***/ }), -/***/ 2538: +/***/ 1851: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var serialOrdered = __nccwpck_require__(3909); +var serialOrdered = __nccwpck_require__(1742); // Public API module.exports = serial; @@ -7510,12 +7510,12 @@ function serial(list, iterator, callback) /***/ }), -/***/ 3909: +/***/ 1742: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var iterate = __nccwpck_require__(3162) - , initState = __nccwpck_require__(1189) - , terminator = __nccwpck_require__(547) +var iterate = __nccwpck_require__(3493) + , initState = __nccwpck_require__(1606) + , terminator = __nccwpck_require__(4718) ; // Public API @@ -7592,15 +7592,15 @@ function descending(a, b) /***/ }), -/***/ 7120: +/***/ 8671: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const stringify = __nccwpck_require__(641); -const compile = __nccwpck_require__(6453); -const expand = __nccwpck_require__(6374); -const parse = __nccwpck_require__(5583); +const stringify = __nccwpck_require__(3062); +const compile = __nccwpck_require__(4898); +const expand = __nccwpck_require__(5331); +const parse = __nccwpck_require__(168); /** * Expand the given pattern or create a regex-compatible string. @@ -7769,13 +7769,13 @@ module.exports = braces; /***/ }), -/***/ 6453: +/***/ 4898: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const fill = __nccwpck_require__(9073); -const utils = __nccwpck_require__(837); +const fill = __nccwpck_require__(9730); +const utils = __nccwpck_require__(2474); const compile = (ast, options = {}) => { const walk = (node, parent = {}) => { @@ -7836,7 +7836,7 @@ module.exports = compile; /***/ }), -/***/ 7201: +/***/ 1778: /***/ ((module) => { @@ -7900,14 +7900,14 @@ module.exports = { /***/ }), -/***/ 6374: +/***/ 5331: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const fill = __nccwpck_require__(9073); -const stringify = __nccwpck_require__(641); -const utils = __nccwpck_require__(837); +const fill = __nccwpck_require__(9730); +const stringify = __nccwpck_require__(3062); +const utils = __nccwpck_require__(2474); const append = (queue = '', stash = '', enclose = false) => { const result = []; @@ -8020,12 +8020,12 @@ module.exports = expand; /***/ }), -/***/ 5583: +/***/ 168: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const stringify = __nccwpck_require__(641); +const stringify = __nccwpck_require__(3062); /** * Constants @@ -8047,7 +8047,7 @@ const { CHAR_SINGLE_QUOTE, /* ' */ CHAR_NO_BREAK_SPACE, CHAR_ZERO_WIDTH_NOBREAK_SPACE -} = __nccwpck_require__(7201); +} = __nccwpck_require__(1778); /** * parse @@ -8358,12 +8358,12 @@ module.exports = parse; /***/ }), -/***/ 641: +/***/ 3062: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const utils = __nccwpck_require__(837); +const utils = __nccwpck_require__(2474); module.exports = (ast, options = {}) => { const stringify = (node, parent = {}) => { @@ -8397,7 +8397,7 @@ module.exports = (ast, options = {}) => { /***/ }), -/***/ 837: +/***/ 2474: /***/ ((__unused_webpack_module, exports) => { @@ -8526,16 +8526,16 @@ exports.flatten = (...args) => { /***/ }), -/***/ 2019: +/***/ 1648: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var bind = __nccwpck_require__(5112); +var bind = __nccwpck_require__(178); -var $apply = __nccwpck_require__(7605); -var $call = __nccwpck_require__(6409); -var $reflectApply = __nccwpck_require__(2926); +var $apply = __nccwpck_require__(4834); +var $call = __nccwpck_require__(8772); +var $reflectApply = __nccwpck_require__(9095); /** @type {import('./actualApply')} */ module.exports = $reflectApply || bind.call($call, $apply); @@ -8543,7 +8543,7 @@ module.exports = $reflectApply || bind.call($call, $apply); /***/ }), -/***/ 7605: +/***/ 4834: /***/ ((module) => { @@ -8554,7 +8554,7 @@ module.exports = Function.prototype.apply; /***/ }), -/***/ 6409: +/***/ 8772: /***/ ((module) => { @@ -8565,16 +8565,16 @@ module.exports = Function.prototype.call; /***/ }), -/***/ 5037: +/***/ 2462: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var bind = __nccwpck_require__(5112); -var $TypeError = __nccwpck_require__(1254); +var bind = __nccwpck_require__(178); +var $TypeError = __nccwpck_require__(4785); -var $call = __nccwpck_require__(6409); -var $actualApply = __nccwpck_require__(2019); +var $call = __nccwpck_require__(8772); +var $actualApply = __nccwpck_require__(1648); /** @type {(args: [Function, thisArg?: unknown, ...args: unknown[]]) => Function} TODO FIXME, find a way to use import('.') */ module.exports = function callBindBasic(args) { @@ -8587,7 +8587,7 @@ module.exports = function callBindBasic(args) { /***/ }), -/***/ 2926: +/***/ 9095: /***/ ((module) => { @@ -8598,12 +8598,12 @@ module.exports = typeof Reflect !== 'undefined' && Reflect && Reflect.apply; /***/ }), -/***/ 3178: +/***/ 7814: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { var util = __nccwpck_require__(9023); var Stream = (__nccwpck_require__(2203).Stream); -var DelayedStream = __nccwpck_require__(2978); +var DelayedStream = __nccwpck_require__(3369); module.exports = CombinedStream; function CombinedStream() { @@ -8813,7 +8813,7 @@ CombinedStream.prototype._emitError = function(err) { /***/ }), -/***/ 9802: +/***/ 471: /***/ ((module, exports, __nccwpck_require__) => { /* eslint-env browser */ @@ -9073,7 +9073,7 @@ function localstorage() { } } -module.exports = __nccwpck_require__(4213)(exports); +module.exports = __nccwpck_require__(1210)(exports); const {formatters} = module.exports; @@ -9092,7 +9092,7 @@ formatters.j = function (v) { /***/ }), -/***/ 4213: +/***/ 1210: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -9108,7 +9108,7 @@ function setup(env) { createDebug.disable = disable; createDebug.enable = enable; createDebug.enabled = enabled; - createDebug.humanize = __nccwpck_require__(5900); + createDebug.humanize = __nccwpck_require__(6987); createDebug.destroy = destroy; Object.keys(env).forEach(key => { @@ -9391,7 +9391,7 @@ module.exports = setup; /***/ }), -/***/ 7674: +/***/ 6675: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /** @@ -9400,15 +9400,15 @@ module.exports = setup; */ if (typeof process === 'undefined' || process.type === 'renderer' || process.browser === true || process.__nwjs) { - module.exports = __nccwpck_require__(9802); + module.exports = __nccwpck_require__(471); } else { - module.exports = __nccwpck_require__(5040); + module.exports = __nccwpck_require__(7443); } /***/ }), -/***/ 5040: +/***/ 7443: /***/ ((module, exports, __nccwpck_require__) => { /** @@ -9442,7 +9442,7 @@ exports.colors = [6, 2, 3, 4, 5, 1]; try { // Optional dependency (as in, doesn't need to be installed, NOT like optionalDependencies in package.json) // eslint-disable-next-line import/no-extraneous-dependencies - const supportsColor = __nccwpck_require__(3662); + const supportsColor = __nccwpck_require__(6480); if (supportsColor && (supportsColor.stderr || supportsColor).level >= 2) { exports.colors = [ @@ -9650,7 +9650,7 @@ function init(debug) { } } -module.exports = __nccwpck_require__(4213)(exports); +module.exports = __nccwpck_require__(1210)(exports); const {formatters} = module.exports; @@ -9678,7 +9678,7 @@ formatters.O = function (v) { /***/ }), -/***/ 2978: +/***/ 3369: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { var Stream = (__nccwpck_require__(2203).Stream); @@ -9792,13 +9792,13 @@ DelayedStream.prototype._checkIfMaxDataSizeExceeded = function() { /***/ }), -/***/ 2225: +/***/ 3859: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var callBind = __nccwpck_require__(5037); -var gOPD = __nccwpck_require__(6822); +var callBind = __nccwpck_require__(2462); +var gOPD = __nccwpck_require__(8322); var hasProtoAccessor; try { @@ -9829,7 +9829,7 @@ module.exports = desc && typeof desc.get === 'function' /***/ }), -/***/ 5601: +/***/ 8395: /***/ ((module) => { @@ -9870,7 +9870,7 @@ module.exports = function enabled(name, variable) { /***/ }), -/***/ 4090: +/***/ 871: /***/ ((module) => { @@ -9891,7 +9891,7 @@ module.exports = $defineProperty; /***/ }), -/***/ 8060: +/***/ 1247: /***/ ((module) => { @@ -9902,7 +9902,7 @@ module.exports = EvalError; /***/ }), -/***/ 2472: +/***/ 6621: /***/ ((module) => { @@ -9913,7 +9913,7 @@ module.exports = Error; /***/ }), -/***/ 2957: +/***/ 6136: /***/ ((module) => { @@ -9924,7 +9924,7 @@ module.exports = RangeError; /***/ }), -/***/ 9157: +/***/ 252: /***/ ((module) => { @@ -9935,7 +9935,7 @@ module.exports = ReferenceError; /***/ }), -/***/ 1821: +/***/ 9546: /***/ ((module) => { @@ -9946,7 +9946,7 @@ module.exports = SyntaxError; /***/ }), -/***/ 1254: +/***/ 4785: /***/ ((module) => { @@ -9957,7 +9957,7 @@ module.exports = TypeError; /***/ }), -/***/ 662: +/***/ 1223: /***/ ((module) => { @@ -9968,7 +9968,7 @@ module.exports = URIError; /***/ }), -/***/ 931: +/***/ 8300: /***/ ((module) => { @@ -9979,18 +9979,18 @@ module.exports = Object; /***/ }), -/***/ 8328: +/***/ 8362: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var GetIntrinsic = __nccwpck_require__(978); +var GetIntrinsic = __nccwpck_require__(1893); var $defineProperty = GetIntrinsic('%Object.defineProperty%', true); -var hasToStringTag = __nccwpck_require__(6763)(); -var hasOwn = __nccwpck_require__(9776); -var $TypeError = __nccwpck_require__(1254); +var hasToStringTag = __nccwpck_require__(532)(); +var hasOwn = __nccwpck_require__(3383); +var $TypeError = __nccwpck_require__(4785); var toStringTag = hasToStringTag ? Symbol.toStringTag : null; @@ -10021,16 +10021,16 @@ module.exports = function setToStringTag(object, value) { /***/ }), -/***/ 484: +/***/ 4838: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const taskManager = __nccwpck_require__(2123); -const async_1 = __nccwpck_require__(5649); -const stream_1 = __nccwpck_require__(613); -const sync_1 = __nccwpck_require__(1850); -const settings_1 = __nccwpck_require__(4763); -const utils = __nccwpck_require__(1062); +const taskManager = __nccwpck_require__(6160); +const async_1 = __nccwpck_require__(3616); +const stream_1 = __nccwpck_require__(2410); +const sync_1 = __nccwpck_require__(3473); +const settings_1 = __nccwpck_require__(948); +const utils = __nccwpck_require__(123); async function FastGlob(source, options) { assertPatternsInput(source); const works = getWorks(source, async_1.default, options); @@ -10130,13 +10130,13 @@ module.exports = FastGlob; /***/ }), -/***/ 2123: +/***/ 6160: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.convertPatternGroupToTask = exports.convertPatternGroupsToTasks = exports.groupPatternsByBaseDirectory = exports.getNegativePatternsAsPositive = exports.getPositivePatterns = exports.convertPatternsToTasks = exports.generate = void 0; -const utils = __nccwpck_require__(1062); +const utils = __nccwpck_require__(123); function generate(input, settings) { const patterns = processPatterns(input, settings); const ignore = processPatterns(settings.ignore, settings); @@ -10247,13 +10247,13 @@ exports.convertPatternGroupToTask = convertPatternGroupToTask; /***/ }), -/***/ 5649: +/***/ 3616: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const async_1 = __nccwpck_require__(9439); -const provider_1 = __nccwpck_require__(5420); +const async_1 = __nccwpck_require__(6866); +const provider_1 = __nccwpck_require__(3815); class ProviderAsync extends provider_1.default { constructor() { super(...arguments); @@ -10277,13 +10277,13 @@ exports["default"] = ProviderAsync; /***/ }), -/***/ 6595: +/***/ 4084: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const utils = __nccwpck_require__(1062); -const partial_1 = __nccwpck_require__(2600); +const utils = __nccwpck_require__(123); +const partial_1 = __nccwpck_require__(3147); class DeepFilter { constructor(_settings, _micromatchOptions) { this._settings = _settings; @@ -10346,12 +10346,12 @@ exports["default"] = DeepFilter; /***/ }), -/***/ 4193: +/***/ 2552: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const utils = __nccwpck_require__(1062); +const utils = __nccwpck_require__(123); class EntryFilter { constructor(_settings, _micromatchOptions) { this._settings = _settings; @@ -10438,12 +10438,12 @@ exports["default"] = EntryFilter; /***/ }), -/***/ 6972: +/***/ 5042: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const utils = __nccwpck_require__(1062); +const utils = __nccwpck_require__(123); class ErrorFilter { constructor(_settings) { this._settings = _settings; @@ -10460,12 +10460,12 @@ exports["default"] = ErrorFilter; /***/ }), -/***/ 1703: +/***/ 5828: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const utils = __nccwpck_require__(1062); +const utils = __nccwpck_require__(123); class Matcher { constructor(_patterns, _settings, _micromatchOptions) { this._patterns = _patterns; @@ -10512,12 +10512,12 @@ exports["default"] = Matcher; /***/ }), -/***/ 2600: +/***/ 3147: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const matcher_1 = __nccwpck_require__(1703); +const matcher_1 = __nccwpck_require__(5828); class PartialMatcher extends matcher_1.default { match(filepath) { const parts = filepath.split('/'); @@ -10557,16 +10557,16 @@ exports["default"] = PartialMatcher; /***/ }), -/***/ 5420: +/***/ 3815: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); const path = __nccwpck_require__(6928); -const deep_1 = __nccwpck_require__(6595); -const entry_1 = __nccwpck_require__(4193); -const error_1 = __nccwpck_require__(6972); -const entry_2 = __nccwpck_require__(3826); +const deep_1 = __nccwpck_require__(4084); +const entry_1 = __nccwpck_require__(2552); +const error_1 = __nccwpck_require__(5042); +const entry_2 = __nccwpck_require__(825); class Provider { constructor(_settings) { this._settings = _settings; @@ -10612,14 +10612,14 @@ exports["default"] = Provider; /***/ }), -/***/ 613: +/***/ 2410: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); const stream_1 = __nccwpck_require__(2203); -const stream_2 = __nccwpck_require__(9491); -const provider_1 = __nccwpck_require__(5420); +const stream_2 = __nccwpck_require__(1980); +const provider_1 = __nccwpck_require__(3815); class ProviderStream extends provider_1.default { constructor() { super(...arguments); @@ -10650,13 +10650,13 @@ exports["default"] = ProviderStream; /***/ }), -/***/ 1850: +/***/ 3473: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const sync_1 = __nccwpck_require__(5908); -const provider_1 = __nccwpck_require__(5420); +const sync_1 = __nccwpck_require__(967); +const provider_1 = __nccwpck_require__(3815); class ProviderSync extends provider_1.default { constructor() { super(...arguments); @@ -10680,12 +10680,12 @@ exports["default"] = ProviderSync; /***/ }), -/***/ 3826: +/***/ 825: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const utils = __nccwpck_require__(1062); +const utils = __nccwpck_require__(123); class EntryTransformer { constructor(_settings) { this._settings = _settings; @@ -10713,14 +10713,14 @@ exports["default"] = EntryTransformer; /***/ }), -/***/ 9439: +/***/ 6866: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const fsWalk = __nccwpck_require__(3989); -const reader_1 = __nccwpck_require__(9692); -const stream_1 = __nccwpck_require__(9491); +const fsWalk = __nccwpck_require__(8734); +const reader_1 = __nccwpck_require__(6703); +const stream_1 = __nccwpck_require__(1980); class ReaderAsync extends reader_1.default { constructor() { super(...arguments); @@ -10755,14 +10755,14 @@ exports["default"] = ReaderAsync; /***/ }), -/***/ 9692: +/***/ 6703: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); const path = __nccwpck_require__(6928); -const fsStat = __nccwpck_require__(794); -const utils = __nccwpck_require__(1062); +const fsStat = __nccwpck_require__(1309); +const utils = __nccwpck_require__(123); class Reader { constructor(_settings) { this._settings = _settings; @@ -10795,15 +10795,15 @@ exports["default"] = Reader; /***/ }), -/***/ 9491: +/***/ 1980: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); const stream_1 = __nccwpck_require__(2203); -const fsStat = __nccwpck_require__(794); -const fsWalk = __nccwpck_require__(3989); -const reader_1 = __nccwpck_require__(9692); +const fsStat = __nccwpck_require__(1309); +const fsWalk = __nccwpck_require__(8734); +const reader_1 = __nccwpck_require__(6703); class ReaderStream extends reader_1.default { constructor() { super(...arguments); @@ -10857,14 +10857,14 @@ exports["default"] = ReaderStream; /***/ }), -/***/ 5908: +/***/ 967: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const fsStat = __nccwpck_require__(794); -const fsWalk = __nccwpck_require__(3989); -const reader_1 = __nccwpck_require__(9692); +const fsStat = __nccwpck_require__(1309); +const fsWalk = __nccwpck_require__(8734); +const reader_1 = __nccwpck_require__(6703); class ReaderSync extends reader_1.default { constructor() { super(...arguments); @@ -10907,7 +10907,7 @@ exports["default"] = ReaderSync; /***/ }), -/***/ 4763: +/***/ 948: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -10973,7 +10973,7 @@ exports["default"] = Settings; /***/ }), -/***/ 4811: +/***/ 3614: /***/ ((__unused_webpack_module, exports) => { @@ -11002,7 +11002,7 @@ exports.splitWhen = splitWhen; /***/ }), -/***/ 9738: +/***/ 163: /***/ ((__unused_webpack_module, exports) => { @@ -11016,7 +11016,7 @@ exports.isEnoentCodeError = isEnoentCodeError; /***/ }), -/***/ 271: +/***/ 9416: /***/ ((__unused_webpack_module, exports) => { @@ -11042,31 +11042,31 @@ exports.createDirentFromStats = createDirentFromStats; /***/ }), -/***/ 1062: +/***/ 123: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.string = exports.stream = exports.pattern = exports.path = exports.fs = exports.errno = exports.array = void 0; -const array = __nccwpck_require__(4811); +const array = __nccwpck_require__(3614); exports.array = array; -const errno = __nccwpck_require__(9738); +const errno = __nccwpck_require__(163); exports.errno = errno; -const fs = __nccwpck_require__(271); +const fs = __nccwpck_require__(9416); exports.fs = fs; -const path = __nccwpck_require__(9519); +const path = __nccwpck_require__(8692); exports.path = path; -const pattern = __nccwpck_require__(7044); +const pattern = __nccwpck_require__(5869); exports.pattern = pattern; -const stream = __nccwpck_require__(3732); +const stream = __nccwpck_require__(9103); exports.stream = stream; -const string = __nccwpck_require__(5589); +const string = __nccwpck_require__(3682); exports.string = string; /***/ }), -/***/ 9519: +/***/ 8692: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -11141,15 +11141,15 @@ exports.convertPosixPathToPattern = convertPosixPathToPattern; /***/ }), -/***/ 7044: +/***/ 5869: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.isAbsolute = exports.partitionAbsoluteAndRelative = exports.removeDuplicateSlashes = exports.matchAny = exports.convertPatternsToRe = exports.makeRe = exports.getPatternParts = exports.expandBraceExpansion = exports.expandPatternsWithBraceExpansion = exports.isAffectDepthOfReadingPattern = exports.endsWithSlashGlobStar = exports.hasGlobStar = exports.getBaseDirectory = exports.isPatternRelatedToParentDirectory = exports.getPatternsOutsideCurrentDirectory = exports.getPatternsInsideCurrentDirectory = exports.getPositivePatterns = exports.getNegativePatterns = exports.isPositivePattern = exports.isNegativePattern = exports.convertToNegativePattern = exports.convertToPositivePattern = exports.isDynamicPattern = exports.isStaticPattern = void 0; const path = __nccwpck_require__(6928); -const globParent = __nccwpck_require__(2437); -const micromatch = __nccwpck_require__(7805); +const globParent = __nccwpck_require__(2435); +const micromatch = __nccwpck_require__(9555); const GLOBSTAR = '**'; const ESCAPE_SYMBOL = '\\'; const COMMON_GLOB_SYMBOLS_RE = /[*?]|^!/; @@ -11354,13 +11354,13 @@ exports.isAbsolute = isAbsolute; /***/ }), -/***/ 3732: +/***/ 9103: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.merge = void 0; -const merge2 = __nccwpck_require__(6606); +const merge2 = __nccwpck_require__(4031); function merge(streams) { const mergedStream = merge2(streams); streams.forEach((stream) => { @@ -11378,7 +11378,7 @@ function propagateCloseEventToSources(streams) { /***/ }), -/***/ 5589: +/***/ 3682: /***/ ((__unused_webpack_module, exports) => { @@ -11396,325 +11396,7 @@ exports.isEmpty = isEmpty; /***/ }), -/***/ 4898: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -/* eslint-disable no-var */ - -var reusify = __nccwpck_require__(4088) - -function fastqueue (context, worker, _concurrency) { - if (typeof context === 'function') { - _concurrency = worker - worker = context - context = null - } - - if (!(_concurrency >= 1)) { - throw new Error('fastqueue concurrency must be equal to or greater than 1') - } - - var cache = reusify(Task) - var queueHead = null - var queueTail = null - var _running = 0 - var errorHandler = null - - var self = { - push: push, - drain: noop, - saturated: noop, - pause: pause, - paused: false, - - get concurrency () { - return _concurrency - }, - set concurrency (value) { - if (!(value >= 1)) { - throw new Error('fastqueue concurrency must be equal to or greater than 1') - } - _concurrency = value - - if (self.paused) return - for (; queueHead && _running < _concurrency;) { - _running++ - release() - } - }, - - running: running, - resume: resume, - idle: idle, - length: length, - getQueue: getQueue, - unshift: unshift, - empty: noop, - kill: kill, - killAndDrain: killAndDrain, - error: error - } - - return self - - function running () { - return _running - } - - function pause () { - self.paused = true - } - - function length () { - var current = queueHead - var counter = 0 - - while (current) { - current = current.next - counter++ - } - - return counter - } - - function getQueue () { - var current = queueHead - var tasks = [] - - while (current) { - tasks.push(current.value) - current = current.next - } - - return tasks - } - - function resume () { - if (!self.paused) return - self.paused = false - if (queueHead === null) { - _running++ - release() - return - } - for (; queueHead && _running < _concurrency;) { - _running++ - release() - } - } - - function idle () { - return _running === 0 && self.length() === 0 - } - - function push (value, done) { - var current = cache.get() - - current.context = context - current.release = release - current.value = value - current.callback = done || noop - current.errorHandler = errorHandler - - if (_running >= _concurrency || self.paused) { - if (queueTail) { - queueTail.next = current - queueTail = current - } else { - queueHead = current - queueTail = current - self.saturated() - } - } else { - _running++ - worker.call(context, current.value, current.worked) - } - } - - function unshift (value, done) { - var current = cache.get() - - current.context = context - current.release = release - current.value = value - current.callback = done || noop - current.errorHandler = errorHandler - - if (_running >= _concurrency || self.paused) { - if (queueHead) { - current.next = queueHead - queueHead = current - } else { - queueHead = current - queueTail = current - self.saturated() - } - } else { - _running++ - worker.call(context, current.value, current.worked) - } - } - - function release (holder) { - if (holder) { - cache.release(holder) - } - var next = queueHead - if (next && _running <= _concurrency) { - if (!self.paused) { - if (queueTail === queueHead) { - queueTail = null - } - queueHead = next.next - next.next = null - worker.call(context, next.value, next.worked) - if (queueTail === null) { - self.empty() - } - } else { - _running-- - } - } else if (--_running === 0) { - self.drain() - } - } - - function kill () { - queueHead = null - queueTail = null - self.drain = noop - } - - function killAndDrain () { - queueHead = null - queueTail = null - self.drain() - self.drain = noop - } - - function error (handler) { - errorHandler = handler - } -} - -function noop () {} - -function Task () { - this.value = null - this.callback = noop - this.next = null - this.release = noop - this.context = null - this.errorHandler = null - - var self = this - - this.worked = function worked (err, result) { - var callback = self.callback - var errorHandler = self.errorHandler - var val = self.value - self.value = null - self.callback = noop - if (self.errorHandler) { - errorHandler(err, val) - } - callback.call(self.context, err, result) - self.release(self) - } -} - -function queueAsPromised (context, worker, _concurrency) { - if (typeof context === 'function') { - _concurrency = worker - worker = context - context = null - } - - function asyncWrapper (arg, cb) { - worker.call(this, arg) - .then(function (res) { - cb(null, res) - }, cb) - } - - var queue = fastqueue(context, asyncWrapper, _concurrency) - - var pushCb = queue.push - var unshiftCb = queue.unshift - - queue.push = push - queue.unshift = unshift - queue.drained = drained - - return queue - - function push (value) { - var p = new Promise(function (resolve, reject) { - pushCb(value, function (err, result) { - if (err) { - reject(err) - return - } - resolve(result) - }) - }) - - // Let's fork the promise chain to - // make the error bubble up to the user but - // not lead to a unhandledRejection - p.catch(noop) - - return p - } - - function unshift (value) { - var p = new Promise(function (resolve, reject) { - unshiftCb(value, function (err, result) { - if (err) { - reject(err) - return - } - resolve(result) - }) - }) - - // Let's fork the promise chain to - // make the error bubble up to the user but - // not lead to a unhandledRejection - p.catch(noop) - - return p - } - - function drained () { - var p = new Promise(function (resolve) { - process.nextTick(function () { - if (queue.idle()) { - resolve() - } else { - var previousDrain = queue.drain - queue.drain = function () { - if (typeof previousDrain === 'function') previousDrain() - resolve() - queue.drain = previousDrain - } - } - }) - }) - - return p - } -} - -module.exports = fastqueue -module.exports.promise = queueAsPromised - - -/***/ }), - -/***/ 4112: +/***/ 6701: /***/ (function(__unused_webpack_module, exports) { (function (global, factory) { @@ -12138,7 +11820,7 @@ module.exports.promise = queueAsPromised /***/ }), -/***/ 9073: +/***/ 9730: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*! @@ -12151,7 +11833,7 @@ module.exports.promise = queueAsPromised const util = __nccwpck_require__(9023); -const toRegexRange = __nccwpck_require__(4395); +const toRegexRange = __nccwpck_require__(743); const isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val); @@ -12393,7 +12075,7 @@ module.exports = fill; /***/ }), -/***/ 3469: +/***/ 7365: /***/ ((module) => { @@ -12442,7 +12124,7 @@ module.exports = function name(fn) { /***/ }), -/***/ 8886: +/***/ 9679: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { var debug; @@ -12451,7 +12133,7 @@ module.exports = function () { if (!debug) { try { /* eslint global-require: off */ - debug = __nccwpck_require__(7674)("follow-redirects"); + debug = __nccwpck_require__(6675)("follow-redirects"); } catch (error) { /* */ } if (typeof debug !== "function") { @@ -12464,7 +12146,7 @@ module.exports = function () { /***/ }), -/***/ 1209: +/***/ 1584: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { var url = __nccwpck_require__(7016); @@ -12473,7 +12155,7 @@ var http = __nccwpck_require__(8611); var https = __nccwpck_require__(5692); var Writable = (__nccwpck_require__(2203).Writable); var assert = __nccwpck_require__(2613); -var debug = __nccwpck_require__(8886); +var debug = __nccwpck_require__(9679); // Preventive platform detection // istanbul ignore next @@ -12495,13 +12177,6 @@ catch (error) { useNativeURL = error.code === "ERR_INVALID_URL"; } -// HTTP headers to drop across HTTP/HTTPS and domain boundaries -var sensitiveHeaders = [ - "Authorization", - "Proxy-Authorization", - "Cookie", -]; - // URL fields to preserve in copy operations var preservedUrlFields = [ "auth", @@ -12583,11 +12258,6 @@ function RedirectableRequest(options, responseCallback) { } }; - // Create filter for sensitive HTTP headers - this._headerFilter = new RegExp("^(?:" + - sensitiveHeaders.concat(options.sensitiveHeaders).map(escapeRegex).join("|") + - ")$", "i"); - // Perform the first request this._performRequest(); } @@ -12771,9 +12441,6 @@ RedirectableRequest.prototype._sanitizeOptions = function (options) { if (!options.headers) { options.headers = {}; } - if (!isArray(options.sensitiveHeaders)) { - options.sensitiveHeaders = []; - } // Since http.request treats host as an alias of hostname, // but the url module interprets host as hostname plus port, @@ -12956,7 +12623,7 @@ RedirectableRequest.prototype._processResponse = function (response) { redirectUrl.protocol !== "https:" || redirectUrl.host !== currentHost && !isSubdomain(redirectUrl.host, currentHost)) { - removeMatchingHeaders(this._headerFilter, this._options.headers); + removeMatchingHeaders(/^(?:(?:proxy-)?authorization|cookie)$/i, this._options.headers); } // Evaluate the beforeRedirect callback @@ -13149,10 +12816,6 @@ function isSubdomain(subdomain, domain) { return dot > 0 && subdomain[dot] === "." && subdomain.endsWith(domain); } -function isArray(value) { - return value instanceof Array; -} - function isString(value) { return typeof value === "string" || value instanceof String; } @@ -13169,10 +12832,6 @@ function isURL(value) { return URL && value instanceof URL; } -function escapeRegex(regex) { - return regex.replace(/[\]\\/()*+?.$]/g, "\\$&"); -} - // Exports module.exports = wrap({ http: http, https: https }); module.exports.wrap = wrap; @@ -13180,12 +12839,12 @@ module.exports.wrap = wrap; /***/ }), -/***/ 2226: +/***/ 1515: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var CombinedStream = __nccwpck_require__(3178); +var CombinedStream = __nccwpck_require__(7814); var util = __nccwpck_require__(9023); var path = __nccwpck_require__(6928); var http = __nccwpck_require__(8611); @@ -13194,11 +12853,11 @@ var parseUrl = (__nccwpck_require__(7016).parse); var fs = __nccwpck_require__(9896); var Stream = (__nccwpck_require__(2203).Stream); var crypto = __nccwpck_require__(6982); -var mime = __nccwpck_require__(9997); -var asynckit = __nccwpck_require__(1288); -var setToStringTag = __nccwpck_require__(8328); -var hasOwn = __nccwpck_require__(9776); -var populate = __nccwpck_require__(3767); +var mime = __nccwpck_require__(2574); +var asynckit = __nccwpck_require__(8915); +var setToStringTag = __nccwpck_require__(8362); +var hasOwn = __nccwpck_require__(3383); +var populate = __nccwpck_require__(2260); /** * Create readable "multipart/form-data" streams. @@ -13681,7 +13340,7 @@ module.exports = FormData; /***/ }), -/***/ 3767: +/***/ 2260: /***/ ((module) => { @@ -13698,221 +13357,7 @@ module.exports = function (dst, src) { /***/ }), -/***/ 10: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -/*! - * mime-db - * Copyright(c) 2014 Jonathan Ong - * Copyright(c) 2015-2022 Douglas Christopher Wilson - * MIT Licensed - */ - -/** - * Module exports. - */ - -module.exports = __nccwpck_require__(9139) - - -/***/ }), - -/***/ 9997: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -/*! - * mime-types - * Copyright(c) 2014 Jonathan Ong - * Copyright(c) 2015 Douglas Christopher Wilson - * MIT Licensed - */ - - - -/** - * Module dependencies. - * @private - */ - -var db = __nccwpck_require__(10) -var extname = (__nccwpck_require__(6928).extname) - -/** - * Module variables. - * @private - */ - -var EXTRACT_TYPE_REGEXP = /^\s*([^;\s]*)(?:;|\s|$)/ -var TEXT_TYPE_REGEXP = /^text\//i - -/** - * Module exports. - * @public - */ - -exports.charset = charset -exports.charsets = { lookup: charset } -exports.contentType = contentType -exports.extension = extension -exports.extensions = Object.create(null) -exports.lookup = lookup -exports.types = Object.create(null) - -// Populate the extensions/types maps -populateMaps(exports.extensions, exports.types) - -/** - * Get the default charset for a MIME type. - * - * @param {string} type - * @return {boolean|string} - */ - -function charset (type) { - if (!type || typeof type !== 'string') { - return false - } - - // TODO: use media-typer - var match = EXTRACT_TYPE_REGEXP.exec(type) - var mime = match && db[match[1].toLowerCase()] - - if (mime && mime.charset) { - return mime.charset - } - - // default text/* to utf-8 - if (match && TEXT_TYPE_REGEXP.test(match[1])) { - return 'UTF-8' - } - - return false -} - -/** - * Create a full Content-Type header given a MIME type or extension. - * - * @param {string} str - * @return {boolean|string} - */ - -function contentType (str) { - // TODO: should this even be in this module? - if (!str || typeof str !== 'string') { - return false - } - - var mime = str.indexOf('/') === -1 - ? exports.lookup(str) - : str - - if (!mime) { - return false - } - - // TODO: use content-type or other module - if (mime.indexOf('charset') === -1) { - var charset = exports.charset(mime) - if (charset) mime += '; charset=' + charset.toLowerCase() - } - - return mime -} - -/** - * Get the default extension for a MIME type. - * - * @param {string} type - * @return {boolean|string} - */ - -function extension (type) { - if (!type || typeof type !== 'string') { - return false - } - - // TODO: use media-typer - var match = EXTRACT_TYPE_REGEXP.exec(type) - - // get extensions - var exts = match && exports.extensions[match[1].toLowerCase()] - - if (!exts || !exts.length) { - return false - } - - return exts[0] -} - -/** - * Lookup the MIME type for a file path/extension. - * - * @param {string} path - * @return {boolean|string} - */ - -function lookup (path) { - if (!path || typeof path !== 'string') { - return false - } - - // get the extension ("ext" or ".ext" or full path) - var extension = extname('x.' + path) - .toLowerCase() - .substr(1) - - if (!extension) { - return false - } - - return exports.types[extension] || false -} - -/** - * Populate the extensions and types maps. - * @private - */ - -function populateMaps (extensions, types) { - // source preference (least -> most) - var preference = ['nginx', 'apache', undefined, 'iana'] - - Object.keys(db).forEach(function forEachMimeType (type) { - var mime = db[type] - var exts = mime.extensions - - if (!exts || !exts.length) { - return - } - - // mime -> extensions - extensions[type] = exts - - // extension -> mime - for (var i = 0; i < exts.length; i++) { - var extension = exts[i] - - if (types[extension]) { - var from = preference.indexOf(db[types[extension]].source) - var to = preference.indexOf(mime.source) - - if (types[extension] !== 'application/octet-stream' && - (from > to || (from === to && types[extension].substr(0, 12) === 'application/'))) { - // skip the remapping - continue - } - } - - // set the extension -> mime - types[extension] = type - } - }) -} - - -/***/ }), - -/***/ 4124: +/***/ 6555: /***/ ((module) => { @@ -14003,42 +13448,42 @@ module.exports = function bind(that) { /***/ }), -/***/ 5112: +/***/ 178: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var implementation = __nccwpck_require__(4124); +var implementation = __nccwpck_require__(6555); module.exports = Function.prototype.bind || implementation; /***/ }), -/***/ 978: +/***/ 1893: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { var undefined; -var $Object = __nccwpck_require__(931); +var $Object = __nccwpck_require__(8300); -var $Error = __nccwpck_require__(2472); -var $EvalError = __nccwpck_require__(8060); -var $RangeError = __nccwpck_require__(2957); -var $ReferenceError = __nccwpck_require__(9157); -var $SyntaxError = __nccwpck_require__(1821); -var $TypeError = __nccwpck_require__(1254); -var $URIError = __nccwpck_require__(662); +var $Error = __nccwpck_require__(6621); +var $EvalError = __nccwpck_require__(1247); +var $RangeError = __nccwpck_require__(6136); +var $ReferenceError = __nccwpck_require__(252); +var $SyntaxError = __nccwpck_require__(9546); +var $TypeError = __nccwpck_require__(4785); +var $URIError = __nccwpck_require__(1223); -var abs = __nccwpck_require__(8629); -var floor = __nccwpck_require__(3127); -var max = __nccwpck_require__(2079); -var min = __nccwpck_require__(1381); -var pow = __nccwpck_require__(7375); -var round = __nccwpck_require__(393); -var sign = __nccwpck_require__(800); +var abs = __nccwpck_require__(4197); +var floor = __nccwpck_require__(4455); +var max = __nccwpck_require__(1295); +var min = __nccwpck_require__(6949); +var pow = __nccwpck_require__(2943); +var round = __nccwpck_require__(1721); +var sign = __nccwpck_require__(3536); var $Function = Function; @@ -14049,8 +13494,8 @@ var getEvalledConstructor = function (expressionSyntax) { } catch (e) {} }; -var $gOPD = __nccwpck_require__(6822); -var $defineProperty = __nccwpck_require__(4090); +var $gOPD = __nccwpck_require__(8322); +var $defineProperty = __nccwpck_require__(871); var throwTypeError = function () { throw new $TypeError(); @@ -14072,14 +13517,14 @@ var ThrowTypeError = $gOPD }()) : throwTypeError; -var hasSymbols = __nccwpck_require__(4428)(); +var hasSymbols = __nccwpck_require__(9131)(); -var getProto = __nccwpck_require__(6795); -var $ObjectGPO = __nccwpck_require__(5811); -var $ReflectGPO = __nccwpck_require__(5125); +var getProto = __nccwpck_require__(9717); +var $ObjectGPO = __nccwpck_require__(45); +var $ReflectGPO = __nccwpck_require__(7767); -var $apply = __nccwpck_require__(7605); -var $call = __nccwpck_require__(6409); +var $apply = __nccwpck_require__(4834); +var $call = __nccwpck_require__(8772); var needsEval = {}; @@ -14260,8 +13705,8 @@ var LEGACY_ALIASES = { '%WeakSetPrototype%': ['WeakSet', 'prototype'] }; -var bind = __nccwpck_require__(5112); -var hasOwn = __nccwpck_require__(9776); +var bind = __nccwpck_require__(178); +var hasOwn = __nccwpck_require__(3383); var $concat = bind.call($call, Array.prototype.concat); var $spliceApply = bind.call($apply, Array.prototype.splice); var $replace = bind.call($call, String.prototype.replace); @@ -14400,12 +13845,12 @@ module.exports = function GetIntrinsic(name, allowMissing) { /***/ }), -/***/ 5811: +/***/ 45: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var $Object = __nccwpck_require__(931); +var $Object = __nccwpck_require__(8300); /** @type {import('./Object.getPrototypeOf')} */ module.exports = $Object.getPrototypeOf || null; @@ -14413,7 +13858,7 @@ module.exports = $Object.getPrototypeOf || null; /***/ }), -/***/ 5125: +/***/ 7767: /***/ ((module) => { @@ -14424,15 +13869,15 @@ module.exports = (typeof Reflect !== 'undefined' && Reflect.getPrototypeOf) || n /***/ }), -/***/ 6795: +/***/ 9717: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var reflectGetProto = __nccwpck_require__(5125); -var originalGetProto = __nccwpck_require__(5811); +var reflectGetProto = __nccwpck_require__(7767); +var originalGetProto = __nccwpck_require__(45); -var getDunderProto = __nccwpck_require__(2225); +var getDunderProto = __nccwpck_require__(3859); /** @type {import('.')} */ module.exports = reflectGetProto @@ -14458,12 +13903,12 @@ module.exports = reflectGetProto /***/ }), -/***/ 2437: +/***/ 2435: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var isGlob = __nccwpck_require__(1753); +var isGlob = __nccwpck_require__(686); var pathPosixDirname = (__nccwpck_require__(6928).posix).dirname; var isWin32 = (__nccwpck_require__(857).platform)() === 'win32'; @@ -14507,7 +13952,7 @@ module.exports = function globParent(str, opts) { /***/ }), -/***/ 9186: +/***/ 8422: /***/ ((module) => { @@ -14518,13 +13963,13 @@ module.exports = Object.getOwnPropertyDescriptor; /***/ }), -/***/ 6822: +/***/ 8322: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /** @type {import('.')} */ -var $gOPD = __nccwpck_require__(9186); +var $gOPD = __nccwpck_require__(8422); if ($gOPD) { try { @@ -14540,7 +13985,7 @@ module.exports = $gOPD; /***/ }), -/***/ 9473: +/***/ 4167: /***/ ((module) => { @@ -14555,13 +14000,13 @@ module.exports = (flag, argv = process.argv) => { /***/ }), -/***/ 4428: +/***/ 9131: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { var origSymbol = typeof Symbol !== 'undefined' && Symbol; -var hasSymbolSham = __nccwpck_require__(2542); +var hasSymbolSham = __nccwpck_require__(6313); /** @type {import('.')} */ module.exports = function hasNativeSymbols() { @@ -14576,7 +14021,7 @@ module.exports = function hasNativeSymbols() { /***/ }), -/***/ 2542: +/***/ 6313: /***/ ((module) => { @@ -14628,12 +14073,12 @@ module.exports = function hasSymbols() { /***/ }), -/***/ 6763: +/***/ 532: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var hasSymbols = __nccwpck_require__(2542); +var hasSymbols = __nccwpck_require__(6313); /** @type {import('.')} */ module.exports = function hasToStringTagShams() { @@ -14643,14 +14088,14 @@ module.exports = function hasToStringTagShams() { /***/ }), -/***/ 9776: +/***/ 3383: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { var call = Function.prototype.call; var $hasOwn = Object.prototype.hasOwnProperty; -var bind = __nccwpck_require__(5112); +var bind = __nccwpck_require__(178); /** @type {import('.')} */ module.exports = bind.call(call, $hasOwn); @@ -14658,7 +14103,7 @@ module.exports = bind.call(call, $hasOwn); /***/ }), -/***/ 8090: +/***/ 8013: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { try { @@ -14668,13 +14113,13 @@ try { module.exports = util.inherits; } catch (e) { /* istanbul ignore next */ - module.exports = __nccwpck_require__(5977); + module.exports = __nccwpck_require__(1638); } /***/ }), -/***/ 5977: +/***/ 1638: /***/ ((module) => { if (typeof Object.create === 'function') { @@ -14708,7 +14153,7 @@ if (typeof Object.create === 'function') { /***/ }), -/***/ 7280: +/***/ 9825: /***/ ((module) => { /*! @@ -14735,7 +14180,7 @@ module.exports = function isExtglob(str) { /***/ }), -/***/ 1753: +/***/ 686: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*! @@ -14745,7 +14190,7 @@ module.exports = function isExtglob(str) { * Released under the MIT License. */ -var isExtglob = __nccwpck_require__(7280); +var isExtglob = __nccwpck_require__(9825); var chars = { '{': '}', '(': ')', '[': ']'}; var strictCheck = function(str) { if (str[0] === '!') { @@ -14892,7 +14337,7 @@ module.exports = function isGlob(str, options) { /***/ }), -/***/ 7850: +/***/ 952: /***/ ((module) => { /*! @@ -14917,7 +14362,7 @@ module.exports = function(num) { /***/ }), -/***/ 1011: +/***/ 1066: /***/ ((module) => { @@ -14952,32 +14397,32 @@ module.exports = isStream; /***/ }), -/***/ 1871: +/***/ 9656: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { module.exports.__defineGetter__('parse', function() { - return (__nccwpck_require__(8472).parse) + return (__nccwpck_require__(1079).parse) }) module.exports.__defineGetter__('stringify', function() { - return (__nccwpck_require__(2438)/* .stringify */ .A) + return (__nccwpck_require__(8585)/* .stringify */ .A) }) module.exports.__defineGetter__('tokenize', function() { - return (__nccwpck_require__(8472).tokenize) + return (__nccwpck_require__(1079).tokenize) }) module.exports.__defineGetter__('update', function() { - return (__nccwpck_require__(8110)/* .update */ .f) + return (__nccwpck_require__(4175)/* .update */ .f) }) module.exports.__defineGetter__('analyze', function() { - return (__nccwpck_require__(4167)/* .analyze */ .n) + return (__nccwpck_require__(636)/* .analyze */ .n) }) module.exports.__defineGetter__('utils', function() { - return __nccwpck_require__(8074) + return __nccwpck_require__(7629) }) /**package @@ -14991,11 +14436,11 @@ module.exports.__defineGetter__('utils', function() { /***/ }), -/***/ 4167: +/***/ 636: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var tokenize = (__nccwpck_require__(8472).tokenize) +var tokenize = (__nccwpck_require__(1079).tokenize) module.exports.n = function analyzeJSON(input, options) { if (options == null) options = {} @@ -15085,15 +14530,15 @@ module.exports.n = function analyzeJSON(input, options) { /***/ }), -/***/ 8110: +/***/ 4175: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { var __webpack_unused_export__; var assert = __nccwpck_require__(2613) -var tokenize = (__nccwpck_require__(8472).tokenize) -var stringify = (__nccwpck_require__(2438)/* .stringify */ .A) -var analyze = (__nccwpck_require__(4167)/* .analyze */ .n) +var tokenize = (__nccwpck_require__(1079).tokenize) +var stringify = (__nccwpck_require__(8585)/* .stringify */ .A) +var analyze = (__nccwpck_require__(636)/* .analyze */ .n) function isObject(x) { return typeof(x) === 'object' && x !== null @@ -15573,13 +15018,13 @@ module.exports.f = function updateJSON(source, new_value, options) { /***/ }), -/***/ 8472: +/***/ 1079: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // RTFM: http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf -var Uni = __nccwpck_require__(6532) +var Uni = __nccwpck_require__(3667) function isHexDigit(x) { return (x >= '0' && x <= '9') @@ -16340,11 +15785,11 @@ module.exports.tokenize = function tokenizeJSON(input, options) { /***/ }), -/***/ 2438: +/***/ 8585: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Uni = __nccwpck_require__(6532) +var Uni = __nccwpck_require__(3667) // Fix Function#name on browsers that do not support it (IE) // http://stackoverflow.com/questions/6903762/function-name-not-supported-in-ie @@ -16725,7 +16170,7 @@ module.exports.A = function stringifyJSON(object, options, _space) { /***/ }), -/***/ 6532: +/***/ 3667: /***/ ((module) => { @@ -16802,11 +16247,11 @@ module.exports.NonAsciiIdentifierPart = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u0 /***/ }), -/***/ 8074: +/***/ 7629: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { var FS = __nccwpck_require__(9896) -var jju = __nccwpck_require__(1871) +var jju = __nccwpck_require__(9656) // this function registers json5 extension, so you // can do `require("./config.json5")` kind of thing @@ -16828,7 +16273,7 @@ module.exports.patch_JSON_parse = function() { return _parse(text, rev) } catch(err) { // this call should always throw - (__nccwpck_require__(1871).parse)(text, { + (__nccwpck_require__(9656).parse)(text, { mode: 'json', legacy: true, reviver: rev, @@ -16855,14 +16300,14 @@ module.exports.middleware = function() { /***/ }), -/***/ 677: +/***/ 5309: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var loader = __nccwpck_require__(586); -var dumper = __nccwpck_require__(6904); +var loader = __nccwpck_require__(4802); +var dumper = __nccwpck_require__(2208); function renamed(from, to) { @@ -16873,32 +16318,32 @@ function renamed(from, to) { } -module.exports.Type = __nccwpck_require__(1089); -module.exports.Schema = __nccwpck_require__(9610); -module.exports.FAILSAFE_SCHEMA = __nccwpck_require__(2420); -module.exports.JSON_SCHEMA = __nccwpck_require__(8971); -module.exports.CORE_SCHEMA = __nccwpck_require__(2254); -module.exports.DEFAULT_SCHEMA = __nccwpck_require__(7436); +module.exports.Type = __nccwpck_require__(4313); +module.exports.Schema = __nccwpck_require__(706); +module.exports.FAILSAFE_SCHEMA = __nccwpck_require__(1068); +module.exports.JSON_SCHEMA = __nccwpck_require__(9875); +module.exports.CORE_SCHEMA = __nccwpck_require__(2454); +module.exports.DEFAULT_SCHEMA = __nccwpck_require__(4260); module.exports.load = loader.load; module.exports.loadAll = loader.loadAll; module.exports.dump = dumper.dump; -module.exports.YAMLException = __nccwpck_require__(2828); +module.exports.YAMLException = __nccwpck_require__(3716); // Re-export all types in case user wants to create custom schema module.exports.types = { - binary: __nccwpck_require__(1113), - float: __nccwpck_require__(3492), - map: __nccwpck_require__(8432), - null: __nccwpck_require__(7177), - pairs: __nccwpck_require__(1503), - set: __nccwpck_require__(5098), - timestamp: __nccwpck_require__(5298), - bool: __nccwpck_require__(7300), - int: __nccwpck_require__(4729), - merge: __nccwpck_require__(954), - omap: __nccwpck_require__(8677), - seq: __nccwpck_require__(3733), - str: __nccwpck_require__(1845) + binary: __nccwpck_require__(4497), + float: __nccwpck_require__(9980), + map: __nccwpck_require__(4952), + null: __nccwpck_require__(9697), + pairs: __nccwpck_require__(7399), + set: __nccwpck_require__(2610), + timestamp: __nccwpck_require__(7098), + bool: __nccwpck_require__(4204), + int: __nccwpck_require__(5707), + merge: __nccwpck_require__(8546), + omap: __nccwpck_require__(1005), + seq: __nccwpck_require__(2941), + str: __nccwpck_require__(3501) }; // Removed functions from JS-YAML 3.0.x @@ -16909,7 +16354,7 @@ module.exports.safeDump = renamed('safeDump', 'dump'); /***/ }), -/***/ 3324: +/***/ 20: /***/ ((module) => { @@ -16975,16 +16420,16 @@ module.exports.extend = extend; /***/ }), -/***/ 6904: +/***/ 2208: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*eslint-disable no-use-before-define*/ -var common = __nccwpck_require__(3324); -var YAMLException = __nccwpck_require__(2828); -var DEFAULT_SCHEMA = __nccwpck_require__(7436); +var common = __nccwpck_require__(20); +var YAMLException = __nccwpck_require__(3716); +var DEFAULT_SCHEMA = __nccwpck_require__(4260); var _toString = Object.prototype.toString; var _hasOwnProperty = Object.prototype.hasOwnProperty; @@ -17947,7 +17392,7 @@ module.exports.dump = dump; /***/ }), -/***/ 2828: +/***/ 3716: /***/ ((module) => { // YAML error class. http://stackoverflow.com/questions/8458984 @@ -18009,17 +17454,17 @@ module.exports = YAMLException; /***/ }), -/***/ 586: +/***/ 4802: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*eslint-disable max-len,no-use-before-define*/ -var common = __nccwpck_require__(3324); -var YAMLException = __nccwpck_require__(2828); -var makeSnippet = __nccwpck_require__(732); -var DEFAULT_SCHEMA = __nccwpck_require__(7436); +var common = __nccwpck_require__(20); +var YAMLException = __nccwpck_require__(3716); +var makeSnippet = __nccwpck_require__(8148); +var DEFAULT_SCHEMA = __nccwpck_require__(4260); var _hasOwnProperty = Object.prototype.hasOwnProperty; @@ -19749,15 +19194,15 @@ module.exports.load = load; /***/ }), -/***/ 9610: +/***/ 706: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*eslint-disable max-len*/ -var YAMLException = __nccwpck_require__(2828); -var Type = __nccwpck_require__(1089); +var YAMLException = __nccwpck_require__(3716); +var Type = __nccwpck_require__(4313); function compileList(schema, name) { @@ -19877,7 +19322,7 @@ module.exports = Schema; /***/ }), -/***/ 2254: +/***/ 2454: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Standard YAML's Core schema. @@ -19890,12 +19335,12 @@ module.exports = Schema; -module.exports = __nccwpck_require__(8971); +module.exports = __nccwpck_require__(9875); /***/ }), -/***/ 7436: +/***/ 4260: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // JS-YAML's default schema for `safeLoad` function. @@ -19908,23 +19353,23 @@ module.exports = __nccwpck_require__(8971); -module.exports = (__nccwpck_require__(2254).extend)({ +module.exports = (__nccwpck_require__(2454).extend)({ implicit: [ - __nccwpck_require__(5298), - __nccwpck_require__(954) + __nccwpck_require__(7098), + __nccwpck_require__(8546) ], explicit: [ - __nccwpck_require__(1113), - __nccwpck_require__(8677), - __nccwpck_require__(1503), - __nccwpck_require__(5098) + __nccwpck_require__(4497), + __nccwpck_require__(1005), + __nccwpck_require__(7399), + __nccwpck_require__(2610) ] }); /***/ }), -/***/ 2420: +/***/ 1068: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Standard YAML's Failsafe schema. @@ -19934,21 +19379,21 @@ module.exports = (__nccwpck_require__(2254).extend)({ -var Schema = __nccwpck_require__(9610); +var Schema = __nccwpck_require__(706); module.exports = new Schema({ explicit: [ - __nccwpck_require__(1845), - __nccwpck_require__(3733), - __nccwpck_require__(8432) + __nccwpck_require__(3501), + __nccwpck_require__(2941), + __nccwpck_require__(4952) ] }); /***/ }), -/***/ 8971: +/***/ 9875: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Standard YAML's JSON schema. @@ -19962,25 +19407,25 @@ module.exports = new Schema({ -module.exports = (__nccwpck_require__(2420).extend)({ +module.exports = (__nccwpck_require__(1068).extend)({ implicit: [ - __nccwpck_require__(7177), - __nccwpck_require__(7300), - __nccwpck_require__(4729), - __nccwpck_require__(3492) + __nccwpck_require__(9697), + __nccwpck_require__(4204), + __nccwpck_require__(5707), + __nccwpck_require__(9980) ] }); /***/ }), -/***/ 732: +/***/ 8148: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var common = __nccwpck_require__(3324); +var common = __nccwpck_require__(20); // get snippet for a single line, respecting maxLength @@ -20082,12 +19527,12 @@ module.exports = makeSnippet; /***/ }), -/***/ 1089: +/***/ 4313: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var YAMLException = __nccwpck_require__(2828); +var YAMLException = __nccwpck_require__(3716); var TYPE_CONSTRUCTOR_OPTIONS = [ 'kind', @@ -20155,7 +19600,7 @@ module.exports = Type; /***/ }), -/***/ 1113: +/***/ 4497: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -20163,7 +19608,7 @@ module.exports = Type; /*eslint-disable no-bitwise*/ -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); // [ 64, 65, 66 ] -> [ padding, CR, LF ] @@ -20287,12 +19732,12 @@ module.exports = new Type('tag:yaml.org,2002:binary', { /***/ }), -/***/ 7300: +/***/ 4204: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); function resolveYamlBoolean(data) { if (data === null) return false; @@ -20329,13 +19774,13 @@ module.exports = new Type('tag:yaml.org,2002:bool', { /***/ }), -/***/ 3492: +/***/ 9980: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var common = __nccwpck_require__(3324); -var Type = __nccwpck_require__(1089); +var common = __nccwpck_require__(20); +var Type = __nccwpck_require__(4313); var YAML_FLOAT_PATTERN = new RegExp( // 2.5e4, 2.5 and integers @@ -20433,13 +19878,13 @@ module.exports = new Type('tag:yaml.org,2002:float', { /***/ }), -/***/ 4729: +/***/ 5707: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var common = __nccwpck_require__(3324); -var Type = __nccwpck_require__(1089); +var common = __nccwpck_require__(20); +var Type = __nccwpck_require__(4313); function isHexCode(c) { return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) || @@ -20596,12 +20041,12 @@ module.exports = new Type('tag:yaml.org,2002:int', { /***/ }), -/***/ 8432: +/***/ 4952: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); module.exports = new Type('tag:yaml.org,2002:map', { kind: 'mapping', @@ -20611,12 +20056,12 @@ module.exports = new Type('tag:yaml.org,2002:map', { /***/ }), -/***/ 954: +/***/ 8546: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); function resolveYamlMerge(data) { return data === '<<' || data === null; @@ -20630,12 +20075,12 @@ module.exports = new Type('tag:yaml.org,2002:merge', { /***/ }), -/***/ 7177: +/***/ 9697: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); function resolveYamlNull(data) { if (data === null) return true; @@ -20672,12 +20117,12 @@ module.exports = new Type('tag:yaml.org,2002:null', { /***/ }), -/***/ 8677: +/***/ 1005: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); var _hasOwnProperty = Object.prototype.hasOwnProperty; var _toString = Object.prototype.toString; @@ -20723,12 +20168,12 @@ module.exports = new Type('tag:yaml.org,2002:omap', { /***/ }), -/***/ 1503: +/***/ 7399: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); var _toString = Object.prototype.toString; @@ -20783,12 +20228,12 @@ module.exports = new Type('tag:yaml.org,2002:pairs', { /***/ }), -/***/ 3733: +/***/ 2941: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); module.exports = new Type('tag:yaml.org,2002:seq', { kind: 'sequence', @@ -20798,12 +20243,12 @@ module.exports = new Type('tag:yaml.org,2002:seq', { /***/ }), -/***/ 5098: +/***/ 2610: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); var _hasOwnProperty = Object.prototype.hasOwnProperty; @@ -20834,12 +20279,12 @@ module.exports = new Type('tag:yaml.org,2002:set', { /***/ }), -/***/ 1845: +/***/ 3501: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); module.exports = new Type('tag:yaml.org,2002:str', { kind: 'scalar', @@ -20849,12 +20294,12 @@ module.exports = new Type('tag:yaml.org,2002:str', { /***/ }), -/***/ 5298: +/***/ 7098: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); var YAML_DATE_REGEXP = new RegExp( '^([0-9][0-9][0-9][0-9])' + // [1] year @@ -20944,7 +20389,7 @@ module.exports = new Type('tag:yaml.org,2002:timestamp', { /***/ }), -/***/ 8083: +/***/ 5407: /***/ ((module) => { @@ -21069,12 +20514,12 @@ module.exports = Kuler; /***/ }), -/***/ 8877: +/***/ 2871: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const format = __nccwpck_require__(9097); +const format = __nccwpck_require__(8259); /* * function align (info) @@ -21090,14 +20535,14 @@ module.exports = format(info => { /***/ }), -/***/ 6134: +/***/ 7044: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { Colorizer } = __nccwpck_require__(7713); -const { Padder } = __nccwpck_require__(1921); -const { configs, MESSAGE } = __nccwpck_require__(1544); +const { Colorizer } = __nccwpck_require__(5491); +const { Padder } = __nccwpck_require__(2159); +const { configs, MESSAGE } = __nccwpck_require__(1255); /** @@ -21149,13 +20594,13 @@ module.exports.Format = CliFormat; /***/ }), -/***/ 7713: +/***/ 5491: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const colors = __nccwpck_require__(6040); -const { LEVEL, MESSAGE } = __nccwpck_require__(1544); +const colors = __nccwpck_require__(6457); +const { LEVEL, MESSAGE } = __nccwpck_require__(1255); // // Fix colors not appearing in non-tty environments @@ -21278,12 +20723,12 @@ module.exports.Colorizer /***/ }), -/***/ 8881: +/***/ 9331: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const format = __nccwpck_require__(9097); +const format = __nccwpck_require__(8259); /* * function cascade(formats) @@ -21351,14 +20796,14 @@ module.exports.cascade = cascade; /***/ }), -/***/ 1925: +/***/ 4823: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /* eslint no-undefined: 0 */ -const format = __nccwpck_require__(9097); -const { LEVEL, MESSAGE } = __nccwpck_require__(1544); +const format = __nccwpck_require__(8259); +const { LEVEL, MESSAGE } = __nccwpck_require__(1255); /* * function errors (info) @@ -21399,7 +20844,7 @@ module.exports = format((einfo, { stack, cause }) => { /***/ }), -/***/ 9097: +/***/ 8259: /***/ ((module) => { @@ -21458,7 +20903,7 @@ module.exports = formatFn => { /***/ }), -/***/ 116: +/***/ 6946: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -21469,14 +20914,14 @@ module.exports = formatFn => { * Both the construction method and set of exposed * formats. */ -const format = exports.format = __nccwpck_require__(9097); +const format = exports.format = __nccwpck_require__(8259); /* * @api public * @method {function} levels * Registers the specified levels with logform. */ -exports.levels = __nccwpck_require__(8641); +exports.levels = __nccwpck_require__(2855); /* * @api private @@ -21496,35 +20941,35 @@ function exposeFormat(name, requireFormat) { // // Setup all transports as lazy-loaded getters. // -exposeFormat('align', function () { return __nccwpck_require__(8877); }); -exposeFormat('errors', function () { return __nccwpck_require__(1925); }); -exposeFormat('cli', function () { return __nccwpck_require__(6134); }); -exposeFormat('combine', function () { return __nccwpck_require__(8881); }); -exposeFormat('colorize', function () { return __nccwpck_require__(7713); }); -exposeFormat('json', function () { return __nccwpck_require__(8300); }); -exposeFormat('label', function () { return __nccwpck_require__(5586); }); -exposeFormat('logstash', function () { return __nccwpck_require__(3213); }); -exposeFormat('metadata', function () { return __nccwpck_require__(5219); }); -exposeFormat('ms', function () { return __nccwpck_require__(862); }); -exposeFormat('padLevels', function () { return __nccwpck_require__(1921); }); -exposeFormat('prettyPrint', function () { return __nccwpck_require__(7512); }); -exposeFormat('printf', function () { return __nccwpck_require__(6353); }); -exposeFormat('simple', function () { return __nccwpck_require__(9200); }); -exposeFormat('splat', function () { return __nccwpck_require__(4420); }); -exposeFormat('timestamp', function () { return __nccwpck_require__(76); }); -exposeFormat('uncolorize', function () { return __nccwpck_require__(810); }); +exposeFormat('align', function () { return __nccwpck_require__(2871); }); +exposeFormat('errors', function () { return __nccwpck_require__(4823); }); +exposeFormat('cli', function () { return __nccwpck_require__(7044); }); +exposeFormat('combine', function () { return __nccwpck_require__(9331); }); +exposeFormat('colorize', function () { return __nccwpck_require__(5491); }); +exposeFormat('json', function () { return __nccwpck_require__(6810); }); +exposeFormat('label', function () { return __nccwpck_require__(3360); }); +exposeFormat('logstash', function () { return __nccwpck_require__(2851); }); +exposeFormat('metadata', function () { return __nccwpck_require__(6609); }); +exposeFormat('ms', function () { return __nccwpck_require__(5720); }); +exposeFormat('padLevels', function () { return __nccwpck_require__(2159); }); +exposeFormat('prettyPrint', function () { return __nccwpck_require__(530); }); +exposeFormat('printf', function () { return __nccwpck_require__(5643); }); +exposeFormat('simple', function () { return __nccwpck_require__(1986); }); +exposeFormat('splat', function () { return __nccwpck_require__(8018); }); +exposeFormat('timestamp', function () { return __nccwpck_require__(1498); }); +exposeFormat('uncolorize', function () { return __nccwpck_require__(1144); }); /***/ }), -/***/ 8300: +/***/ 6810: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const format = __nccwpck_require__(9097); -const { MESSAGE } = __nccwpck_require__(1544); -const stringify = __nccwpck_require__(3831); +const format = __nccwpck_require__(8259); +const { MESSAGE } = __nccwpck_require__(1255); +const stringify = __nccwpck_require__(4450); /* * function replacer (key, value) @@ -21554,12 +20999,12 @@ module.exports = format((info, opts) => { /***/ }), -/***/ 5586: +/***/ 3360: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const format = __nccwpck_require__(9097); +const format = __nccwpck_require__(8259); /* * function label (info) @@ -21580,12 +21025,12 @@ module.exports = format((info, opts) => { /***/ }), -/***/ 8641: +/***/ 2855: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { Colorizer } = __nccwpck_require__(7713); +const { Colorizer } = __nccwpck_require__(5491); /* * Simple method to register colors with a simpler require @@ -21599,14 +21044,14 @@ module.exports = config => { /***/ }), -/***/ 3213: +/***/ 2851: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const format = __nccwpck_require__(9097); -const { MESSAGE } = __nccwpck_require__(1544); -const jsonStringify = __nccwpck_require__(3831); +const format = __nccwpck_require__(8259); +const { MESSAGE } = __nccwpck_require__(1255); +const jsonStringify = __nccwpck_require__(4450); /* * function logstash (info) @@ -21635,12 +21080,12 @@ module.exports = format(info => { /***/ }), -/***/ 5219: +/***/ 6609: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const format = __nccwpck_require__(9097); +const format = __nccwpck_require__(8259); function fillExcept(info, fillExceptKeys, metadataKey) { const savedKeys = fillExceptKeys.reduce((acc, key) => { @@ -21703,13 +21148,13 @@ module.exports = format((info, opts = {}) => { /***/ }), -/***/ 862: +/***/ 5720: /***/ (function(module, __unused_webpack_exports, __nccwpck_require__) { -const format = __nccwpck_require__(9097); -const ms = __nccwpck_require__(5900); +const format = __nccwpck_require__(8259); +const ms = __nccwpck_require__(6987); /* * function ms (info) @@ -21728,13 +21173,13 @@ module.exports = format(info => { /***/ }), -/***/ 1921: +/***/ 2159: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /* eslint no-unused-vars: 0 */ -const { configs, LEVEL, MESSAGE } = __nccwpck_require__(1544); +const { configs, LEVEL, MESSAGE } = __nccwpck_require__(1255); class Padder { constructor(opts = { levels: configs.npm.levels }) { @@ -21818,14 +21263,14 @@ module.exports.Padder /***/ }), -/***/ 7512: +/***/ 530: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const inspect = (__nccwpck_require__(9023).inspect); -const format = __nccwpck_require__(9097); -const { LEVEL, MESSAGE, SPLAT } = __nccwpck_require__(1544); +const format = __nccwpck_require__(8259); +const { LEVEL, MESSAGE, SPLAT } = __nccwpck_require__(1255); /* * function prettyPrint (info) @@ -21854,12 +21299,12 @@ module.exports = format((info, opts = {}) => { /***/ }), -/***/ 6353: +/***/ 5643: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { MESSAGE } = __nccwpck_require__(1544); +const { MESSAGE } = __nccwpck_require__(1255); class Printf { constructor(templateFn) { @@ -21887,15 +21332,15 @@ module.exports.Printf /***/ }), -/***/ 9200: +/***/ 1986: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /* eslint no-undefined: 0 */ -const format = __nccwpck_require__(9097); -const { MESSAGE } = __nccwpck_require__(1544); -const jsonStringify = __nccwpck_require__(3831); +const format = __nccwpck_require__(8259); +const { MESSAGE } = __nccwpck_require__(1255); +const jsonStringify = __nccwpck_require__(4450); /* * function simple (info) @@ -21927,13 +21372,13 @@ module.exports = format(info => { /***/ }), -/***/ 4420: +/***/ 8018: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const util = __nccwpck_require__(9023); -const { SPLAT } = __nccwpck_require__(1544); +const { SPLAT } = __nccwpck_require__(1255); /** * Captures the number of format (i.e. %s strings) in a given string. @@ -22066,13 +21511,13 @@ module.exports = opts => new Splatter(opts); /***/ }), -/***/ 76: +/***/ 1498: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const fecha = __nccwpck_require__(4112); -const format = __nccwpck_require__(9097); +const fecha = __nccwpck_require__(6701); +const format = __nccwpck_require__(8259); /* * function timestamp (info) @@ -22103,14 +21548,14 @@ module.exports = format((info, opts = {}) => { /***/ }), -/***/ 810: +/***/ 1144: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const colors = __nccwpck_require__(6040); -const format = __nccwpck_require__(9097); -const { MESSAGE } = __nccwpck_require__(1544); +const colors = __nccwpck_require__(6457); +const format = __nccwpck_require__(8259); +const { MESSAGE } = __nccwpck_require__(1255); /* * function uncolorize (info) @@ -22137,7 +21582,7 @@ module.exports = format((info, opts) => { /***/ }), -/***/ 8629: +/***/ 4197: /***/ ((module) => { @@ -22148,7 +21593,7 @@ module.exports = Math.abs; /***/ }), -/***/ 3127: +/***/ 4455: /***/ ((module) => { @@ -22159,7 +21604,7 @@ module.exports = Math.floor; /***/ }), -/***/ 4800: +/***/ 6128: /***/ ((module) => { @@ -22172,7 +21617,7 @@ module.exports = Number.isNaN || function isNaN(a) { /***/ }), -/***/ 2079: +/***/ 1295: /***/ ((module) => { @@ -22183,7 +21628,7 @@ module.exports = Math.max; /***/ }), -/***/ 1381: +/***/ 6949: /***/ ((module) => { @@ -22194,7 +21639,7 @@ module.exports = Math.min; /***/ }), -/***/ 7375: +/***/ 2943: /***/ ((module) => { @@ -22205,7 +21650,7 @@ module.exports = Math.pow; /***/ }), -/***/ 393: +/***/ 1721: /***/ ((module) => { @@ -22216,12 +21661,12 @@ module.exports = Math.round; /***/ }), -/***/ 800: +/***/ 3536: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var $isNaN = __nccwpck_require__(4800); +var $isNaN = __nccwpck_require__(6128); /** @type {import('./sign')} */ module.exports = function sign(number) { @@ -22234,7 +21679,7 @@ module.exports = function sign(number) { /***/ }), -/***/ 6606: +/***/ 4031: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -22385,15 +21830,15 @@ function pauseStreams (streams, options) { /***/ }), -/***/ 7805: +/***/ 9555: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const util = __nccwpck_require__(9023); -const braces = __nccwpck_require__(7120); -const picomatch = __nccwpck_require__(9853); -const utils = __nccwpck_require__(6784); +const braces = __nccwpck_require__(8671); +const picomatch = __nccwpck_require__(3268); +const utils = __nccwpck_require__(3753); const isEmptyString = v => v === '' || v === './'; const hasBraces = v => { @@ -22866,17 +22311,449 @@ module.exports = micromatch; /***/ }), -/***/ 9853: +/***/ 7331: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { +/*! + * mime-db + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2015-2022 Douglas Christopher Wilson + * MIT Licensed + */ + +/** + * Module exports. + */ + +module.exports = __nccwpck_require__(2087) + + +/***/ }), + +/***/ 2574: +/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { + +/*! + * mime-types + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2015 Douglas Christopher Wilson + * MIT Licensed + */ + + + +/** + * Module dependencies. + * @private + */ + +var db = __nccwpck_require__(7331) +var extname = (__nccwpck_require__(6928).extname) + +/** + * Module variables. + * @private + */ + +var EXTRACT_TYPE_REGEXP = /^\s*([^;\s]*)(?:;|\s|$)/ +var TEXT_TYPE_REGEXP = /^text\//i + +/** + * Module exports. + * @public + */ + +exports.charset = charset +exports.charsets = { lookup: charset } +exports.contentType = contentType +exports.extension = extension +exports.extensions = Object.create(null) +exports.lookup = lookup +exports.types = Object.create(null) + +// Populate the extensions/types maps +populateMaps(exports.extensions, exports.types) + +/** + * Get the default charset for a MIME type. + * + * @param {string} type + * @return {boolean|string} + */ + +function charset (type) { + if (!type || typeof type !== 'string') { + return false + } + + // TODO: use media-typer + var match = EXTRACT_TYPE_REGEXP.exec(type) + var mime = match && db[match[1].toLowerCase()] + + if (mime && mime.charset) { + return mime.charset + } + + // default text/* to utf-8 + if (match && TEXT_TYPE_REGEXP.test(match[1])) { + return 'UTF-8' + } + + return false +} + +/** + * Create a full Content-Type header given a MIME type or extension. + * + * @param {string} str + * @return {boolean|string} + */ + +function contentType (str) { + // TODO: should this even be in this module? + if (!str || typeof str !== 'string') { + return false + } + + var mime = str.indexOf('/') === -1 + ? exports.lookup(str) + : str + + if (!mime) { + return false + } + + // TODO: use content-type or other module + if (mime.indexOf('charset') === -1) { + var charset = exports.charset(mime) + if (charset) mime += '; charset=' + charset.toLowerCase() + } + + return mime +} + +/** + * Get the default extension for a MIME type. + * + * @param {string} type + * @return {boolean|string} + */ + +function extension (type) { + if (!type || typeof type !== 'string') { + return false + } + + // TODO: use media-typer + var match = EXTRACT_TYPE_REGEXP.exec(type) + + // get extensions + var exts = match && exports.extensions[match[1].toLowerCase()] + + if (!exts || !exts.length) { + return false + } + + return exts[0] +} + +/** + * Lookup the MIME type for a file path/extension. + * + * @param {string} path + * @return {boolean|string} + */ + +function lookup (path) { + if (!path || typeof path !== 'string') { + return false + } + + // get the extension ("ext" or ".ext" or full path) + var extension = extname('x.' + path) + .toLowerCase() + .substr(1) + + if (!extension) { + return false + } + + return exports.types[extension] || false +} + +/** + * Populate the extensions and types maps. + * @private + */ + +function populateMaps (extensions, types) { + // source preference (least -> most) + var preference = ['nginx', 'apache', undefined, 'iana'] + + Object.keys(db).forEach(function forEachMimeType (type) { + var mime = db[type] + var exts = mime.extensions + + if (!exts || !exts.length) { + return + } + + // mime -> extensions + extensions[type] = exts + + // extension -> mime + for (var i = 0; i < exts.length; i++) { + var extension = exts[i] + + if (types[extension]) { + var from = preference.indexOf(db[types[extension]].source) + var to = preference.indexOf(mime.source) + + if (types[extension] !== 'application/octet-stream' && + (from > to || (from === to && types[extension].substr(0, 12) === 'application/'))) { + // skip the remapping + continue + } + } + + // set the extension -> mime + types[extension] = type + } + }) +} + + +/***/ }), + +/***/ 6987: +/***/ ((module) => { + +/** + * Helpers. + */ + +var s = 1000; +var m = s * 60; +var h = m * 60; +var d = h * 24; +var w = d * 7; +var y = d * 365.25; + +/** + * Parse or format the given `val`. + * + * Options: + * + * - `long` verbose formatting [false] + * + * @param {String|Number} val + * @param {Object} [options] + * @throws {Error} throw an error if val is not a non-empty string or a number + * @return {String|Number} + * @api public + */ + +module.exports = function (val, options) { + options = options || {}; + var type = typeof val; + if (type === 'string' && val.length > 0) { + return parse(val); + } else if (type === 'number' && isFinite(val)) { + return options.long ? fmtLong(val) : fmtShort(val); + } + throw new Error( + 'val is not a non-empty string or a valid number. val=' + + JSON.stringify(val) + ); +}; + +/** + * Parse the given `str` and return milliseconds. + * + * @param {String} str + * @return {Number} + * @api private + */ + +function parse(str) { + str = String(str); + if (str.length > 100) { + return; + } + var match = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec( + str + ); + if (!match) { + return; + } + var n = parseFloat(match[1]); + var type = (match[2] || 'ms').toLowerCase(); + switch (type) { + case 'years': + case 'year': + case 'yrs': + case 'yr': + case 'y': + return n * y; + case 'weeks': + case 'week': + case 'w': + return n * w; + case 'days': + case 'day': + case 'd': + return n * d; + case 'hours': + case 'hour': + case 'hrs': + case 'hr': + case 'h': + return n * h; + case 'minutes': + case 'minute': + case 'mins': + case 'min': + case 'm': + return n * m; + case 'seconds': + case 'second': + case 'secs': + case 'sec': + case 's': + return n * s; + case 'milliseconds': + case 'millisecond': + case 'msecs': + case 'msec': + case 'ms': + return n; + default: + return undefined; + } +} + +/** + * Short format for `ms`. + * + * @param {Number} ms + * @return {String} + * @api private + */ +function fmtShort(ms) { + var msAbs = Math.abs(ms); + if (msAbs >= d) { + return Math.round(ms / d) + 'd'; + } + if (msAbs >= h) { + return Math.round(ms / h) + 'h'; + } + if (msAbs >= m) { + return Math.round(ms / m) + 'm'; + } + if (msAbs >= s) { + return Math.round(ms / s) + 's'; + } + return ms + 'ms'; +} + +/** + * Long format for `ms`. + * + * @param {Number} ms + * @return {String} + * @api private + */ + +function fmtLong(ms) { + var msAbs = Math.abs(ms); + if (msAbs >= d) { + return plural(ms, msAbs, d, 'day'); + } + if (msAbs >= h) { + return plural(ms, msAbs, h, 'hour'); + } + if (msAbs >= m) { + return plural(ms, msAbs, m, 'minute'); + } + if (msAbs >= s) { + return plural(ms, msAbs, s, 'second'); + } + return ms + ' ms'; +} -module.exports = __nccwpck_require__(9448); +/** + * Pluralization helper. + */ + +function plural(ms, msAbs, n, name) { + var isPlural = msAbs >= n * 1.5; + return Math.round(ms / n) + ' ' + name + (isPlural ? 's' : ''); +} /***/ }), -/***/ 332: +/***/ 9224: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + + + +var name = __nccwpck_require__(7365); + +/** + * Wrap callbacks to prevent double execution. + * + * @param {Function} fn Function that should only be called once. + * @returns {Function} A wrapped callback which prevents multiple executions. + * @public + */ +module.exports = function one(fn) { + var called = 0 + , value; + + /** + * The function that prevents double execution. + * + * @private + */ + function onetime() { + if (called) return value; + + called = 1; + value = fn.apply(this, arguments); + fn = null; + + return value; + } + + // + // To make debugging more easy we want to use the name of the supplied + // function. So when you look at the functions that are assigned to event + // listeners you don't see a load of `onetime` functions but actually the + // names of the functions that this module will call. + // + // NOTE: We cannot override the `name` property, as that is `readOnly` + // property, so displayName will have to do. + // + onetime.displayName = name(fn); + return onetime; +}; + + +/***/ }), + +/***/ 3268: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + + + +module.exports = __nccwpck_require__(1614); + + +/***/ }), + +/***/ 1237: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -22885,6 +22762,8 @@ const path = __nccwpck_require__(6928); const WIN_SLASH = '\\\\/'; const WIN_NO_SLASH = `[^${WIN_SLASH}]`; +const DEFAULT_MAX_EXTGLOB_RECURSION = 0; + /** * Posix glob regex */ @@ -22948,6 +22827,7 @@ const WINDOWS_CHARS = { */ const POSIX_REGEX_SOURCE = { + __proto__: null, alnum: 'a-zA-Z0-9', alpha: 'a-zA-Z', ascii: '\\x00-\\x7F', @@ -22965,6 +22845,7 @@ const POSIX_REGEX_SOURCE = { }; module.exports = { + DEFAULT_MAX_EXTGLOB_RECURSION, MAX_LENGTH: 1024 * 64, POSIX_REGEX_SOURCE, @@ -22978,6 +22859,7 @@ module.exports = { // Replace globs with equivalent patterns to reduce parsing time. REPLACEMENTS: { + __proto__: null, '***': '*', '**/**': '**', '**/**/**': '**' @@ -23062,13 +22944,13 @@ module.exports = { /***/ }), -/***/ 7898: +/***/ 51: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const constants = __nccwpck_require__(332); -const utils = __nccwpck_require__(6784); +const constants = __nccwpck_require__(1237); +const utils = __nccwpck_require__(3753); /** * Constants @@ -23112,6 +22994,277 @@ const syntaxError = (type, char) => { return `Missing ${type}: "${char}" - use "\\\\${char}" to match literal characters`; }; +const splitTopLevel = input => { + const parts = []; + let bracket = 0; + let paren = 0; + let quote = 0; + let value = ''; + let escaped = false; + + for (const ch of input) { + if (escaped === true) { + value += ch; + escaped = false; + continue; + } + + if (ch === '\\') { + value += ch; + escaped = true; + continue; + } + + if (ch === '"') { + quote = quote === 1 ? 0 : 1; + value += ch; + continue; + } + + if (quote === 0) { + if (ch === '[') { + bracket++; + } else if (ch === ']' && bracket > 0) { + bracket--; + } else if (bracket === 0) { + if (ch === '(') { + paren++; + } else if (ch === ')' && paren > 0) { + paren--; + } else if (ch === '|' && paren === 0) { + parts.push(value); + value = ''; + continue; + } + } + } + + value += ch; + } + + parts.push(value); + return parts; +}; + +const isPlainBranch = branch => { + let escaped = false; + + for (const ch of branch) { + if (escaped === true) { + escaped = false; + continue; + } + + if (ch === '\\') { + escaped = true; + continue; + } + + if (/[?*+@!()[\]{}]/.test(ch)) { + return false; + } + } + + return true; +}; + +const normalizeSimpleBranch = branch => { + let value = branch.trim(); + let changed = true; + + while (changed === true) { + changed = false; + + if (/^@\([^\\()[\]{}|]+\)$/.test(value)) { + value = value.slice(2, -1); + changed = true; + } + } + + if (!isPlainBranch(value)) { + return; + } + + return value.replace(/\\(.)/g, '$1'); +}; + +const hasRepeatedCharPrefixOverlap = branches => { + const values = branches.map(normalizeSimpleBranch).filter(Boolean); + + for (let i = 0; i < values.length; i++) { + for (let j = i + 1; j < values.length; j++) { + const a = values[i]; + const b = values[j]; + const char = a[0]; + + if (!char || a !== char.repeat(a.length) || b !== char.repeat(b.length)) { + continue; + } + + if (a === b || a.startsWith(b) || b.startsWith(a)) { + return true; + } + } + } + + return false; +}; + +const parseRepeatedExtglob = (pattern, requireEnd = true) => { + if ((pattern[0] !== '+' && pattern[0] !== '*') || pattern[1] !== '(') { + return; + } + + let bracket = 0; + let paren = 0; + let quote = 0; + let escaped = false; + + for (let i = 1; i < pattern.length; i++) { + const ch = pattern[i]; + + if (escaped === true) { + escaped = false; + continue; + } + + if (ch === '\\') { + escaped = true; + continue; + } + + if (ch === '"') { + quote = quote === 1 ? 0 : 1; + continue; + } + + if (quote === 1) { + continue; + } + + if (ch === '[') { + bracket++; + continue; + } + + if (ch === ']' && bracket > 0) { + bracket--; + continue; + } + + if (bracket > 0) { + continue; + } + + if (ch === '(') { + paren++; + continue; + } + + if (ch === ')') { + paren--; + + if (paren === 0) { + if (requireEnd === true && i !== pattern.length - 1) { + return; + } + + return { + type: pattern[0], + body: pattern.slice(2, i), + end: i + }; + } + } + } +}; + +const getStarExtglobSequenceOutput = pattern => { + let index = 0; + const chars = []; + + while (index < pattern.length) { + const match = parseRepeatedExtglob(pattern.slice(index), false); + + if (!match || match.type !== '*') { + return; + } + + const branches = splitTopLevel(match.body).map(branch => branch.trim()); + if (branches.length !== 1) { + return; + } + + const branch = normalizeSimpleBranch(branches[0]); + if (!branch || branch.length !== 1) { + return; + } + + chars.push(branch); + index += match.end + 1; + } + + if (chars.length < 1) { + return; + } + + const source = chars.length === 1 + ? utils.escapeRegex(chars[0]) + : `[${chars.map(ch => utils.escapeRegex(ch)).join('')}]`; + + return `${source}*`; +}; + +const repeatedExtglobRecursion = pattern => { + let depth = 0; + let value = pattern.trim(); + let match = parseRepeatedExtglob(value); + + while (match) { + depth++; + value = match.body.trim(); + match = parseRepeatedExtglob(value); + } + + return depth; +}; + +const analyzeRepeatedExtglob = (body, options) => { + if (options.maxExtglobRecursion === false) { + return { risky: false }; + } + + const max = + typeof options.maxExtglobRecursion === 'number' + ? options.maxExtglobRecursion + : constants.DEFAULT_MAX_EXTGLOB_RECURSION; + + const branches = splitTopLevel(body).map(branch => branch.trim()); + + if (branches.length > 1) { + if ( + branches.some(branch => branch === '') || + branches.some(branch => /^[*?]+$/.test(branch)) || + hasRepeatedCharPrefixOverlap(branches) + ) { + return { risky: true }; + } + } + + for (const branch of branches) { + const safeOutput = getStarExtglobSequenceOutput(branch); + if (safeOutput) { + return { risky: true, safeOutput }; + } + + if (repeatedExtglobRecursion(branch) > max) { + return { risky: true }; + } + } + + return { risky: false }; +}; + /** * Parse the given input string. * @param {String} input @@ -23293,6 +23446,8 @@ const parse = (input, options) => { token.prev = prev; token.parens = state.parens; token.output = state.output; + token.startIndex = state.index; + token.tokensIndex = tokens.length; const output = (opts.capture ? '(' : '') + token.open; increment('parens'); @@ -23302,6 +23457,34 @@ const parse = (input, options) => { }; const extglobClose = token => { + const literal = input.slice(token.startIndex, state.index + 1); + const body = input.slice(token.startIndex + 2, state.index); + const analysis = analyzeRepeatedExtglob(body, opts); + + if ((token.type === 'plus' || token.type === 'star') && analysis.risky) { + const safeOutput = analysis.safeOutput + ? (token.output ? '' : ONE_CHAR) + (opts.capture ? `(${analysis.safeOutput})` : analysis.safeOutput) + : undefined; + const open = tokens[token.tokensIndex]; + + open.type = 'text'; + open.value = literal; + open.output = safeOutput || utils.escapeRegex(literal); + + for (let i = token.tokensIndex + 1; i < tokens.length; i++) { + tokens[i].value = ''; + tokens[i].output = ''; + delete tokens[i].suffix; + } + + state.output = token.output + open.output; + state.backtrack = true; + + push({ type: 'paren', extglob: true, value, output: '' }); + decrement('parens'); + return; + } + let output = token.close + (opts.capture ? ')' : ''); let rest; @@ -24160,16 +24343,16 @@ module.exports = parse; /***/ }), -/***/ 9448: +/***/ 1614: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const path = __nccwpck_require__(6928); -const scan = __nccwpck_require__(7992); -const parse = __nccwpck_require__(7898); -const utils = __nccwpck_require__(6784); -const constants = __nccwpck_require__(332); +const scan = __nccwpck_require__(3999); +const parse = __nccwpck_require__(51); +const utils = __nccwpck_require__(3753); +const constants = __nccwpck_require__(1237); const isObject = val => val && typeof val === 'object' && !Array.isArray(val); /** @@ -24509,12 +24692,12 @@ module.exports = picomatch; /***/ }), -/***/ 7992: +/***/ 3999: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const utils = __nccwpck_require__(6784); +const utils = __nccwpck_require__(3753); const { CHAR_ASTERISK, /* * */ CHAR_AT, /* @ */ @@ -24531,7 +24714,7 @@ const { CHAR_RIGHT_CURLY_BRACE, /* } */ CHAR_RIGHT_PARENTHESES, /* ) */ CHAR_RIGHT_SQUARE_BRACKET /* ] */ -} = __nccwpck_require__(332); +} = __nccwpck_require__(1237); const isPathSeparator = code => { return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH; @@ -24907,7 +25090,7 @@ module.exports = scan; /***/ }), -/***/ 6784: +/***/ 3753: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -24919,7 +25102,7 @@ const { REGEX_REMOVE_BACKSLASH, REGEX_SPECIAL_CHARS, REGEX_SPECIAL_CHARS_GLOBAL -} = __nccwpck_require__(332); +} = __nccwpck_require__(1237); exports.isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val); exports.hasRegexChars = str => REGEX_SPECIAL_CHARS.test(str); @@ -24978,225 +25161,7 @@ exports.wrapOutput = (input, state = {}, options = {}) => { /***/ }), -/***/ 5900: -/***/ ((module) => { - -/** - * Helpers. - */ - -var s = 1000; -var m = s * 60; -var h = m * 60; -var d = h * 24; -var w = d * 7; -var y = d * 365.25; - -/** - * Parse or format the given `val`. - * - * Options: - * - * - `long` verbose formatting [false] - * - * @param {String|Number} val - * @param {Object} [options] - * @throws {Error} throw an error if val is not a non-empty string or a number - * @return {String|Number} - * @api public - */ - -module.exports = function (val, options) { - options = options || {}; - var type = typeof val; - if (type === 'string' && val.length > 0) { - return parse(val); - } else if (type === 'number' && isFinite(val)) { - return options.long ? fmtLong(val) : fmtShort(val); - } - throw new Error( - 'val is not a non-empty string or a valid number. val=' + - JSON.stringify(val) - ); -}; - -/** - * Parse the given `str` and return milliseconds. - * - * @param {String} str - * @return {Number} - * @api private - */ - -function parse(str) { - str = String(str); - if (str.length > 100) { - return; - } - var match = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec( - str - ); - if (!match) { - return; - } - var n = parseFloat(match[1]); - var type = (match[2] || 'ms').toLowerCase(); - switch (type) { - case 'years': - case 'year': - case 'yrs': - case 'yr': - case 'y': - return n * y; - case 'weeks': - case 'week': - case 'w': - return n * w; - case 'days': - case 'day': - case 'd': - return n * d; - case 'hours': - case 'hour': - case 'hrs': - case 'hr': - case 'h': - return n * h; - case 'minutes': - case 'minute': - case 'mins': - case 'min': - case 'm': - return n * m; - case 'seconds': - case 'second': - case 'secs': - case 'sec': - case 's': - return n * s; - case 'milliseconds': - case 'millisecond': - case 'msecs': - case 'msec': - case 'ms': - return n; - default: - return undefined; - } -} - -/** - * Short format for `ms`. - * - * @param {Number} ms - * @return {String} - * @api private - */ - -function fmtShort(ms) { - var msAbs = Math.abs(ms); - if (msAbs >= d) { - return Math.round(ms / d) + 'd'; - } - if (msAbs >= h) { - return Math.round(ms / h) + 'h'; - } - if (msAbs >= m) { - return Math.round(ms / m) + 'm'; - } - if (msAbs >= s) { - return Math.round(ms / s) + 's'; - } - return ms + 'ms'; -} - -/** - * Long format for `ms`. - * - * @param {Number} ms - * @return {String} - * @api private - */ - -function fmtLong(ms) { - var msAbs = Math.abs(ms); - if (msAbs >= d) { - return plural(ms, msAbs, d, 'day'); - } - if (msAbs >= h) { - return plural(ms, msAbs, h, 'hour'); - } - if (msAbs >= m) { - return plural(ms, msAbs, m, 'minute'); - } - if (msAbs >= s) { - return plural(ms, msAbs, s, 'second'); - } - return ms + ' ms'; -} - -/** - * Pluralization helper. - */ - -function plural(ms, msAbs, n, name) { - var isPlural = msAbs >= n * 1.5; - return Math.round(ms / n) + ' ' + name + (isPlural ? 's' : ''); -} - - -/***/ }), - -/***/ 254: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -var name = __nccwpck_require__(3469); - -/** - * Wrap callbacks to prevent double execution. - * - * @param {Function} fn Function that should only be called once. - * @returns {Function} A wrapped callback which prevents multiple executions. - * @public - */ -module.exports = function one(fn) { - var called = 0 - , value; - - /** - * The function that prevents double execution. - * - * @private - */ - function onetime() { - if (called) return value; - - called = 1; - value = fn.apply(this, arguments); - fn = null; - - return value; - } - - // - // To make debugging more easy we want to use the name of the supplied - // function. So when you look at the functions that are assigned to event - // listeners you don't see a load of `onetime` functions but actually the - // names of the functions that this module will call. - // - // NOTE: We cannot override the `name` property, as that is `readOnly` - // property, so displayName will have to do. - // - onetime.displayName = name(fn); - return onetime; -}; - - -/***/ }), - -/***/ 1843: +/***/ 1989: /***/ ((module) => { /*! queue-microtask. MIT License. Feross Aboukhadijeh */ @@ -25212,7 +25177,7 @@ module.exports = typeof queueMicrotask === 'function' /***/ }), -/***/ 8672: +/***/ 6307: /***/ ((module) => { @@ -25335,7 +25300,7 @@ module.exports.F = codes; /***/ }), -/***/ 4139: +/***/ 3396: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Copyright Joyent, Inc. and other Node contributors. @@ -25375,9 +25340,9 @@ var objectKeys = Object.keys || function (obj) { /**/ module.exports = Duplex; -var Readable = __nccwpck_require__(3881); -var Writable = __nccwpck_require__(6233); -__nccwpck_require__(8090)(Duplex, Readable); +var Readable = __nccwpck_require__(4458); +var Writable = __nccwpck_require__(5422); +__nccwpck_require__(8013)(Duplex, Readable); { // Allow the keys array to be GC'ed. var keys = objectKeys(Writable.prototype); @@ -25467,7 +25432,7 @@ Object.defineProperty(Duplex.prototype, 'destroyed', { /***/ }), -/***/ 8887: +/***/ 7550: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Copyright Joyent, Inc. and other Node contributors. @@ -25498,8 +25463,8 @@ Object.defineProperty(Duplex.prototype, 'destroyed', { module.exports = PassThrough; -var Transform = __nccwpck_require__(8509); -__nccwpck_require__(8090)(PassThrough, Transform); +var Transform = __nccwpck_require__(7588); +__nccwpck_require__(8013)(PassThrough, Transform); function PassThrough(options) { if (!(this instanceof PassThrough)) return new PassThrough(options); Transform.call(this, options); @@ -25510,7 +25475,7 @@ PassThrough.prototype._transform = function (chunk, encoding, cb) { /***/ }), -/***/ 3881: +/***/ 4458: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Copyright Joyent, Inc. and other Node contributors. @@ -25552,7 +25517,7 @@ var EElistenerCount = function EElistenerCount(emitter, type) { /**/ /**/ -var Stream = __nccwpck_require__(4359); +var Stream = __nccwpck_require__(4986); /**/ var Buffer = (__nccwpck_require__(181).Buffer); @@ -25574,11 +25539,11 @@ if (debugUtil && debugUtil.debuglog) { } /**/ -var BufferList = __nccwpck_require__(3316); -var destroyImpl = __nccwpck_require__(8773); -var _require = __nccwpck_require__(2278), +var BufferList = __nccwpck_require__(9567); +var destroyImpl = __nccwpck_require__(5466); +var _require = __nccwpck_require__(5349), getHighWaterMark = _require.getHighWaterMark; -var _require$codes = (__nccwpck_require__(8672)/* .codes */ .F), +var _require$codes = (__nccwpck_require__(6307)/* .codes */ .F), ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE, ERR_STREAM_PUSH_AFTER_EOF = _require$codes.ERR_STREAM_PUSH_AFTER_EOF, ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED, @@ -25588,7 +25553,7 @@ var _require$codes = (__nccwpck_require__(8672)/* .codes */ .F), var StringDecoder; var createReadableStreamAsyncIterator; var from; -__nccwpck_require__(8090)(Readable, Stream); +__nccwpck_require__(8013)(Readable, Stream); var errorOrDestroy = destroyImpl.errorOrDestroy; var kProxyEvents = ['error', 'close', 'destroy', 'pause', 'resume']; function prependListener(emitter, event, fn) { @@ -25603,7 +25568,7 @@ function prependListener(emitter, event, fn) { if (!emitter._events || !emitter._events[event]) emitter.on(event, fn);else if (Array.isArray(emitter._events[event])) emitter._events[event].unshift(fn);else emitter._events[event] = [fn, emitter._events[event]]; } function ReadableState(options, stream, isDuplex) { - Duplex = Duplex || __nccwpck_require__(4139); + Duplex = Duplex || __nccwpck_require__(3396); options = options || {}; // Duplex streams are both readable and writable, but share @@ -25670,13 +25635,13 @@ function ReadableState(options, stream, isDuplex) { this.decoder = null; this.encoding = null; if (options.encoding) { - if (!StringDecoder) StringDecoder = (__nccwpck_require__(3062)/* .StringDecoder */ .I); + if (!StringDecoder) StringDecoder = (__nccwpck_require__(7319)/* .StringDecoder */ .I); this.decoder = new StringDecoder(options.encoding); this.encoding = options.encoding; } } function Readable(options) { - Duplex = Duplex || __nccwpck_require__(4139); + Duplex = Duplex || __nccwpck_require__(3396); if (!(this instanceof Readable)) return new Readable(options); // Checking for a Stream.Duplex instance is faster here instead of inside @@ -25813,7 +25778,7 @@ Readable.prototype.isPaused = function () { // backwards compatibility. Readable.prototype.setEncoding = function (enc) { - if (!StringDecoder) StringDecoder = (__nccwpck_require__(3062)/* .StringDecoder */ .I); + if (!StringDecoder) StringDecoder = (__nccwpck_require__(7319)/* .StringDecoder */ .I); var decoder = new StringDecoder(enc); this._readableState.decoder = decoder; // If setEncoding(null), decoder.encoding equals utf8 @@ -26432,7 +26397,7 @@ Readable.prototype.wrap = function (stream) { if (typeof Symbol === 'function') { Readable.prototype[Symbol.asyncIterator] = function () { if (createReadableStreamAsyncIterator === undefined) { - createReadableStreamAsyncIterator = __nccwpck_require__(8528); + createReadableStreamAsyncIterator = __nccwpck_require__(9089); } return createReadableStreamAsyncIterator(this); }; @@ -26529,7 +26494,7 @@ function endReadableNT(state, stream) { if (typeof Symbol === 'function') { Readable.from = function (iterable, opts) { if (from === undefined) { - from = __nccwpck_require__(6135); + from = __nccwpck_require__(7354); } return from(Readable, iterable, opts); }; @@ -26543,7 +26508,7 @@ function indexOf(xs, x) { /***/ }), -/***/ 8509: +/***/ 7588: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Copyright Joyent, Inc. and other Node contributors. @@ -26612,13 +26577,13 @@ function indexOf(xs, x) { module.exports = Transform; -var _require$codes = (__nccwpck_require__(8672)/* .codes */ .F), +var _require$codes = (__nccwpck_require__(6307)/* .codes */ .F), ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED, ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK, ERR_TRANSFORM_ALREADY_TRANSFORMING = _require$codes.ERR_TRANSFORM_ALREADY_TRANSFORMING, ERR_TRANSFORM_WITH_LENGTH_0 = _require$codes.ERR_TRANSFORM_WITH_LENGTH_0; -var Duplex = __nccwpck_require__(4139); -__nccwpck_require__(8090)(Transform, Duplex); +var Duplex = __nccwpck_require__(3396); +__nccwpck_require__(8013)(Transform, Duplex); function afterTransform(er, data) { var ts = this._transformState; ts.transforming = false; @@ -26739,7 +26704,7 @@ function done(stream, er, data) { /***/ }), -/***/ 6233: +/***/ 5422: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Copyright Joyent, Inc. and other Node contributors. @@ -26799,12 +26764,12 @@ Writable.WritableState = WritableState; /**/ var internalUtil = { - deprecate: __nccwpck_require__(1436) + deprecate: __nccwpck_require__(7260) }; /**/ /**/ -var Stream = __nccwpck_require__(4359); +var Stream = __nccwpck_require__(4986); /**/ var Buffer = (__nccwpck_require__(181).Buffer); @@ -26815,10 +26780,10 @@ function _uint8ArrayToBuffer(chunk) { function _isUint8Array(obj) { return Buffer.isBuffer(obj) || obj instanceof OurUint8Array; } -var destroyImpl = __nccwpck_require__(8773); -var _require = __nccwpck_require__(2278), +var destroyImpl = __nccwpck_require__(5466); +var _require = __nccwpck_require__(5349), getHighWaterMark = _require.getHighWaterMark; -var _require$codes = (__nccwpck_require__(8672)/* .codes */ .F), +var _require$codes = (__nccwpck_require__(6307)/* .codes */ .F), ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE, ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED, ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK, @@ -26828,10 +26793,10 @@ var _require$codes = (__nccwpck_require__(8672)/* .codes */ .F), ERR_STREAM_WRITE_AFTER_END = _require$codes.ERR_STREAM_WRITE_AFTER_END, ERR_UNKNOWN_ENCODING = _require$codes.ERR_UNKNOWN_ENCODING; var errorOrDestroy = destroyImpl.errorOrDestroy; -__nccwpck_require__(8090)(Writable, Stream); +__nccwpck_require__(8013)(Writable, Stream); function nop() {} function WritableState(options, stream, isDuplex) { - Duplex = Duplex || __nccwpck_require__(4139); + Duplex = Duplex || __nccwpck_require__(3396); options = options || {}; // Duplex streams are both readable and writable, but share @@ -26973,7 +26938,7 @@ if (typeof Symbol === 'function' && Symbol.hasInstance && typeof Function.protot }; } function Writable(options) { - Duplex = Duplex || __nccwpck_require__(4139); + Duplex = Duplex || __nccwpck_require__(3396); // Writable ctor is applied to Duplexes, too. // `realHasInstance` is necessary because using plain `instanceof` @@ -27386,7 +27351,7 @@ Writable.prototype._destroy = function (err, cb) { /***/ }), -/***/ 8528: +/***/ 9089: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -27395,7 +27360,7 @@ var _Object$setPrototypeO; function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); } function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -var finished = __nccwpck_require__(7491); +var finished = __nccwpck_require__(9376); var kLastResolve = Symbol('lastResolve'); var kLastReject = Symbol('lastReject'); var kError = Symbol('error'); @@ -27572,7 +27537,7 @@ module.exports = createReadableStreamAsyncIterator; /***/ }), -/***/ 3316: +/***/ 9567: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -27761,7 +27726,7 @@ module.exports = /*#__PURE__*/function () { /***/ }), -/***/ 8773: +/***/ 5466: /***/ ((module) => { @@ -27863,7 +27828,7 @@ module.exports = { /***/ }), -/***/ 7491: +/***/ 9376: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Ported from https://github.com/mafintosh/end-of-stream with @@ -27871,7 +27836,7 @@ module.exports = { -var ERR_STREAM_PREMATURE_CLOSE = (__nccwpck_require__(8672)/* .codes */ .F).ERR_STREAM_PREMATURE_CLOSE; +var ERR_STREAM_PREMATURE_CLOSE = (__nccwpck_require__(6307)/* .codes */ .F).ERR_STREAM_PREMATURE_CLOSE; function once(callback) { var called = false; return function () { @@ -27955,7 +27920,7 @@ module.exports = eos; /***/ }), -/***/ 6135: +/***/ 7354: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -27967,7 +27932,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); } function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -var ERR_INVALID_ARG_TYPE = (__nccwpck_require__(8672)/* .codes */ .F).ERR_INVALID_ARG_TYPE; +var ERR_INVALID_ARG_TYPE = (__nccwpck_require__(6307)/* .codes */ .F).ERR_INVALID_ARG_TYPE; function from(Readable, iterable, opts) { var iterator; if (iterable && typeof iterable.next === 'function') { @@ -28014,7 +27979,7 @@ module.exports = from; /***/ }), -/***/ 7222: +/***/ 4924: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Ported from https://github.com/mafintosh/pump with @@ -28031,7 +27996,7 @@ function once(callback) { callback.apply(void 0, arguments); }; } -var _require$codes = (__nccwpck_require__(8672)/* .codes */ .F), +var _require$codes = (__nccwpck_require__(6307)/* .codes */ .F), ERR_MISSING_ARGS = _require$codes.ERR_MISSING_ARGS, ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED; function noop(err) { @@ -28047,7 +28012,7 @@ function destroyer(stream, reading, writing, callback) { stream.on('close', function () { closed = true; }); - if (eos === undefined) eos = __nccwpck_require__(7491); + if (eos === undefined) eos = __nccwpck_require__(9376); eos(stream, { readable: reading, writable: writing @@ -28106,12 +28071,12 @@ module.exports = pipeline; /***/ }), -/***/ 2278: +/***/ 5349: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var ERR_INVALID_OPT_VALUE = (__nccwpck_require__(8672)/* .codes */ .F).ERR_INVALID_OPT_VALUE; +var ERR_INVALID_OPT_VALUE = (__nccwpck_require__(6307)/* .codes */ .F).ERR_INVALID_OPT_VALUE; function highWaterMarkFrom(options, isDuplex, duplexKey) { return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null; } @@ -28134,7 +28099,7 @@ module.exports = { /***/ }), -/***/ 4359: +/***/ 4986: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { module.exports = __nccwpck_require__(2203); @@ -28142,7 +28107,7 @@ module.exports = __nccwpck_require__(2203); /***/ }), -/***/ 2727: +/***/ 436: /***/ ((module, exports, __nccwpck_require__) => { var Stream = __nccwpck_require__(2203); @@ -28151,21 +28116,21 @@ if (process.env.READABLE_STREAM === 'disable' && Stream) { Object.assign(module.exports, Stream); module.exports.Stream = Stream; } else { - exports = module.exports = __nccwpck_require__(3881); + exports = module.exports = __nccwpck_require__(4458); exports.Stream = Stream || exports; exports.Readable = exports; - exports.Writable = __nccwpck_require__(6233); - exports.Duplex = __nccwpck_require__(4139); - exports.Transform = __nccwpck_require__(8509); - exports.PassThrough = __nccwpck_require__(8887); - exports.finished = __nccwpck_require__(7491); - exports.pipeline = __nccwpck_require__(7222); + exports.Writable = __nccwpck_require__(5422); + exports.Duplex = __nccwpck_require__(3396); + exports.Transform = __nccwpck_require__(7588); + exports.PassThrough = __nccwpck_require__(7550); + exports.finished = __nccwpck_require__(9376); + exports.pipeline = __nccwpck_require__(4924); } /***/ }), -/***/ 4088: +/***/ 3728: /***/ ((module) => { @@ -28205,13 +28170,13 @@ module.exports = reusify /***/ }), -/***/ 347: +/***/ 7906: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*! run-parallel. MIT License. Feross Aboukhadijeh */ module.exports = runParallel -const queueMicrotask = __nccwpck_require__(1843) +const queueMicrotask = __nccwpck_require__(1989) function runParallel (tasks, cb) { let results, pending, keys @@ -28263,7 +28228,7 @@ function runParallel (tasks, cb) { /***/ }), -/***/ 5950: +/***/ 5725: /***/ ((module, exports, __nccwpck_require__) => { /*! safe-buffer. MIT License. Feross Aboukhadijeh */ @@ -28335,7 +28300,7 @@ SafeBuffer.allocUnsafeSlow = function (size) { /***/ }), -/***/ 3831: +/***/ 4450: /***/ ((module, exports) => { @@ -28967,7 +28932,7 @@ function configure (options) { /***/ }), -/***/ 6064: +/***/ 1546: /***/ ((__unused_webpack_module, exports) => { exports.get = function(belowFn) { @@ -29110,7 +29075,7 @@ exports._createParsedCallSite = function(properties) { /***/ }), -/***/ 3062: +/***/ 7319: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { // Copyright Joyent, Inc. and other Node contributors. @@ -29138,7 +29103,7 @@ exports._createParsedCallSite = function(properties) { /**/ -var Buffer = (__nccwpck_require__(5950).Buffer); +var Buffer = (__nccwpck_require__(5725).Buffer); /**/ var isEncoding = Buffer.isEncoding || function (encoding) { @@ -29412,13 +29377,13 @@ function simpleEnd(buf) { /***/ }), -/***/ 3662: +/***/ 6480: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const os = __nccwpck_require__(857); const tty = __nccwpck_require__(2018); -const hasFlag = __nccwpck_require__(9473); +const hasFlag = __nccwpck_require__(4167); const {env} = process; @@ -29554,7 +29519,7 @@ module.exports = { /***/ }), -/***/ 4395: +/***/ 743: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*! @@ -29566,7 +29531,7 @@ module.exports = { -const isNumber = __nccwpck_require__(7850); +const isNumber = __nccwpck_require__(952); const toRegexRange = (min, max, options) => { if (isNumber(min) === false) { @@ -29849,7 +29814,7 @@ module.exports = toRegexRange; /***/ }), -/***/ 6053: +/***/ 9864: /***/ ((__unused_webpack_module, exports) => { /** @@ -29898,7 +29863,7 @@ exports.colors = { /***/ }), -/***/ 4595: +/***/ 7574: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { /** @@ -29915,7 +29880,7 @@ exports.colors = { * @type {Object} */ Object.defineProperty(exports, "cli", ({ - value: __nccwpck_require__(6053) + value: __nccwpck_require__(9864) })); /** @@ -29923,7 +29888,7 @@ Object.defineProperty(exports, "cli", ({ * @type {Object} */ Object.defineProperty(exports, "npm", ({ - value: __nccwpck_require__(6154) + value: __nccwpck_require__(5019) })); /** @@ -29931,13 +29896,13 @@ Object.defineProperty(exports, "npm", ({ * @type {Object} */ Object.defineProperty(exports, "syslog", ({ - value: __nccwpck_require__(6590) + value: __nccwpck_require__(9473) })); /***/ }), -/***/ 6154: +/***/ 5019: /***/ ((__unused_webpack_module, exports) => { /** @@ -29980,7 +29945,7 @@ exports.colors = { /***/ }), -/***/ 6590: +/***/ 9473: /***/ ((__unused_webpack_module, exports) => { /** @@ -30025,7 +29990,7 @@ exports.colors = { /***/ }), -/***/ 1544: +/***/ 1255: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -30072,21 +30037,21 @@ Object.defineProperty(exports, "SPLAT", ({ * @type {Object} */ Object.defineProperty(exports, "configs", ({ - value: __nccwpck_require__(4595) + value: __nccwpck_require__(7574) })); /***/ }), -/***/ 5070: +/***/ 7285: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -/* unused reexport */ __nccwpck_require__(5862); +/* unused reexport */ __nccwpck_require__(8703); /***/ }), -/***/ 5862: +/***/ 8703: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { var __webpack_unused_export__; @@ -30358,34 +30323,34 @@ __webpack_unused_export__ = debug; // for test /***/ }), -/***/ 1684: +/***/ 4906: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { var __webpack_unused_export__; -const Client = __nccwpck_require__(1313) -const Dispatcher = __nccwpck_require__(3415) -const Pool = __nccwpck_require__(5928) -const BalancedPool = __nccwpck_require__(6681) -const Agent = __nccwpck_require__(1745) -const ProxyAgent = __nccwpck_require__(7508) -const EnvHttpProxyAgent = __nccwpck_require__(9221) -const RetryAgent = __nccwpck_require__(334) -const errors = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) +const Client = __nccwpck_require__(979) +const Dispatcher = __nccwpck_require__(7029) +const Pool = __nccwpck_require__(9610) +const BalancedPool = __nccwpck_require__(7475) +const Agent = __nccwpck_require__(7823) +const ProxyAgent = __nccwpck_require__(826) +const EnvHttpProxyAgent = __nccwpck_require__(2935) +const RetryAgent = __nccwpck_require__(5308) +const errors = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) const { InvalidArgumentError } = errors -const api = __nccwpck_require__(2531) -const buildConnector = __nccwpck_require__(1332) -const MockClient = __nccwpck_require__(2361) -const MockAgent = __nccwpck_require__(7017) -const MockPool = __nccwpck_require__(6480) -const mockErrors = __nccwpck_require__(2673) -const RetryHandler = __nccwpck_require__(4004) -const { getGlobalDispatcher, setGlobalDispatcher } = __nccwpck_require__(1481) -const DecoratorHandler = __nccwpck_require__(9151) -const RedirectHandler = __nccwpck_require__(7158) -const createRedirectInterceptor = __nccwpck_require__(1576) +const api = __nccwpck_require__(3797) +const buildConnector = __nccwpck_require__(46) +const MockClient = __nccwpck_require__(6899) +const MockAgent = __nccwpck_require__(2527) +const MockPool = __nccwpck_require__(7226) +const mockErrors = __nccwpck_require__(2863) +const RetryHandler = __nccwpck_require__(1450) +const { getGlobalDispatcher, setGlobalDispatcher } = __nccwpck_require__(8707) +const DecoratorHandler = __nccwpck_require__(801) +const RedirectHandler = __nccwpck_require__(1932) +const createRedirectInterceptor = __nccwpck_require__(7958) Object.assign(Dispatcher.prototype, api) @@ -30403,10 +30368,10 @@ __webpack_unused_export__ = DecoratorHandler __webpack_unused_export__ = RedirectHandler __webpack_unused_export__ = createRedirectInterceptor __webpack_unused_export__ = { - redirect: __nccwpck_require__(7734), - retry: __nccwpck_require__(5486), - dump: __nccwpck_require__(5376), - dns: __nccwpck_require__(4287) + redirect: __nccwpck_require__(3184), + retry: __nccwpck_require__(5904), + dump: __nccwpck_require__(4166), + dns: __nccwpck_require__(4289) } __webpack_unused_export__ = buildConnector @@ -30468,7 +30433,7 @@ function makeDispatcher (fn) { __webpack_unused_export__ = setGlobalDispatcher __webpack_unused_export__ = getGlobalDispatcher -const fetchImpl = (__nccwpck_require__(4202).fetch) +const fetchImpl = (__nccwpck_require__(224).fetch) __webpack_unused_export__ = async function fetch (init, options = undefined) { try { return await fetchImpl(init, options) @@ -30480,39 +30445,39 @@ __webpack_unused_export__ = async function fetch (init, options = undefined) { throw err } } -/* unused reexport */ __nccwpck_require__(3408).Headers -/* unused reexport */ __nccwpck_require__(7287).Response -/* unused reexport */ __nccwpck_require__(9683).Request -/* unused reexport */ __nccwpck_require__(3818).FormData +/* unused reexport */ __nccwpck_require__(8146).Headers +/* unused reexport */ __nccwpck_require__(2873).Response +/* unused reexport */ __nccwpck_require__(557).Request +/* unused reexport */ __nccwpck_require__(8932).FormData __webpack_unused_export__ = globalThis.File ?? (__nccwpck_require__(4573).File) -/* unused reexport */ __nccwpck_require__(6575).FileReader +/* unused reexport */ __nccwpck_require__(7669).FileReader -const { setGlobalOrigin, getGlobalOrigin } = __nccwpck_require__(5311) +const { setGlobalOrigin, getGlobalOrigin } = __nccwpck_require__(777) __webpack_unused_export__ = setGlobalOrigin __webpack_unused_export__ = getGlobalOrigin -const { CacheStorage } = __nccwpck_require__(6577) -const { kConstruct } = __nccwpck_require__(8329) +const { CacheStorage } = __nccwpck_require__(4215) +const { kConstruct } = __nccwpck_require__(7747) // Cache & CacheStorage are tightly coupled with fetch. Even if it may run // in an older version of Node, it doesn't have any use without fetch. __webpack_unused_export__ = new CacheStorage(kConstruct) -const { deleteCookie, getCookies, getSetCookies, setCookie } = __nccwpck_require__(7889) +const { deleteCookie, getCookies, getSetCookies, setCookie } = __nccwpck_require__(8659) __webpack_unused_export__ = deleteCookie __webpack_unused_export__ = getCookies __webpack_unused_export__ = getSetCookies __webpack_unused_export__ = setCookie -const { parseMIMEType, serializeAMimeType } = __nccwpck_require__(192) +const { parseMIMEType, serializeAMimeType } = __nccwpck_require__(8394) __webpack_unused_export__ = parseMIMEType __webpack_unused_export__ = serializeAMimeType -const { CloseEvent, ErrorEvent, MessageEvent } = __nccwpck_require__(4379) -/* unused reexport */ __nccwpck_require__(2522).WebSocket +const { CloseEvent, ErrorEvent, MessageEvent } = __nccwpck_require__(7690) +/* unused reexport */ __nccwpck_require__(7836).WebSocket __webpack_unused_export__ = CloseEvent __webpack_unused_export__ = ErrorEvent __webpack_unused_export__ = MessageEvent @@ -30528,18 +30493,18 @@ __webpack_unused_export__ = MockPool __webpack_unused_export__ = MockAgent __webpack_unused_export__ = mockErrors -const { EventSource } = __nccwpck_require__(7042) +const { EventSource } = __nccwpck_require__(3276) __webpack_unused_export__ = EventSource /***/ }), -/***/ 2730: +/***/ 6756: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { addAbortListener } = __nccwpck_require__(9500) -const { RequestAbortedError } = __nccwpck_require__(3959) +const { addAbortListener } = __nccwpck_require__(7662) +const { RequestAbortedError } = __nccwpck_require__(5933) const kListener = Symbol('kListener') const kSignal = Symbol('kSignal') @@ -30599,16 +30564,16 @@ module.exports = { /***/ }), -/***/ 3192: +/***/ 7530: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { AsyncResource } = __nccwpck_require__(6698) -const { InvalidArgumentError, SocketError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const { InvalidArgumentError, SocketError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { addSignal, removeSignal } = __nccwpck_require__(6756) class ConnectHandler extends AsyncResource { constructor (opts, callback) { @@ -30714,7 +30679,7 @@ module.exports = connect /***/ }), -/***/ 2466: +/***/ 8656: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -30728,10 +30693,10 @@ const { InvalidArgumentError, InvalidReturnValueError, RequestAbortedError -} = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) +} = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) const { AsyncResource } = __nccwpck_require__(6698) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const { addSignal, removeSignal } = __nccwpck_require__(6756) const assert = __nccwpck_require__(4589) const kResume = Symbol('resume') @@ -30972,16 +30937,16 @@ module.exports = pipeline /***/ }), -/***/ 887: +/***/ 7157: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { Readable } = __nccwpck_require__(8947) -const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { getResolveErrorBodyCallback } = __nccwpck_require__(363) +const { Readable } = __nccwpck_require__(2797) +const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { getResolveErrorBodyCallback } = __nccwpck_require__(3877) const { AsyncResource } = __nccwpck_require__(6698) class RequestHandler extends AsyncResource { @@ -31193,18 +31158,18 @@ module.exports.RequestHandler = RequestHandler /***/ }), -/***/ 4388: +/***/ 3718: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { finished, PassThrough } = __nccwpck_require__(7075) -const { InvalidArgumentError, InvalidReturnValueError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { getResolveErrorBodyCallback } = __nccwpck_require__(363) +const { InvalidArgumentError, InvalidReturnValueError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { getResolveErrorBodyCallback } = __nccwpck_require__(3877) const { AsyncResource } = __nccwpck_require__(6698) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const { addSignal, removeSignal } = __nccwpck_require__(6756) class StreamHandler extends AsyncResource { constructor (opts, factory, callback) { @@ -31420,15 +31385,15 @@ module.exports = stream /***/ }), -/***/ 6342: +/***/ 9764: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { InvalidArgumentError, SocketError } = __nccwpck_require__(3959) +const { InvalidArgumentError, SocketError } = __nccwpck_require__(5933) const { AsyncResource } = __nccwpck_require__(6698) -const util = __nccwpck_require__(9500) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const util = __nccwpck_require__(7662) +const { addSignal, removeSignal } = __nccwpck_require__(6756) const assert = __nccwpck_require__(4589) class UpgradeHandler extends AsyncResource { @@ -31535,21 +31500,21 @@ module.exports = upgrade /***/ }), -/***/ 2531: +/***/ 3797: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -module.exports.request = __nccwpck_require__(887) -module.exports.stream = __nccwpck_require__(4388) -module.exports.pipeline = __nccwpck_require__(2466) -module.exports.upgrade = __nccwpck_require__(6342) -module.exports.connect = __nccwpck_require__(3192) +module.exports.request = __nccwpck_require__(7157) +module.exports.stream = __nccwpck_require__(3718) +module.exports.pipeline = __nccwpck_require__(8656) +module.exports.upgrade = __nccwpck_require__(9764) +module.exports.connect = __nccwpck_require__(7530) /***/ }), -/***/ 8947: +/***/ 2797: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Ported from https://github.com/nodejs/undici/pull/907 @@ -31558,9 +31523,9 @@ module.exports.connect = __nccwpck_require__(3192) const assert = __nccwpck_require__(4589) const { Readable } = __nccwpck_require__(7075) -const { RequestAbortedError, NotSupportedError, InvalidArgumentError, AbortError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { ReadableStreamFrom } = __nccwpck_require__(9500) +const { RequestAbortedError, NotSupportedError, InvalidArgumentError, AbortError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { ReadableStreamFrom } = __nccwpck_require__(7662) const kConsume = Symbol('kConsume') const kReading = Symbol('kReading') @@ -31941,15 +31906,15 @@ module.exports = { Readable: BodyReadable, chunksDecode } /***/ }), -/***/ 363: +/***/ 3877: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { ResponseStatusCodeError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) -const { chunksDecode } = __nccwpck_require__(8947) +const { chunksDecode } = __nccwpck_require__(2797) const CHUNK_LIMIT = 128 * 1024 async function getResolveErrorBodyCallback ({ callback, body, contentType, statusCode, statusMessage, headers }) { @@ -32041,16 +32006,16 @@ module.exports = { /***/ }), -/***/ 1332: +/***/ 46: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const net = __nccwpck_require__(7030) const assert = __nccwpck_require__(4589) -const util = __nccwpck_require__(9500) -const { InvalidArgumentError, ConnectTimeoutError } = __nccwpck_require__(3959) -const timers = __nccwpck_require__(4591) +const util = __nccwpck_require__(7662) +const { InvalidArgumentError, ConnectTimeoutError } = __nccwpck_require__(5933) +const timers = __nccwpck_require__(7797) function noop () {} @@ -32288,7 +32253,7 @@ module.exports = buildConnector /***/ }), -/***/ 2371: +/***/ 7313: /***/ ((module) => { @@ -32413,7 +32378,7 @@ module.exports = { /***/ }), -/***/ 5458: +/***/ 8560: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -32622,7 +32587,7 @@ module.exports = { /***/ }), -/***/ 3959: +/***/ 5933: /***/ ((module) => { @@ -33054,7 +33019,7 @@ module.exports = { /***/ }), -/***/ 9691: +/***/ 9441: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -33062,7 +33027,7 @@ module.exports = { const { InvalidArgumentError, NotSupportedError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const assert = __nccwpck_require__(4589) const { isValidHTTPToken, @@ -33077,9 +33042,9 @@ const { validateHandler, getServerName, normalizedMethodRecords -} = __nccwpck_require__(9500) -const { channels } = __nccwpck_require__(5458) -const { headerNameLowerCasedRecord } = __nccwpck_require__(2371) +} = __nccwpck_require__(7662) +const { channels } = __nccwpck_require__(8560) +const { headerNameLowerCasedRecord } = __nccwpck_require__(7313) // Verifies that a given path is valid does not contain control chars \x00 to \x20 const invalidPathRegex = /[^\u0021-\u00ff]/ @@ -33466,7 +33431,7 @@ module.exports = Request /***/ }), -/***/ 8031: +/***/ 3373: /***/ ((module) => { module.exports = { @@ -33540,7 +33505,7 @@ module.exports = { /***/ }), -/***/ 6868: +/***/ 6338: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -33548,7 +33513,7 @@ module.exports = { const { wellknownHeaderNames, headerNameLowerCasedRecord -} = __nccwpck_require__(2371) +} = __nccwpck_require__(7313) class TstNode { /** @type {any} */ @@ -33699,13 +33664,13 @@ module.exports = { /***/ }), -/***/ 9500: +/***/ 7662: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { kDestroyed, kBodyUsed, kListeners, kBody } = __nccwpck_require__(8031) +const { kDestroyed, kBodyUsed, kListeners, kBody } = __nccwpck_require__(3373) const { IncomingMessage } = __nccwpck_require__(7067) const stream = __nccwpck_require__(7075) const net = __nccwpck_require__(7030) @@ -33713,9 +33678,9 @@ const { Blob } = __nccwpck_require__(4573) const nodeUtil = __nccwpck_require__(7975) const { stringify } = __nccwpck_require__(1792) const { EventEmitter: EE } = __nccwpck_require__(8474) -const { InvalidArgumentError } = __nccwpck_require__(3959) -const { headerNameLowerCasedRecord } = __nccwpck_require__(2371) -const { tree } = __nccwpck_require__(6868) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const { headerNameLowerCasedRecord } = __nccwpck_require__(7313) +const { tree } = __nccwpck_require__(6338) const [nodeMajor, nodeMinor] = process.versions.node.split('.').map(v => Number(v)) @@ -34425,18 +34390,18 @@ module.exports = { /***/ }), -/***/ 1745: +/***/ 7823: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { InvalidArgumentError } = __nccwpck_require__(3959) -const { kClients, kRunning, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(8031) -const DispatcherBase = __nccwpck_require__(1517) -const Pool = __nccwpck_require__(5928) -const Client = __nccwpck_require__(1313) -const util = __nccwpck_require__(9500) -const createRedirectInterceptor = __nccwpck_require__(1576) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const { kClients, kRunning, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(3373) +const DispatcherBase = __nccwpck_require__(103) +const Pool = __nccwpck_require__(9610) +const Client = __nccwpck_require__(979) +const util = __nccwpck_require__(7662) +const createRedirectInterceptor = __nccwpck_require__(7958) const kOnConnect = Symbol('onConnect') const kOnDisconnect = Symbol('onDisconnect') @@ -34561,7 +34526,7 @@ module.exports = Agent /***/ }), -/***/ 6681: +/***/ 7475: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -34569,7 +34534,7 @@ module.exports = Agent const { BalancedPoolMissingUpstreamError, InvalidArgumentError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const { PoolBase, kClients, @@ -34577,10 +34542,10 @@ const { kAddClient, kRemoveClient, kGetDispatcher -} = __nccwpck_require__(7292) -const Pool = __nccwpck_require__(5928) -const { kUrl, kInterceptors } = __nccwpck_require__(8031) -const { parseOrigin } = __nccwpck_require__(9500) +} = __nccwpck_require__(9266) +const Pool = __nccwpck_require__(9610) +const { kUrl, kInterceptors } = __nccwpck_require__(3373) +const { parseOrigin } = __nccwpck_require__(7662) const kFactory = Symbol('factory') const kOptions = Symbol('options') @@ -34777,7 +34742,7 @@ module.exports = BalancedPool /***/ }), -/***/ 4393: +/***/ 7727: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -34785,9 +34750,9 @@ module.exports = BalancedPool /* global WebAssembly */ const assert = __nccwpck_require__(4589) -const util = __nccwpck_require__(9500) -const { channels } = __nccwpck_require__(5458) -const timers = __nccwpck_require__(4591) +const util = __nccwpck_require__(7662) +const { channels } = __nccwpck_require__(8560) +const timers = __nccwpck_require__(7797) const { RequestContentLengthMismatchError, ResponseContentLengthMismatchError, @@ -34799,7 +34764,7 @@ const { BodyTimeoutError, HTTPParserError, ResponseExceededMaxSizeError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const { kUrl, kReset, @@ -34832,9 +34797,9 @@ const { kOnError, kResume, kHTTPContext -} = __nccwpck_require__(8031) +} = __nccwpck_require__(3373) -const constants = __nccwpck_require__(748) +const constants = __nccwpck_require__(1214) const EMPTY_BUF = Buffer.alloc(0) const FastBuffer = Buffer[Symbol.species] const addListener = util.addListener @@ -34843,11 +34808,11 @@ const removeAllListeners = util.removeAllListeners let extractBody async function lazyllhttp () { - const llhttpWasmData = process.env.JEST_WORKER_ID ? __nccwpck_require__(3922) : undefined + const llhttpWasmData = process.env.JEST_WORKER_ID ? __nccwpck_require__(4916) : undefined let mod try { - mod = await WebAssembly.compile(__nccwpck_require__(3742)) + mod = await WebAssembly.compile(__nccwpck_require__(7708)) } catch (e) { /* istanbul ignore next */ @@ -34855,7 +34820,7 @@ async function lazyllhttp () { // being enabled, but the occurring of this other error // * https://github.com/emscripten-core/emscripten/issues/11495 // got me to remove that check to avoid breaking Node 12. - mod = await WebAssembly.compile(llhttpWasmData || __nccwpck_require__(3922)) + mod = await WebAssembly.compile(llhttpWasmData || __nccwpck_require__(4916)) } return await WebAssembly.instantiate(mod, { @@ -35650,7 +35615,7 @@ function writeH1 (client, request) { if (util.isFormDataLike(body)) { if (!extractBody) { - extractBody = (__nccwpck_require__(1448).extractBody) + extractBody = (__nccwpck_require__(4086).extractBody) } const [bodyStream, contentType] = extractBody(body) @@ -36154,20 +36119,20 @@ module.exports = connectH1 /***/ }), -/***/ 3504: +/***/ 930: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { pipeline } = __nccwpck_require__(7075) -const util = __nccwpck_require__(9500) +const util = __nccwpck_require__(7662) const { RequestContentLengthMismatchError, RequestAbortedError, SocketError, InformationalError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const { kUrl, kReset, @@ -36186,7 +36151,7 @@ const { kResume, kSize, kHTTPContext -} = __nccwpck_require__(8031) +} = __nccwpck_require__(3373) const kOpenStreams = Symbol('open streams') @@ -36545,7 +36510,7 @@ function writeH2 (client, request) { let contentLength = util.bodyLength(body) if (util.isFormDataLike(body)) { - extractBody ??= (__nccwpck_require__(1448).extractBody) + extractBody ??= (__nccwpck_require__(4086).extractBody) const [bodyStream, contentType] = extractBody(body) headers['content-type'] = contentType @@ -36905,7 +36870,7 @@ module.exports = connectH2 /***/ }), -/***/ 1313: +/***/ 979: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // @ts-check @@ -36915,16 +36880,16 @@ module.exports = connectH2 const assert = __nccwpck_require__(4589) const net = __nccwpck_require__(7030) const http = __nccwpck_require__(7067) -const util = __nccwpck_require__(9500) -const { channels } = __nccwpck_require__(5458) -const Request = __nccwpck_require__(9691) -const DispatcherBase = __nccwpck_require__(1517) +const util = __nccwpck_require__(7662) +const { channels } = __nccwpck_require__(8560) +const Request = __nccwpck_require__(9441) +const DispatcherBase = __nccwpck_require__(103) const { InvalidArgumentError, InformationalError, ClientDestroyedError -} = __nccwpck_require__(3959) -const buildConnector = __nccwpck_require__(1332) +} = __nccwpck_require__(5933) +const buildConnector = __nccwpck_require__(46) const { kUrl, kServerName, @@ -36966,9 +36931,9 @@ const { kHTTPContext, kMaxConcurrentStreams, kResume -} = __nccwpck_require__(8031) -const connectH1 = __nccwpck_require__(4393) -const connectH2 = __nccwpck_require__(3504) +} = __nccwpck_require__(3373) +const connectH1 = __nccwpck_require__(7727) +const connectH2 = __nccwpck_require__(930) let deprecatedInterceptorWarned = false const kClosedResolve = Symbol('kClosedResolve') @@ -37274,7 +37239,7 @@ class Client extends DispatcherBase { } } -const createRedirectInterceptor = __nccwpck_require__(1576) +const createRedirectInterceptor = __nccwpck_require__(7958) function onError (client, err) { if ( @@ -37534,18 +37499,18 @@ module.exports = Client /***/ }), -/***/ 1517: +/***/ 103: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const Dispatcher = __nccwpck_require__(3415) +const Dispatcher = __nccwpck_require__(7029) const { ClientDestroyedError, ClientClosedError, InvalidArgumentError -} = __nccwpck_require__(3959) -const { kDestroy, kClose, kClosed, kDestroyed, kDispatch, kInterceptors } = __nccwpck_require__(8031) +} = __nccwpck_require__(5933) +const { kDestroy, kClose, kClosed, kDestroyed, kDispatch, kInterceptors } = __nccwpck_require__(3373) const kOnDestroyed = Symbol('onDestroyed') const kOnClosed = Symbol('onClosed') @@ -37731,7 +37696,7 @@ module.exports = DispatcherBase /***/ }), -/***/ 3415: +/***/ 7029: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -37803,15 +37768,15 @@ module.exports = Dispatcher /***/ }), -/***/ 9221: +/***/ 2935: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const DispatcherBase = __nccwpck_require__(1517) -const { kClose, kDestroy, kClosed, kDestroyed, kDispatch, kNoProxyAgent, kHttpProxyAgent, kHttpsProxyAgent } = __nccwpck_require__(8031) -const ProxyAgent = __nccwpck_require__(7508) -const Agent = __nccwpck_require__(1745) +const DispatcherBase = __nccwpck_require__(103) +const { kClose, kDestroy, kClosed, kDestroyed, kDispatch, kNoProxyAgent, kHttpProxyAgent, kHttpsProxyAgent } = __nccwpck_require__(3373) +const ProxyAgent = __nccwpck_require__(826) +const Agent = __nccwpck_require__(7823) const DEFAULT_PORTS = { 'http:': 80, @@ -37970,7 +37935,7 @@ module.exports = EnvHttpProxyAgent /***/ }), -/***/ 5464: +/***/ 1034: /***/ ((module) => { /* eslint-disable */ @@ -38094,15 +38059,15 @@ module.exports = class FixedQueue { /***/ }), -/***/ 7292: +/***/ 9266: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const DispatcherBase = __nccwpck_require__(1517) -const FixedQueue = __nccwpck_require__(5464) -const { kConnected, kSize, kRunning, kPending, kQueued, kBusy, kFree, kUrl, kClose, kDestroy, kDispatch } = __nccwpck_require__(8031) -const PoolStats = __nccwpck_require__(8186) +const DispatcherBase = __nccwpck_require__(103) +const FixedQueue = __nccwpck_require__(1034) +const { kConnected, kSize, kRunning, kPending, kQueued, kBusy, kFree, kUrl, kClose, kDestroy, kDispatch } = __nccwpck_require__(3373) +const PoolStats = __nccwpck_require__(7956) const kClients = Symbol('clients') const kNeedDrain = Symbol('needDrain') @@ -38295,10 +38260,10 @@ module.exports = { /***/ }), -/***/ 8186: +/***/ 7956: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kFree, kConnected, kPending, kQueued, kRunning, kSize } = __nccwpck_require__(8031) +const { kFree, kConnected, kPending, kQueued, kRunning, kSize } = __nccwpck_require__(3373) const kPool = Symbol('pool') class PoolStats { @@ -38336,7 +38301,7 @@ module.exports = PoolStats /***/ }), -/***/ 5928: +/***/ 9610: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -38347,14 +38312,14 @@ const { kNeedDrain, kAddClient, kGetDispatcher -} = __nccwpck_require__(7292) -const Client = __nccwpck_require__(1313) +} = __nccwpck_require__(9266) +const Client = __nccwpck_require__(979) const { InvalidArgumentError -} = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { kUrl, kInterceptors } = __nccwpck_require__(8031) -const buildConnector = __nccwpck_require__(1332) +} = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { kUrl, kInterceptors } = __nccwpck_require__(3373) +const buildConnector = __nccwpck_require__(46) const kOptions = Symbol('options') const kConnections = Symbol('connections') @@ -38450,19 +38415,19 @@ module.exports = Pool /***/ }), -/***/ 7508: +/***/ 826: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kProxy, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(8031) +const { kProxy, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(3373) const { URL } = __nccwpck_require__(3136) -const Agent = __nccwpck_require__(1745) -const Pool = __nccwpck_require__(5928) -const DispatcherBase = __nccwpck_require__(1517) -const { InvalidArgumentError, RequestAbortedError, SecureProxyConnectionError } = __nccwpck_require__(3959) -const buildConnector = __nccwpck_require__(1332) -const Client = __nccwpck_require__(1313) +const Agent = __nccwpck_require__(7823) +const Pool = __nccwpck_require__(9610) +const DispatcherBase = __nccwpck_require__(103) +const { InvalidArgumentError, RequestAbortedError, SecureProxyConnectionError } = __nccwpck_require__(5933) +const buildConnector = __nccwpck_require__(46) +const Client = __nccwpck_require__(979) const kAgent = Symbol('proxy agent') const kClient = Symbol('proxy client') @@ -38731,13 +38696,13 @@ module.exports = ProxyAgent /***/ }), -/***/ 334: +/***/ 5308: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const Dispatcher = __nccwpck_require__(3415) -const RetryHandler = __nccwpck_require__(4004) +const Dispatcher = __nccwpck_require__(7029) +const RetryHandler = __nccwpck_require__(1450) class RetryAgent extends Dispatcher { #agent = null @@ -38773,7 +38738,7 @@ module.exports = RetryAgent /***/ }), -/***/ 1481: +/***/ 8707: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -38781,8 +38746,8 @@ module.exports = RetryAgent // We include a version number for the Dispatcher API. In case of breaking changes, // this version number must be increased to avoid conflicts. const globalDispatcher = Symbol.for('undici.globalDispatcher.1') -const { InvalidArgumentError } = __nccwpck_require__(3959) -const Agent = __nccwpck_require__(1745) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const Agent = __nccwpck_require__(7823) if (getGlobalDispatcher() === undefined) { setGlobalDispatcher(new Agent()) @@ -38812,7 +38777,7 @@ module.exports = { /***/ }), -/***/ 9151: +/***/ 801: /***/ ((module) => { @@ -38863,15 +38828,15 @@ module.exports = class DecoratorHandler { /***/ }), -/***/ 7158: +/***/ 1932: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const util = __nccwpck_require__(9500) -const { kBodyUsed } = __nccwpck_require__(8031) +const util = __nccwpck_require__(7662) +const { kBodyUsed } = __nccwpck_require__(3373) const assert = __nccwpck_require__(4589) -const { InvalidArgumentError } = __nccwpck_require__(3959) +const { InvalidArgumentError } = __nccwpck_require__(5933) const EE = __nccwpck_require__(8474) const redirectableStatusCodes = [300, 301, 302, 303, 307, 308] @@ -39102,20 +39067,20 @@ module.exports = RedirectHandler /***/ }), -/***/ 4004: +/***/ 1450: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { kRetryHandlerDefaultRetry } = __nccwpck_require__(8031) -const { RequestRetryError } = __nccwpck_require__(3959) +const { kRetryHandlerDefaultRetry } = __nccwpck_require__(3373) +const { RequestRetryError } = __nccwpck_require__(5933) const { isDisturbed, parseHeaders, parseRangeHeader, wrapRequestBody -} = __nccwpck_require__(9500) +} = __nccwpck_require__(7662) function calculateRetryAfterHeader (retryAfter) { const current = Date.now() @@ -39483,14 +39448,14 @@ module.exports = RetryHandler /***/ }), -/***/ 4287: +/***/ 4289: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { isIP } = __nccwpck_require__(7030) const { lookup } = __nccwpck_require__(610) -const DecoratorHandler = __nccwpck_require__(9151) -const { InvalidArgumentError, InformationalError } = __nccwpck_require__(3959) +const DecoratorHandler = __nccwpck_require__(801) +const { InvalidArgumentError, InformationalError } = __nccwpck_require__(5933) const maxInt = Math.pow(2, 31) - 1 class DNSInstance { @@ -39865,14 +39830,14 @@ module.exports = interceptorOpts => { /***/ }), -/***/ 5376: +/***/ 4166: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const util = __nccwpck_require__(9500) -const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(3959) -const DecoratorHandler = __nccwpck_require__(9151) +const util = __nccwpck_require__(7662) +const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(5933) +const DecoratorHandler = __nccwpck_require__(801) class DumpHandler extends DecoratorHandler { #maxSize = 1024 * 1024 @@ -39995,12 +39960,12 @@ module.exports = createDumpInterceptor /***/ }), -/***/ 1576: +/***/ 7958: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const RedirectHandler = __nccwpck_require__(7158) +const RedirectHandler = __nccwpck_require__(1932) function createRedirectInterceptor ({ maxRedirections: defaultMaxRedirections }) { return (dispatch) => { @@ -40023,11 +39988,11 @@ module.exports = createRedirectInterceptor /***/ }), -/***/ 7734: +/***/ 3184: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const RedirectHandler = __nccwpck_require__(7158) +const RedirectHandler = __nccwpck_require__(1932) module.exports = opts => { const globalMaxRedirections = opts?.maxRedirections @@ -40054,11 +40019,11 @@ module.exports = opts => { /***/ }), -/***/ 5486: +/***/ 5904: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const RetryHandler = __nccwpck_require__(4004) +const RetryHandler = __nccwpck_require__(1450) module.exports = globalOpts => { return dispatch => { @@ -40080,13 +40045,13 @@ module.exports = globalOpts => { /***/ }), -/***/ 748: +/***/ 1214: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.SPECIAL_HEADERS = exports.HEADER_STATE = exports.MINOR = exports.MAJOR = exports.CONNECTION_TOKEN_CHARS = exports.HEADER_CHARS = exports.TOKEN = exports.STRICT_TOKEN = exports.HEX = exports.URL_CHAR = exports.STRICT_URL_CHAR = exports.USERINFO_CHARS = exports.MARK = exports.ALPHANUM = exports.NUM = exports.HEX_MAP = exports.NUM_MAP = exports.ALPHA = exports.FINISH = exports.H_METHOD_MAP = exports.METHOD_MAP = exports.METHODS_RTSP = exports.METHODS_ICE = exports.METHODS_HTTP = exports.METHODS = exports.LENIENT_FLAGS = exports.FLAGS = exports.TYPE = exports.ERROR = void 0; -const utils_1 = __nccwpck_require__(4608); +const utils_1 = __nccwpck_require__(9430); // C headers var ERROR; (function (ERROR) { @@ -40364,7 +40329,7 @@ exports.SPECIAL_HEADERS = { /***/ }), -/***/ 3922: +/***/ 4916: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -40376,7 +40341,7 @@ module.exports = Buffer.from('AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f3 /***/ }), -/***/ 3742: +/***/ 7708: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -40388,7 +40353,7 @@ module.exports = Buffer.from('AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f3 /***/ }), -/***/ 4608: +/***/ 9430: /***/ ((__unused_webpack_module, exports) => { @@ -40409,13 +40374,13 @@ exports.enumToMap = enumToMap; /***/ }), -/***/ 7017: +/***/ 2527: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kClients } = __nccwpck_require__(8031) -const Agent = __nccwpck_require__(1745) +const { kClients } = __nccwpck_require__(3373) +const Agent = __nccwpck_require__(7823) const { kAgent, kMockAgentSet, @@ -40426,14 +40391,14 @@ const { kGetNetConnect, kOptions, kFactory -} = __nccwpck_require__(2305) -const MockClient = __nccwpck_require__(2361) -const MockPool = __nccwpck_require__(6480) -const { matchValue, buildMockOptions } = __nccwpck_require__(3193) -const { InvalidArgumentError, UndiciError } = __nccwpck_require__(3959) -const Dispatcher = __nccwpck_require__(3415) -const Pluralizer = __nccwpck_require__(5773) -const PendingInterceptorsFormatter = __nccwpck_require__(5738) +} = __nccwpck_require__(7351) +const MockClient = __nccwpck_require__(6899) +const MockPool = __nccwpck_require__(7226) +const { matchValue, buildMockOptions } = __nccwpck_require__(987) +const { InvalidArgumentError, UndiciError } = __nccwpck_require__(5933) +const Dispatcher = __nccwpck_require__(7029) +const Pluralizer = __nccwpck_require__(899) +const PendingInterceptorsFormatter = __nccwpck_require__(3576) class MockAgent extends Dispatcher { constructor (opts) { @@ -40576,14 +40541,14 @@ module.exports = MockAgent /***/ }), -/***/ 2361: +/***/ 6899: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { promisify } = __nccwpck_require__(7975) -const Client = __nccwpck_require__(1313) -const { buildMockDispatch } = __nccwpck_require__(3193) +const Client = __nccwpck_require__(979) +const { buildMockDispatch } = __nccwpck_require__(987) const { kDispatches, kMockAgent, @@ -40592,10 +40557,10 @@ const { kOrigin, kOriginalDispatch, kConnected -} = __nccwpck_require__(2305) -const { MockInterceptor } = __nccwpck_require__(5843) -const Symbols = __nccwpck_require__(8031) -const { InvalidArgumentError } = __nccwpck_require__(3959) +} = __nccwpck_require__(7351) +const { MockInterceptor } = __nccwpck_require__(3237) +const Symbols = __nccwpck_require__(3373) +const { InvalidArgumentError } = __nccwpck_require__(5933) /** * MockClient provides an API that extends the Client to influence the mockDispatches. @@ -40642,12 +40607,12 @@ module.exports = MockClient /***/ }), -/***/ 2673: +/***/ 2863: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { UndiciError } = __nccwpck_require__(3959) +const { UndiciError } = __nccwpck_require__(5933) const kMockNotMatchedError = Symbol.for('undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED') @@ -40677,12 +40642,12 @@ module.exports = { /***/ }), -/***/ 5843: +/***/ 3237: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { getResponseData, buildKey, addMockDispatch } = __nccwpck_require__(3193) +const { getResponseData, buildKey, addMockDispatch } = __nccwpck_require__(987) const { kDispatches, kDispatchKey, @@ -40690,9 +40655,9 @@ const { kDefaultTrailers, kContentLength, kMockDispatch -} = __nccwpck_require__(2305) -const { InvalidArgumentError } = __nccwpck_require__(3959) -const { buildURL } = __nccwpck_require__(9500) +} = __nccwpck_require__(7351) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const { buildURL } = __nccwpck_require__(7662) /** * Defines the scope API for an interceptor reply @@ -40891,14 +40856,14 @@ module.exports.MockScope = MockScope /***/ }), -/***/ 6480: +/***/ 7226: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { promisify } = __nccwpck_require__(7975) -const Pool = __nccwpck_require__(5928) -const { buildMockDispatch } = __nccwpck_require__(3193) +const Pool = __nccwpck_require__(9610) +const { buildMockDispatch } = __nccwpck_require__(987) const { kDispatches, kMockAgent, @@ -40907,10 +40872,10 @@ const { kOrigin, kOriginalDispatch, kConnected -} = __nccwpck_require__(2305) -const { MockInterceptor } = __nccwpck_require__(5843) -const Symbols = __nccwpck_require__(8031) -const { InvalidArgumentError } = __nccwpck_require__(3959) +} = __nccwpck_require__(7351) +const { MockInterceptor } = __nccwpck_require__(3237) +const Symbols = __nccwpck_require__(3373) +const { InvalidArgumentError } = __nccwpck_require__(5933) /** * MockPool provides an API that extends the Pool to influence the mockDispatches. @@ -40957,7 +40922,7 @@ module.exports = MockPool /***/ }), -/***/ 2305: +/***/ 7351: /***/ ((module) => { @@ -40987,20 +40952,20 @@ module.exports = { /***/ }), -/***/ 3193: +/***/ 987: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { MockNotMatchedError } = __nccwpck_require__(2673) +const { MockNotMatchedError } = __nccwpck_require__(2863) const { kDispatches, kMockAgent, kOriginalDispatch, kOrigin, kGetNetConnect -} = __nccwpck_require__(2305) -const { buildURL } = __nccwpck_require__(9500) +} = __nccwpck_require__(7351) +const { buildURL } = __nccwpck_require__(7662) const { STATUS_CODES } = __nccwpck_require__(7067) const { types: { @@ -41361,7 +41326,7 @@ module.exports = { /***/ }), -/***/ 5738: +/***/ 3576: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -41411,7 +41376,7 @@ module.exports = class PendingInterceptorsFormatter { /***/ }), -/***/ 5773: +/***/ 899: /***/ ((module) => { @@ -41447,7 +41412,7 @@ module.exports = class Pluralizer { /***/ }), -/***/ 4591: +/***/ 7797: /***/ ((module) => { @@ -41877,20 +41842,20 @@ module.exports = { /***/ }), -/***/ 9918: +/***/ 3416: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kConstruct } = __nccwpck_require__(8329) -const { urlEquals, getFieldValues } = __nccwpck_require__(3762) -const { kEnumerableProperty, isDisturbed } = __nccwpck_require__(9500) -const { webidl } = __nccwpck_require__(4625) -const { Response, cloneResponse, fromInnerResponse } = __nccwpck_require__(7287) -const { Request, fromInnerRequest } = __nccwpck_require__(9683) -const { kState } = __nccwpck_require__(3175) -const { fetching } = __nccwpck_require__(4202) -const { urlIsHttpHttpsScheme, createDeferredPromise, readAllBytes } = __nccwpck_require__(1204) +const { kConstruct } = __nccwpck_require__(7747) +const { urlEquals, getFieldValues } = __nccwpck_require__(9272) +const { kEnumerableProperty, isDisturbed } = __nccwpck_require__(7662) +const { webidl } = __nccwpck_require__(9735) +const { Response, cloneResponse, fromInnerResponse } = __nccwpck_require__(2873) +const { Request, fromInnerRequest } = __nccwpck_require__(557) +const { kState } = __nccwpck_require__(1) +const { fetching } = __nccwpck_require__(224) +const { urlIsHttpHttpsScheme, createDeferredPromise, readAllBytes } = __nccwpck_require__(7722) const assert = __nccwpck_require__(4589) /** @@ -42743,15 +42708,15 @@ module.exports = { /***/ }), -/***/ 6577: +/***/ 4215: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kConstruct } = __nccwpck_require__(8329) -const { Cache } = __nccwpck_require__(9918) -const { webidl } = __nccwpck_require__(4625) -const { kEnumerableProperty } = __nccwpck_require__(9500) +const { kConstruct } = __nccwpck_require__(7747) +const { Cache } = __nccwpck_require__(3416) +const { webidl } = __nccwpck_require__(9735) +const { kEnumerableProperty } = __nccwpck_require__(7662) class CacheStorage { /** @@ -42902,26 +42867,26 @@ module.exports = { /***/ }), -/***/ 8329: +/***/ 7747: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { module.exports = { - kConstruct: (__nccwpck_require__(8031).kConstruct) + kConstruct: (__nccwpck_require__(3373).kConstruct) } /***/ }), -/***/ 3762: +/***/ 9272: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { URLSerializer } = __nccwpck_require__(192) -const { isValidHeaderName } = __nccwpck_require__(1204) +const { URLSerializer } = __nccwpck_require__(8394) +const { isValidHeaderName } = __nccwpck_require__(7722) /** * @see https://url.spec.whatwg.org/#concept-url-equals @@ -42966,7 +42931,7 @@ module.exports = { /***/ }), -/***/ 5848: +/***/ 1574: /***/ ((module) => { @@ -42985,15 +42950,15 @@ module.exports = { /***/ }), -/***/ 7889: +/***/ 8659: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { parseSetCookie } = __nccwpck_require__(1814) -const { stringify } = __nccwpck_require__(185) -const { webidl } = __nccwpck_require__(4625) -const { Headers } = __nccwpck_require__(3408) +const { parseSetCookie } = __nccwpck_require__(3804) +const { stringify } = __nccwpck_require__(3643) +const { webidl } = __nccwpck_require__(9735) +const { Headers } = __nccwpck_require__(8146) /** * @typedef {Object} Cookie @@ -43176,14 +43141,14 @@ module.exports = { /***/ }), -/***/ 1814: +/***/ 3804: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { maxNameValuePairSize, maxAttributeValueSize } = __nccwpck_require__(5848) -const { isCTLExcludingHtab } = __nccwpck_require__(185) -const { collectASequenceOfCodePointsFast } = __nccwpck_require__(192) +const { maxNameValuePairSize, maxAttributeValueSize } = __nccwpck_require__(1574) +const { isCTLExcludingHtab } = __nccwpck_require__(3643) +const { collectASequenceOfCodePointsFast } = __nccwpck_require__(8394) const assert = __nccwpck_require__(4589) /** @@ -43500,7 +43465,7 @@ module.exports = { /***/ }), -/***/ 185: +/***/ 3643: /***/ ((module) => { @@ -43789,12 +43754,12 @@ module.exports = { /***/ }), -/***/ 8819: +/***/ 6521: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Transform } = __nccwpck_require__(7075) -const { isASCIINumber, isValidLastEventId } = __nccwpck_require__(3943) +const { isASCIINumber, isValidLastEventId } = __nccwpck_require__(6293) /** * @type {number[]} BOM @@ -44194,22 +44159,22 @@ module.exports = { /***/ }), -/***/ 7042: +/***/ 3276: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { pipeline } = __nccwpck_require__(7075) -const { fetching } = __nccwpck_require__(4202) -const { makeRequest } = __nccwpck_require__(9683) -const { webidl } = __nccwpck_require__(4625) -const { EventSourceStream } = __nccwpck_require__(8819) -const { parseMIMEType } = __nccwpck_require__(192) -const { createFastMessageEvent } = __nccwpck_require__(4379) -const { isNetworkError } = __nccwpck_require__(7287) -const { delay } = __nccwpck_require__(3943) -const { kEnumerableProperty } = __nccwpck_require__(9500) -const { environmentSettingsObject } = __nccwpck_require__(1204) +const { fetching } = __nccwpck_require__(224) +const { makeRequest } = __nccwpck_require__(557) +const { webidl } = __nccwpck_require__(9735) +const { EventSourceStream } = __nccwpck_require__(6521) +const { parseMIMEType } = __nccwpck_require__(8394) +const { createFastMessageEvent } = __nccwpck_require__(7690) +const { isNetworkError } = __nccwpck_require__(2873) +const { delay } = __nccwpck_require__(6293) +const { kEnumerableProperty } = __nccwpck_require__(7662) +const { environmentSettingsObject } = __nccwpck_require__(7722) let experimentalWarned = false @@ -44681,7 +44646,7 @@ module.exports = { /***/ }), -/***/ 3943: +/***/ 6293: /***/ ((module) => { @@ -44725,12 +44690,12 @@ module.exports = { /***/ }), -/***/ 1448: +/***/ 4086: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const util = __nccwpck_require__(9500) +const util = __nccwpck_require__(7662) const { ReadableStreamFrom, isBlobLike, @@ -44740,16 +44705,16 @@ const { fullyReadBody, extractMimeType, utf8DecodeBytes -} = __nccwpck_require__(1204) -const { FormData } = __nccwpck_require__(3818) -const { kState } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) +} = __nccwpck_require__(7722) +const { FormData } = __nccwpck_require__(8932) +const { kState } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) const { Blob } = __nccwpck_require__(4573) const assert = __nccwpck_require__(4589) const { isErrored, isDisturbed } = __nccwpck_require__(7075) const { isArrayBuffer } = __nccwpck_require__(3429) -const { serializeAMimeType } = __nccwpck_require__(192) -const { multipartFormDataParser } = __nccwpck_require__(8016) +const { serializeAMimeType } = __nccwpck_require__(8394) +const { multipartFormDataParser } = __nccwpck_require__(6442) let random try { @@ -45261,7 +45226,7 @@ module.exports = { /***/ }), -/***/ 4219: +/***/ 1797: /***/ ((module) => { @@ -45392,7 +45357,7 @@ module.exports = { /***/ }), -/***/ 192: +/***/ 8394: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -46143,12 +46108,12 @@ module.exports = { /***/ }), -/***/ 8905: +/***/ 379: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kConnected, kSize } = __nccwpck_require__(8031) +const { kConnected, kSize } = __nccwpck_require__(3373) class CompatWeakRef { constructor (value) { @@ -46196,14 +46161,14 @@ module.exports = function () { /***/ }), -/***/ 3486: +/***/ 2944: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Blob, File } = __nccwpck_require__(4573) -const { kState } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) +const { kState } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) // TODO(@KhafraDev): remove class FileLike { @@ -46329,16 +46294,16 @@ module.exports = { FileLike, isFileLike } /***/ }), -/***/ 8016: +/***/ 6442: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { isUSVString, bufferToLowerCasedHeaderName } = __nccwpck_require__(9500) -const { utf8DecodeBytes } = __nccwpck_require__(1204) -const { HTTP_TOKEN_CODEPOINTS, isomorphicDecode } = __nccwpck_require__(192) -const { isFileLike } = __nccwpck_require__(3486) -const { makeEntry } = __nccwpck_require__(3818) +const { isUSVString, bufferToLowerCasedHeaderName } = __nccwpck_require__(7662) +const { utf8DecodeBytes } = __nccwpck_require__(7722) +const { HTTP_TOKEN_CODEPOINTS, isomorphicDecode } = __nccwpck_require__(8394) +const { isFileLike } = __nccwpck_require__(2944) +const { makeEntry } = __nccwpck_require__(8932) const assert = __nccwpck_require__(4589) const { File: NodeFile } = __nccwpck_require__(4573) @@ -46810,16 +46775,16 @@ module.exports = { /***/ }), -/***/ 3818: +/***/ 8932: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { isBlobLike, iteratorMixin } = __nccwpck_require__(1204) -const { kState } = __nccwpck_require__(3175) -const { kEnumerableProperty } = __nccwpck_require__(9500) -const { FileLike, isFileLike } = __nccwpck_require__(3486) -const { webidl } = __nccwpck_require__(4625) +const { isBlobLike, iteratorMixin } = __nccwpck_require__(7722) +const { kState } = __nccwpck_require__(1) +const { kEnumerableProperty } = __nccwpck_require__(7662) +const { FileLike, isFileLike } = __nccwpck_require__(2944) +const { webidl } = __nccwpck_require__(9735) const { File: NativeFile } = __nccwpck_require__(4573) const nodeUtil = __nccwpck_require__(7975) @@ -47069,7 +47034,7 @@ module.exports = { FormData, makeEntry } /***/ }), -/***/ 5311: +/***/ 777: /***/ ((module) => { @@ -47116,21 +47081,21 @@ module.exports = { /***/ }), -/***/ 3408: +/***/ 8146: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // https://github.com/Ethan-Arrowood/undici-fetch -const { kConstruct } = __nccwpck_require__(8031) -const { kEnumerableProperty } = __nccwpck_require__(9500) +const { kConstruct } = __nccwpck_require__(3373) +const { kEnumerableProperty } = __nccwpck_require__(7662) const { iteratorMixin, isValidHeaderName, isValidHeaderValue -} = __nccwpck_require__(1204) -const { webidl } = __nccwpck_require__(4625) +} = __nccwpck_require__(7722) +const { webidl } = __nccwpck_require__(9735) const assert = __nccwpck_require__(4589) const util = __nccwpck_require__(7975) @@ -47810,7 +47775,7 @@ module.exports = { /***/ }), -/***/ 4202: +/***/ 224: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // https://github.com/Ethan-Arrowood/undici-fetch @@ -47823,9 +47788,9 @@ const { filterResponse, makeResponse, fromInnerResponse -} = __nccwpck_require__(7287) -const { HeadersList } = __nccwpck_require__(3408) -const { Request, cloneRequest } = __nccwpck_require__(9683) +} = __nccwpck_require__(2873) +const { HeadersList } = __nccwpck_require__(8146) +const { Request, cloneRequest } = __nccwpck_require__(557) const zlib = __nccwpck_require__(8522) const { bytesMatch, @@ -47861,23 +47826,23 @@ const { buildContentRange, createInflate, extractMimeType -} = __nccwpck_require__(1204) -const { kState, kDispatcher } = __nccwpck_require__(3175) +} = __nccwpck_require__(7722) +const { kState, kDispatcher } = __nccwpck_require__(1) const assert = __nccwpck_require__(4589) -const { safelyExtractBody, extractBody } = __nccwpck_require__(1448) +const { safelyExtractBody, extractBody } = __nccwpck_require__(4086) const { redirectStatusSet, nullBodyStatus, safeMethodsSet, requestBodyHeader, subresourceSet -} = __nccwpck_require__(4219) +} = __nccwpck_require__(1797) const EE = __nccwpck_require__(8474) const { Readable, pipeline, finished } = __nccwpck_require__(7075) -const { addAbortListener, isErrored, isReadable, bufferToLowerCasedHeaderName } = __nccwpck_require__(9500) -const { dataURLProcessor, serializeAMimeType, minimizeSupportedMimeType } = __nccwpck_require__(192) -const { getGlobalDispatcher } = __nccwpck_require__(1481) -const { webidl } = __nccwpck_require__(4625) +const { addAbortListener, isErrored, isReadable, bufferToLowerCasedHeaderName } = __nccwpck_require__(7662) +const { dataURLProcessor, serializeAMimeType, minimizeSupportedMimeType } = __nccwpck_require__(8394) +const { getGlobalDispatcher } = __nccwpck_require__(8707) +const { webidl } = __nccwpck_require__(9735) const { STATUS_CODES } = __nccwpck_require__(7067) const GET_OR_HEAD = ['GET', 'HEAD'] @@ -50089,23 +50054,23 @@ module.exports = { /***/ }), -/***/ 9683: +/***/ 557: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /* globals AbortController */ -const { extractBody, mixinBody, cloneBody, bodyUnusable } = __nccwpck_require__(1448) -const { Headers, fill: fillHeaders, HeadersList, setHeadersGuard, getHeadersGuard, setHeadersList, getHeadersList } = __nccwpck_require__(3408) -const { FinalizationRegistry } = __nccwpck_require__(8905)() -const util = __nccwpck_require__(9500) +const { extractBody, mixinBody, cloneBody, bodyUnusable } = __nccwpck_require__(4086) +const { Headers, fill: fillHeaders, HeadersList, setHeadersGuard, getHeadersGuard, setHeadersList, getHeadersList } = __nccwpck_require__(8146) +const { FinalizationRegistry } = __nccwpck_require__(379)() +const util = __nccwpck_require__(7662) const nodeUtil = __nccwpck_require__(7975) const { isValidHTTPToken, sameOrigin, environmentSettingsObject -} = __nccwpck_require__(1204) +} = __nccwpck_require__(7722) const { forbiddenMethodsSet, corsSafeListedMethodsSet, @@ -50115,12 +50080,12 @@ const { requestCredentials, requestCache, requestDuplex -} = __nccwpck_require__(4219) +} = __nccwpck_require__(1797) const { kEnumerableProperty, normalizedMethodRecordsBase, normalizedMethodRecords } = util -const { kHeaders, kSignal, kState, kDispatcher } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) -const { URLSerializer } = __nccwpck_require__(192) -const { kConstruct } = __nccwpck_require__(8031) +const { kHeaders, kSignal, kState, kDispatcher } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) +const { URLSerializer } = __nccwpck_require__(8394) +const { kConstruct } = __nccwpck_require__(3373) const assert = __nccwpck_require__(4589) const { getMaxListeners, setMaxListeners, getEventListeners, defaultMaxListeners } = __nccwpck_require__(8474) @@ -51133,14 +51098,14 @@ module.exports = { Request, makeRequest, fromInnerRequest, cloneRequest } /***/ }), -/***/ 7287: +/***/ 2873: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { Headers, HeadersList, fill, getHeadersGuard, setHeadersGuard, setHeadersList } = __nccwpck_require__(3408) -const { extractBody, cloneBody, mixinBody, hasFinalizationRegistry, streamRegistry, bodyUnusable } = __nccwpck_require__(1448) -const util = __nccwpck_require__(9500) +const { Headers, HeadersList, fill, getHeadersGuard, setHeadersGuard, setHeadersList } = __nccwpck_require__(8146) +const { extractBody, cloneBody, mixinBody, hasFinalizationRegistry, streamRegistry, bodyUnusable } = __nccwpck_require__(4086) +const util = __nccwpck_require__(7662) const nodeUtil = __nccwpck_require__(7975) const { kEnumerableProperty } = util const { @@ -51152,16 +51117,16 @@ const { isErrorLike, isomorphicEncode, environmentSettingsObject: relevantRealm -} = __nccwpck_require__(1204) +} = __nccwpck_require__(7722) const { redirectStatusSet, nullBodyStatus -} = __nccwpck_require__(4219) -const { kState, kHeaders } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) -const { FormData } = __nccwpck_require__(3818) -const { URLSerializer } = __nccwpck_require__(192) -const { kConstruct } = __nccwpck_require__(8031) +} = __nccwpck_require__(1797) +const { kState, kHeaders } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) +const { FormData } = __nccwpck_require__(8932) +const { URLSerializer } = __nccwpck_require__(8394) +const { kConstruct } = __nccwpck_require__(3373) const assert = __nccwpck_require__(4589) const { types } = __nccwpck_require__(7975) @@ -51750,7 +51715,7 @@ module.exports = { /***/ }), -/***/ 3175: +/***/ 1: /***/ ((module) => { @@ -51766,21 +51731,21 @@ module.exports = { /***/ }), -/***/ 1204: +/***/ 7722: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Transform } = __nccwpck_require__(7075) const zlib = __nccwpck_require__(8522) -const { redirectStatusSet, referrerPolicySet: referrerPolicyTokens, badPortsSet } = __nccwpck_require__(4219) -const { getGlobalOrigin } = __nccwpck_require__(5311) -const { collectASequenceOfCodePoints, collectAnHTTPQuotedString, removeChars, parseMIMEType } = __nccwpck_require__(192) +const { redirectStatusSet, referrerPolicySet: referrerPolicyTokens, badPortsSet } = __nccwpck_require__(1797) +const { getGlobalOrigin } = __nccwpck_require__(777) +const { collectASequenceOfCodePoints, collectAnHTTPQuotedString, removeChars, parseMIMEType } = __nccwpck_require__(8394) const { performance } = __nccwpck_require__(643) -const { isBlobLike, ReadableStreamFrom, isValidHTTPToken, normalizedMethodRecordsBase } = __nccwpck_require__(9500) +const { isBlobLike, ReadableStreamFrom, isValidHTTPToken, normalizedMethodRecordsBase } = __nccwpck_require__(7662) const assert = __nccwpck_require__(4589) const { isUint8Array } = __nccwpck_require__(3429) -const { webidl } = __nccwpck_require__(4625) +const { webidl } = __nccwpck_require__(9735) let supportedHashes = [] @@ -53405,14 +53370,14 @@ module.exports = { /***/ }), -/***/ 4625: +/***/ 9735: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { types, inspect } = __nccwpck_require__(7975) const { markAsUncloneable } = __nccwpck_require__(5919) -const { toUSVString } = __nccwpck_require__(9500) +const { toUSVString } = __nccwpck_require__(7662) /** @type {import('../../../types/webidl').Webidl} */ const webidl = {} @@ -54107,7 +54072,7 @@ module.exports = { /***/ }), -/***/ 1691: +/***/ 2705: /***/ ((module) => { @@ -54404,7 +54369,7 @@ module.exports = { /***/ }), -/***/ 6575: +/***/ 7669: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -54413,16 +54378,16 @@ const { staticPropertyDescriptors, readOperation, fireAProgressEvent -} = __nccwpck_require__(6014) +} = __nccwpck_require__(8912) const { kState, kError, kResult, kEvents, kAborted -} = __nccwpck_require__(8445) -const { webidl } = __nccwpck_require__(4625) -const { kEnumerableProperty } = __nccwpck_require__(9500) +} = __nccwpck_require__(6107) +const { webidl } = __nccwpck_require__(9735) +const { kEnumerableProperty } = __nccwpck_require__(7662) class FileReader extends EventTarget { constructor () { @@ -54755,12 +54720,12 @@ module.exports = { /***/ }), -/***/ 9393: +/***/ 1367: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { webidl } = __nccwpck_require__(4625) +const { webidl } = __nccwpck_require__(9735) const kState = Symbol('ProgressEvent state') @@ -54840,7 +54805,7 @@ module.exports = { /***/ }), -/***/ 8445: +/***/ 6107: /***/ ((module) => { @@ -54857,7 +54822,7 @@ module.exports = { /***/ }), -/***/ 6014: +/***/ 8912: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -54868,12 +54833,12 @@ const { kResult, kAborted, kLastProgressEventFired -} = __nccwpck_require__(8445) -const { ProgressEvent } = __nccwpck_require__(9393) -const { getEncoding } = __nccwpck_require__(1691) -const { serializeAMimeType, parseMIMEType } = __nccwpck_require__(192) +} = __nccwpck_require__(6107) +const { ProgressEvent } = __nccwpck_require__(1367) +const { getEncoding } = __nccwpck_require__(2705) +const { serializeAMimeType, parseMIMEType } = __nccwpck_require__(8394) const { types } = __nccwpck_require__(7975) -const { StringDecoder } = __nccwpck_require__(5574) +const { StringDecoder } = __nccwpck_require__(3193) const { btoa } = __nccwpck_require__(4573) /** @type {PropertyDescriptor} */ @@ -55255,27 +55220,27 @@ module.exports = { /***/ }), -/***/ 773: +/***/ 9431: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { uid, states, sentCloseFrameState, emptyBuffer, opcodes } = __nccwpck_require__(7119) +const { uid, states, sentCloseFrameState, emptyBuffer, opcodes } = __nccwpck_require__(5214) const { kReadyState, kSentClose, kByteParser, kReceivedClose, kResponse -} = __nccwpck_require__(4911) -const { fireEvent, failWebsocketConnection, isClosing, isClosed, isEstablished, parseExtensions } = __nccwpck_require__(965) -const { channels } = __nccwpck_require__(5458) -const { CloseEvent } = __nccwpck_require__(4379) -const { makeRequest } = __nccwpck_require__(9683) -const { fetching } = __nccwpck_require__(4202) -const { Headers, getHeadersList } = __nccwpck_require__(3408) -const { getDecodeSplit } = __nccwpck_require__(1204) -const { WebsocketFrameSend } = __nccwpck_require__(9676) +} = __nccwpck_require__(1150) +const { fireEvent, failWebsocketConnection, isClosing, isClosed, isEstablished, parseExtensions } = __nccwpck_require__(3155) +const { channels } = __nccwpck_require__(8560) +const { CloseEvent } = __nccwpck_require__(7690) +const { makeRequest } = __nccwpck_require__(557) +const { fetching } = __nccwpck_require__(224) +const { Headers, getHeadersList } = __nccwpck_require__(8146) +const { getDecodeSplit } = __nccwpck_require__(7722) +const { WebsocketFrameSend } = __nccwpck_require__(2438) /** @type {import('crypto')} */ let crypto @@ -55633,7 +55598,7 @@ module.exports = { /***/ }), -/***/ 7119: +/***/ 5214: /***/ ((module) => { @@ -55706,14 +55671,14 @@ module.exports = { /***/ }), -/***/ 4379: +/***/ 7690: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { webidl } = __nccwpck_require__(4625) -const { kEnumerableProperty } = __nccwpck_require__(9500) -const { kConstruct } = __nccwpck_require__(8031) +const { webidl } = __nccwpck_require__(9735) +const { kEnumerableProperty } = __nccwpck_require__(7662) +const { kConstruct } = __nccwpck_require__(3373) const { MessagePort } = __nccwpck_require__(5919) /** @@ -56042,12 +56007,12 @@ module.exports = { /***/ }), -/***/ 9676: +/***/ 2438: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { maxUnsigned16Bit } = __nccwpck_require__(7119) +const { maxUnsigned16Bit } = __nccwpck_require__(5214) const BUFFER_SIZE = 16386 @@ -56145,14 +56110,14 @@ module.exports = { /***/ }), -/***/ 4841: +/***/ 4739: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { createInflateRaw, Z_DEFAULT_WINDOWBITS } = __nccwpck_require__(8522) -const { isValidClientWindowBits } = __nccwpck_require__(965) -const { MessageSizeExceededError } = __nccwpck_require__(3959) +const { isValidClientWindowBits } = __nccwpck_require__(3155) +const { MessageSizeExceededError } = __nccwpck_require__(5933) const tail = Buffer.from([0x00, 0x00, 0xff, 0xff]) const kBuffer = Symbol('kBuffer') @@ -56270,16 +56235,16 @@ module.exports = { PerMessageDeflate } /***/ }), -/***/ 1872: +/***/ 2502: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Writable } = __nccwpck_require__(7075) const assert = __nccwpck_require__(4589) -const { parserStates, opcodes, states, emptyBuffer, sentCloseFrameState } = __nccwpck_require__(7119) -const { kReadyState, kSentClose, kResponse, kReceivedClose } = __nccwpck_require__(4911) -const { channels } = __nccwpck_require__(5458) +const { parserStates, opcodes, states, emptyBuffer, sentCloseFrameState } = __nccwpck_require__(5214) +const { kReadyState, kSentClose, kResponse, kReceivedClose } = __nccwpck_require__(1150) +const { channels } = __nccwpck_require__(8560) const { isValidStatusCode, isValidOpcode, @@ -56289,10 +56254,10 @@ const { isControlFrame, isTextBinaryFrame, isContinuationFrame -} = __nccwpck_require__(965) -const { WebsocketFrameSend } = __nccwpck_require__(9676) -const { closeWebSocketConnection } = __nccwpck_require__(773) -const { PerMessageDeflate } = __nccwpck_require__(4841) +} = __nccwpck_require__(3155) +const { WebsocketFrameSend } = __nccwpck_require__(2438) +const { closeWebSocketConnection } = __nccwpck_require__(9431) +const { PerMessageDeflate } = __nccwpck_require__(4739) // This code was influenced by ws released under the MIT license. // Copyright (c) 2011 Einar Otto Stangvik @@ -56704,14 +56669,14 @@ module.exports = { /***/ }), -/***/ 504: +/***/ 7562: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { WebsocketFrameSend } = __nccwpck_require__(9676) -const { opcodes, sendHints } = __nccwpck_require__(7119) -const FixedQueue = __nccwpck_require__(5464) +const { WebsocketFrameSend } = __nccwpck_require__(2438) +const { opcodes, sendHints } = __nccwpck_require__(5214) +const FixedQueue = __nccwpck_require__(1034) /** @type {typeof Uint8Array} */ const FastBuffer = Buffer[Symbol.species] @@ -56815,7 +56780,7 @@ module.exports = { SendQueue } /***/ }), -/***/ 4911: +/***/ 1150: /***/ ((module) => { @@ -56834,16 +56799,16 @@ module.exports = { /***/ }), -/***/ 965: +/***/ 3155: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kReadyState, kController, kResponse, kBinaryType, kWebSocketURL } = __nccwpck_require__(4911) -const { states, opcodes } = __nccwpck_require__(7119) -const { ErrorEvent, createFastMessageEvent } = __nccwpck_require__(4379) +const { kReadyState, kController, kResponse, kBinaryType, kWebSocketURL } = __nccwpck_require__(1150) +const { states, opcodes } = __nccwpck_require__(5214) +const { ErrorEvent, createFastMessageEvent } = __nccwpck_require__(7690) const { isUtf8 } = __nccwpck_require__(4573) -const { collectASequenceOfCodePointsFast, removeHTTPWhitespace } = __nccwpck_require__(192) +const { collectASequenceOfCodePointsFast, removeHTTPWhitespace } = __nccwpck_require__(8394) /* globals Blob */ @@ -57163,15 +57128,15 @@ module.exports = { /***/ }), -/***/ 2522: +/***/ 7836: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { webidl } = __nccwpck_require__(4625) -const { URLSerializer } = __nccwpck_require__(192) -const { environmentSettingsObject } = __nccwpck_require__(1204) -const { staticPropertyDescriptors, states, sentCloseFrameState, sendHints } = __nccwpck_require__(7119) +const { webidl } = __nccwpck_require__(9735) +const { URLSerializer } = __nccwpck_require__(8394) +const { environmentSettingsObject } = __nccwpck_require__(7722) +const { staticPropertyDescriptors, states, sentCloseFrameState, sendHints } = __nccwpck_require__(5214) const { kWebSocketURL, kReadyState, @@ -57180,21 +57145,21 @@ const { kResponse, kSentClose, kByteParser -} = __nccwpck_require__(4911) +} = __nccwpck_require__(1150) const { isConnecting, isEstablished, isClosing, isValidSubprotocol, fireEvent -} = __nccwpck_require__(965) -const { establishWebSocketConnection, closeWebSocketConnection } = __nccwpck_require__(773) -const { ByteParser } = __nccwpck_require__(1872) -const { kEnumerableProperty, isBlobLike } = __nccwpck_require__(9500) -const { getGlobalDispatcher } = __nccwpck_require__(1481) +} = __nccwpck_require__(3155) +const { establishWebSocketConnection, closeWebSocketConnection } = __nccwpck_require__(9431) +const { ByteParser } = __nccwpck_require__(2502) +const { kEnumerableProperty, isBlobLike } = __nccwpck_require__(7662) +const { getGlobalDispatcher } = __nccwpck_require__(8707) const { types } = __nccwpck_require__(7975) -const { ErrorEvent, CloseEvent } = __nccwpck_require__(4379) -const { SendQueue } = __nccwpck_require__(504) +const { ErrorEvent, CloseEvent } = __nccwpck_require__(7690) +const { SendQueue } = __nccwpck_require__(7562) // https://websockets.spec.whatwg.org/#interface-definition class WebSocket extends EventTarget { @@ -57758,7 +57723,7 @@ module.exports = { /***/ }), -/***/ 1436: +/***/ 7260: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -57771,7 +57736,7 @@ module.exports = __nccwpck_require__(9023).deprecate; /***/ }), -/***/ 8579: +/***/ 5231: /***/ (function(module) { /*! @@ -62068,28 +62033,28 @@ module.exports = __nccwpck_require__(9023).deprecate; /***/ }), -/***/ 5224: +/***/ 3766: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Expose modern transport directly as the export -module.exports = __nccwpck_require__(5453); +module.exports = __nccwpck_require__(5479); // Expose legacy stream -module.exports.LegacyTransportStream = __nccwpck_require__(5481); +module.exports.LegacyTransportStream = __nccwpck_require__(4159); /***/ }), -/***/ 5481: +/***/ 4159: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const util = __nccwpck_require__(9023); -const { LEVEL } = __nccwpck_require__(1544); -const TransportStream = __nccwpck_require__(5453); +const { LEVEL } = __nccwpck_require__(1255); +const TransportStream = __nccwpck_require__(5479); /** * Constructor function for the LegacyTransportStream. This is an internal @@ -62208,14 +62173,14 @@ LegacyTransportStream.prototype.close = function close() { /***/ }), -/***/ 5453: +/***/ 5479: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const util = __nccwpck_require__(9023); -const Writable = __nccwpck_require__(6233); -const { LEVEL } = __nccwpck_require__(1544); +const Writable = __nccwpck_require__(5422); +const { LEVEL } = __nccwpck_require__(1255); /** * Constructor function for the TransportStream. This is the base prototype @@ -62426,7 +62391,7 @@ TransportStream.prototype._nop = function _nop() { /***/ }), -/***/ 9308: +/***/ 9654: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { /** @@ -62438,24 +62403,24 @@ TransportStream.prototype._nop = function _nop() { -const logform = __nccwpck_require__(116); -const { warn } = __nccwpck_require__(8618); +const logform = __nccwpck_require__(6946); +const { warn } = __nccwpck_require__(9652); /** * Expose version. Use `require` method for `webpack` support. * @type {string} */ -exports.version = __nccwpck_require__(7241).version; +exports.version = __nccwpck_require__(1306).version; /** * Include transports defined by default by winston * @type {Array} */ -exports.transports = __nccwpck_require__(1361); +exports.transports = __nccwpck_require__(8640); /** * Expose utility methods * @type {Object} */ -exports.config = __nccwpck_require__(1010); +exports.config = __nccwpck_require__(1456); /** * Hoist format-related functionality from logform. * @type {Object} @@ -62470,32 +62435,32 @@ exports.format = logform.format; * Expose core Logging-related prototypes. * @type {function} */ -exports.createLogger = __nccwpck_require__(7560); +exports.createLogger = __nccwpck_require__(2950); /** * Expose core Logging-related prototypes. * @type {function} */ -exports.Logger = __nccwpck_require__(2163); +exports.Logger = __nccwpck_require__(5325); /** * Expose core Logging-related prototypes. * @type {Object} */ -exports.ExceptionHandler = __nccwpck_require__(4367); +exports.ExceptionHandler = __nccwpck_require__(321); /** * Expose core Logging-related prototypes. * @type {Object} */ -exports.RejectionHandler = __nccwpck_require__(6033); +exports.RejectionHandler = __nccwpck_require__(7699); /** * Expose core Logging-related prototypes. * @type {Container} */ -exports.Container = __nccwpck_require__(8324); +exports.Container = __nccwpck_require__(4926); /** * Expose core Logging-related prototypes. * @type {Object} */ -exports.Transport = __nccwpck_require__(5224); +exports.Transport = __nccwpck_require__(3766); /** * We create and expose a default `Container` to `winston.loggers` so that the * programmer may manage multiple `winston.Logger` instances without any @@ -62624,7 +62589,7 @@ warn.forProperties(exports, 'deprecated', ['emitErrs', 'levelLength']); /***/ }), -/***/ 8618: +/***/ 9652: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { /** @@ -62677,7 +62642,7 @@ exports.warn = { /***/ }), -/***/ 1010: +/***/ 1456: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { /** @@ -62689,8 +62654,8 @@ exports.warn = { -const logform = __nccwpck_require__(116); -const { configs } = __nccwpck_require__(1544); +const logform = __nccwpck_require__(6946); +const { configs } = __nccwpck_require__(1255); /** * Export config set for the CLI. @@ -62719,7 +62684,7 @@ exports.addColors = logform.levels; /***/ }), -/***/ 8324: +/***/ 4926: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /** @@ -62731,7 +62696,7 @@ exports.addColors = logform.levels; -const createLogger = __nccwpck_require__(7560); +const createLogger = __nccwpck_require__(2950); /** * Inversion of control container for winston logger instances. @@ -62844,7 +62809,7 @@ module.exports = class Container { /***/ }), -/***/ 7560: +/***/ 2950: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /** @@ -62856,10 +62821,10 @@ module.exports = class Container { -const { LEVEL } = __nccwpck_require__(1544); -const config = __nccwpck_require__(1010); -const Logger = __nccwpck_require__(2163); -const debug = __nccwpck_require__(6479)('winston:create-logger'); +const { LEVEL } = __nccwpck_require__(1255); +const config = __nccwpck_require__(1456); +const Logger = __nccwpck_require__(5325); +const debug = __nccwpck_require__(6302)('winston:create-logger'); function isLevelEnabledFunctionName(level) { return 'is' + level.charAt(0).toUpperCase() + level.slice(1) + 'Enabled'; @@ -62955,7 +62920,7 @@ module.exports = function (opts = {}) { /***/ }), -/***/ 4367: +/***/ 321: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /** @@ -62968,11 +62933,11 @@ module.exports = function (opts = {}) { const os = __nccwpck_require__(857); -const asyncForEach = __nccwpck_require__(7422); -const debug = __nccwpck_require__(6479)('winston:exception'); -const once = __nccwpck_require__(254); -const stackTrace = __nccwpck_require__(6064); -const ExceptionStream = __nccwpck_require__(1051); +const asyncForEach = __nccwpck_require__(3342); +const debug = __nccwpck_require__(6302)('winston:exception'); +const once = __nccwpck_require__(9224); +const stackTrace = __nccwpck_require__(1546); +const ExceptionStream = __nccwpck_require__(9345); /** * Object for handling uncaughtException events. @@ -63207,7 +63172,7 @@ module.exports = class ExceptionHandler { /***/ }), -/***/ 1051: +/***/ 9345: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /** @@ -63219,7 +63184,7 @@ module.exports = class ExceptionHandler { -const { Writable } = __nccwpck_require__(2727); +const { Writable } = __nccwpck_require__(436); /** * TODO: add class description. @@ -63268,7 +63233,7 @@ module.exports = class ExceptionStream extends Writable { /***/ }), -/***/ 2163: +/***/ 5325: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /** @@ -63280,16 +63245,16 @@ module.exports = class ExceptionStream extends Writable { -const { Stream, Transform } = __nccwpck_require__(2727); -const asyncForEach = __nccwpck_require__(7422); -const { LEVEL, SPLAT } = __nccwpck_require__(1544); -const isStream = __nccwpck_require__(1011); -const ExceptionHandler = __nccwpck_require__(4367); -const RejectionHandler = __nccwpck_require__(6033); -const LegacyTransportStream = __nccwpck_require__(5481); -const Profiler = __nccwpck_require__(4246); -const { warn } = __nccwpck_require__(8618); -const config = __nccwpck_require__(1010); +const { Stream, Transform } = __nccwpck_require__(436); +const asyncForEach = __nccwpck_require__(3342); +const { LEVEL, SPLAT } = __nccwpck_require__(1255); +const isStream = __nccwpck_require__(1066); +const ExceptionHandler = __nccwpck_require__(321); +const RejectionHandler = __nccwpck_require__(7699); +const LegacyTransportStream = __nccwpck_require__(4159); +const Profiler = __nccwpck_require__(1944); +const { warn } = __nccwpck_require__(9652); +const config = __nccwpck_require__(1456); /** * Captures the number of format (i.e. %s strings) in a given string. @@ -63375,7 +63340,7 @@ class Logger extends Transform { } this.silent = silent; - this.format = format || this.format || __nccwpck_require__(8300)(); + this.format = format || this.format || __nccwpck_require__(6810)(); this.defaultMeta = defaultMeta || null; // Hoist other options onto this instance. @@ -63975,7 +63940,7 @@ module.exports = Logger; /***/ }), -/***/ 4246: +/***/ 1944: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /** @@ -64000,7 +63965,7 @@ class Profiler { * @private */ constructor(logger) { - const Logger = __nccwpck_require__(2163); + const Logger = __nccwpck_require__(5325); if (typeof logger !== 'object' || Array.isArray(logger) || !(logger instanceof Logger)) { throw new Error('Logger is required for profiling'); } else { @@ -64035,7 +64000,7 @@ module.exports = Profiler; /***/ }), -/***/ 6033: +/***/ 7699: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /** @@ -64048,11 +64013,11 @@ module.exports = Profiler; const os = __nccwpck_require__(857); -const asyncForEach = __nccwpck_require__(7422); -const debug = __nccwpck_require__(6479)('winston:rejection'); -const once = __nccwpck_require__(254); -const stackTrace = __nccwpck_require__(6064); -const RejectionStream = __nccwpck_require__(9873); +const asyncForEach = __nccwpck_require__(3342); +const debug = __nccwpck_require__(6302)('winston:rejection'); +const once = __nccwpck_require__(9224); +const stackTrace = __nccwpck_require__(1546); +const RejectionStream = __nccwpck_require__(9951); /** * Object for handling unhandledRejection events. @@ -64293,7 +64258,7 @@ module.exports = class RejectionHandler { /***/ }), -/***/ 9873: +/***/ 9951: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /** @@ -64305,7 +64270,7 @@ module.exports = class RejectionHandler { -const { Writable } = __nccwpck_require__(2727); +const { Writable } = __nccwpck_require__(436); /** * TODO: add class description. @@ -64352,7 +64317,7 @@ module.exports = class RejectionStream extends Writable { /***/ }), -/***/ 2360: +/***/ 8586: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /** @@ -64365,8 +64330,8 @@ module.exports = class RejectionStream extends Writable { const fs = __nccwpck_require__(9896); -const { StringDecoder } = __nccwpck_require__(5574); -const { Stream } = __nccwpck_require__(2727); +const { StringDecoder } = __nccwpck_require__(3193); +const { Stream } = __nccwpck_require__(436); /** * Simple no-op function. @@ -64483,7 +64448,7 @@ module.exports = (options, iter) => { /***/ }), -/***/ 9155: +/***/ 2938: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /* eslint-disable no-console */ @@ -64497,8 +64462,8 @@ module.exports = (options, iter) => { const os = __nccwpck_require__(857); -const { LEVEL, MESSAGE } = __nccwpck_require__(1544); -const TransportStream = __nccwpck_require__(5224); +const { LEVEL, MESSAGE } = __nccwpck_require__(1255); +const TransportStream = __nccwpck_require__(3766); /** * Transport for outputting to the console. @@ -64615,7 +64580,7 @@ module.exports = class Console extends TransportStream { /***/ }), -/***/ 1786: +/***/ 7248: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /* eslint-disable complexity,max-statements */ @@ -64630,14 +64595,14 @@ module.exports = class Console extends TransportStream { const fs = __nccwpck_require__(9896); const path = __nccwpck_require__(6928); -const asyncSeries = __nccwpck_require__(2059); +const asyncSeries = __nccwpck_require__(491); const zlib = __nccwpck_require__(3106); -const { MESSAGE } = __nccwpck_require__(1544); -const { Stream, PassThrough } = __nccwpck_require__(2727); -const TransportStream = __nccwpck_require__(5224); -const debug = __nccwpck_require__(6479)('winston:file'); +const { MESSAGE } = __nccwpck_require__(1255); +const { Stream, PassThrough } = __nccwpck_require__(436); +const TransportStream = __nccwpck_require__(3766); +const debug = __nccwpck_require__(6302)('winston:file'); const os = __nccwpck_require__(857); -const tailFile = __nccwpck_require__(2360); +const tailFile = __nccwpck_require__(8586); /** * Transport for outputting to a local log file. @@ -65417,7 +65382,7 @@ module.exports = class File extends TransportStream { /***/ }), -/***/ 1796: +/***/ 2774: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /** @@ -65431,9 +65396,9 @@ module.exports = class File extends TransportStream { const http = __nccwpck_require__(8611); const https = __nccwpck_require__(5692); -const { Stream } = __nccwpck_require__(2727); -const TransportStream = __nccwpck_require__(5224); -const { configure } = __nccwpck_require__(3831); +const { Stream } = __nccwpck_require__(436); +const TransportStream = __nccwpck_require__(3766); +const { configure } = __nccwpck_require__(4450); /** * Transport for outputting to a json-rpc server. @@ -65686,7 +65651,7 @@ module.exports = class Http extends TransportStream { /***/ }), -/***/ 1361: +/***/ 8640: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { /** @@ -65706,7 +65671,7 @@ Object.defineProperty(exports, "Console", ({ configurable: true, enumerable: true, get() { - return __nccwpck_require__(9155); + return __nccwpck_require__(2938); } })); @@ -65718,7 +65683,7 @@ Object.defineProperty(exports, "File", ({ configurable: true, enumerable: true, get() { - return __nccwpck_require__(1786); + return __nccwpck_require__(7248); } })); @@ -65730,7 +65695,7 @@ Object.defineProperty(exports, "Http", ({ configurable: true, enumerable: true, get() { - return __nccwpck_require__(1796); + return __nccwpck_require__(2774); } })); @@ -65742,14 +65707,14 @@ Object.defineProperty(exports, "Stream", ({ configurable: true, enumerable: true, get() { - return __nccwpck_require__(3404); + return __nccwpck_require__(9006); } })); /***/ }), -/***/ 3404: +/***/ 9006: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /** @@ -65761,10 +65726,10 @@ Object.defineProperty(exports, "Stream", ({ -const isStream = __nccwpck_require__(1011); -const { MESSAGE } = __nccwpck_require__(1544); +const isStream = __nccwpck_require__(1066); +const { MESSAGE } = __nccwpck_require__(1255); const os = __nccwpck_require__(857); -const TransportStream = __nccwpck_require__(5224); +const TransportStream = __nccwpck_require__(3766); /** * Transport for outputting to any arbitrary stream. @@ -65819,7 +65784,7 @@ module.exports = class Stream extends TransportStream { /***/ }), -/***/ 2776: +/***/ 6435: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { var __webpack_unused_export__; @@ -65831,10 +65796,10 @@ exports.q1 = readCompilerOptions; const path_1 = __nccwpck_require__(6928); const fs_1 = __nccwpck_require__(9896); const os_1 = __nccwpck_require__(857); -const util_1 = __nccwpck_require__(1238); +const util_1 = __nccwpck_require__(2343); const typescript_1 = __nccwpck_require__(5852); -const glob_1 = __nccwpck_require__(1393); -const file_writer_1 = __nccwpck_require__(9180); +const glob_1 = __nccwpck_require__(2514); +const file_writer_1 = __nccwpck_require__(8925); const logger = (0, util_1.createLogger)('compiler'); const { mkdir } = fs_1.promises; /** @@ -66018,7 +65983,7 @@ function parseModuleKind(input) { /***/ }), -/***/ 8514: +/***/ 1051: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -66027,7 +65992,7 @@ exports.copyFile = copyFile; exports.copyFiles = copyFiles; const fs_1 = __nccwpck_require__(9896); const path_1 = __nccwpck_require__(6928); -const util_1 = __nccwpck_require__(1238); +const util_1 = __nccwpck_require__(2343); const { copyFile: fsCopyFile } = fs_1.promises; const logger = (0, util_1.createLogger)('generator-common'); /** @@ -66057,7 +66022,7 @@ async function copyFiles(files, dest, overwrite) { /***/ }), -/***/ 5741: +/***/ 4400: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -66068,9 +66033,9 @@ exports.getFileExtension = getFileExtension; exports.createFile = createFile; const node_path_1 = __nccwpck_require__(6760); const node_fs_1 = __nccwpck_require__(3024); -const util_1 = __nccwpck_require__(1238); +const util_1 = __nccwpck_require__(2343); const prettier_1 = __nccwpck_require__(5824); -const util_2 = __nccwpck_require__(6417); +const util_2 = __nccwpck_require__(1490); const { writeFile, readFile } = node_fs_1.promises; const logger = (0, util_1.createLogger)('create-file'); /** @@ -66188,13 +66153,13 @@ async function createFile(directoryPath, fileName, content, options) { /***/ }), -/***/ 3314: +/***/ 6007: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.serializeImports = serializeImports; -const util_1 = __nccwpck_require__(1238); +const util_1 = __nccwpck_require__(2343); /** * @internal */ @@ -66208,7 +66173,7 @@ function serializeImports(imports) { /***/ }), -/***/ 9180: +/***/ 8925: /***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { @@ -66227,15 +66192,15 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); }; Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(8514), exports); -__exportStar(__nccwpck_require__(8079), exports); -__exportStar(__nccwpck_require__(5741), exports); -__exportStar(__nccwpck_require__(3314), exports); +__exportStar(__nccwpck_require__(1051), exports); +__exportStar(__nccwpck_require__(3604), exports); +__exportStar(__nccwpck_require__(4400), exports); +__exportStar(__nccwpck_require__(6007), exports); //# sourceMappingURL=index.js.map /***/ }), -/***/ 8079: +/***/ 3604: /***/ ((__unused_webpack_module, exports) => { @@ -66270,7 +66235,7 @@ function packageJsonBase(options) { /***/ }), -/***/ 6417: +/***/ 1490: /***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { @@ -66283,8 +66248,8 @@ exports.validateNpmCompliance = validateNpmCompliance; exports.npmCompliantName = npmCompliantName; exports.directoryToSpeakingModuleName = directoryToSpeakingModuleName; exports.directoryToServiceName = directoryToServiceName; -const util_1 = __nccwpck_require__(1238); -const voca_1 = __importDefault(__nccwpck_require__(8579)); +const util_1 = __nccwpck_require__(2343); +const voca_1 = __importDefault(__nccwpck_require__(5231)); /** * @returns A copyright header * @internal @@ -66375,7 +66340,7 @@ function splitAtFirstOccurrence(str, separator) { /***/ }), -/***/ 9947: +/***/ 1730: /***/ ((__unused_webpack_module, exports) => { @@ -66533,14 +66498,14 @@ function filterDuplicatesRight(arr, comparator = (left, right) => left === right /***/ }), -/***/ 8745: +/***/ 3622: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.codeBlock = codeBlock; -const array_1 = __nccwpck_require__(9947); -const string_1 = __nccwpck_require__(4757); +const array_1 = __nccwpck_require__(1730); +const string_1 = __nccwpck_require__(2310); /** * @experimental This API is experimental and might change in newer versions. Use with caution. * Transform strings and arguments to a string formatted as a code block, keeping the indentation of sub code blocks. @@ -66580,14 +66545,14 @@ function trimRightNewlines(string) { /***/ }), -/***/ 7396: +/***/ 5201: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.documentationBlock = documentationBlock; -const array_1 = __nccwpck_require__(9947); -const logger_1 = __nccwpck_require__(4587); +const array_1 = __nccwpck_require__(1730); +const logger_1 = __nccwpck_require__(3112); const logger = (0, logger_1.createLogger)('documentation-block'); /** * @experimental This API is experimental and might change in newer versions. Use with caution. @@ -66659,7 +66624,7 @@ function maskProblematicCharacters(str) { /***/ }), -/***/ 3350: +/***/ 7419: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -66667,7 +66632,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true })); exports.equalObjects = equalObjects; exports.equal = equal; exports.equalArrays = equalArrays; -const nullish_1 = __nccwpck_require__(2597); +const nullish_1 = __nccwpck_require__(608); /** * Checks whether the keys and values of two objects are equal. * @param obj1 - The first object. @@ -66714,14 +66679,14 @@ function equalArrays(arr1, arr2) { /***/ }), -/***/ 7063: +/***/ 4684: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.ErrorWithCause = void 0; exports.isErrorWithCause = isErrorWithCause; -const logger_1 = __nccwpck_require__(4587); +const logger_1 = __nccwpck_require__(3112); const logger = (0, logger_1.createLogger)({ package: 'util', messageContext: 'error-with-cause' @@ -66789,7 +66754,7 @@ function isErrorWithCause(err) { /***/ }), -/***/ 8735: +/***/ 1276: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -66798,7 +66763,7 @@ exports.findProjectRoot = findProjectRoot; exports.readJSON = readJSON; const fs_1 = __nccwpck_require__(9896); const path_1 = __nccwpck_require__(6928); -const logger_1 = __nccwpck_require__(4587); +const logger_1 = __nccwpck_require__(3112); const logger = (0, logger_1.createLogger)({ package: 'util', messageContext: 'fs' @@ -66834,7 +66799,7 @@ function readJSON(path) { /***/ }), -/***/ 1238: +/***/ 2343: /***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { @@ -66858,28 +66823,28 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); }; Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(9947), exports); -__exportStar(__nccwpck_require__(8745), exports); -__exportStar(__nccwpck_require__(7396), exports); -__exportStar(__nccwpck_require__(3350), exports); -__exportStar(__nccwpck_require__(7063), exports); -__exportStar(__nccwpck_require__(8735), exports); -__exportStar(__nccwpck_require__(4587), exports); -__exportStar(__nccwpck_require__(2597), exports); -__exportStar(__nccwpck_require__(8011), exports); -__exportStar(__nccwpck_require__(3200), exports); -__exportStar(__nccwpck_require__(7779), exports); -__exportStar(__nccwpck_require__(228), exports); -__exportStar(__nccwpck_require__(4757), exports); -__exportStar(__nccwpck_require__(1366), exports); -__exportStar(__nccwpck_require__(6043), exports); -__exportStar(__nccwpck_require__(1491), exports); -__exportStar(__nccwpck_require__(7583), exports); +__exportStar(__nccwpck_require__(1730), exports); +__exportStar(__nccwpck_require__(3622), exports); +__exportStar(__nccwpck_require__(5201), exports); +__exportStar(__nccwpck_require__(7419), exports); +__exportStar(__nccwpck_require__(4684), exports); +__exportStar(__nccwpck_require__(1276), exports); +__exportStar(__nccwpck_require__(3112), exports); +__exportStar(__nccwpck_require__(608), exports); +__exportStar(__nccwpck_require__(4248), exports); +__exportStar(__nccwpck_require__(9047), exports); +__exportStar(__nccwpck_require__(7542), exports); +__exportStar(__nccwpck_require__(4399), exports); +__exportStar(__nccwpck_require__(2310), exports); +__exportStar(__nccwpck_require__(7841), exports); +__exportStar(__nccwpck_require__(4814), exports); +__exportStar(__nccwpck_require__(6770), exports); +__exportStar(__nccwpck_require__(2158), exports); //# sourceMappingURL=index.js.map /***/ }), -/***/ 628: +/***/ 9317: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -66901,8 +66866,8 @@ exports.getGlobalLogFormat = getGlobalLogFormat; exports.sanitizeRecord = sanitizeRecord; exports.resetCustomLogLevels = resetCustomLogLevels; exports.resetCustomLogFormats = resetCustomLogFormats; -const winston_1 = __nccwpck_require__(9308); -const format_1 = __nccwpck_require__(8599); +const winston_1 = __nccwpck_require__(9654); +const format_1 = __nccwpck_require__(5286); const loggerReference = 'sap-cloud-sdk-logger'; const exceptionLoggerId = 'sap-cloud-sdk-exception-logger'; const container = new winston_1.Container(); @@ -67188,7 +67153,7 @@ function resetCustomLogFormats() { /***/ }), -/***/ 8599: +/***/ 5286: /***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { @@ -67207,20 +67172,20 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); }; Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(9963), exports); -__exportStar(__nccwpck_require__(8004), exports); +__exportStar(__nccwpck_require__(5332), exports); +__exportStar(__nccwpck_require__(2457), exports); //# sourceMappingURL=index.js.map /***/ }), -/***/ 9963: +/***/ 5332: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.kibana = void 0; -const winston_1 = __nccwpck_require__(9308); -const local_1 = __nccwpck_require__(8004); +const winston_1 = __nccwpck_require__(9654); +const local_1 = __nccwpck_require__(2457); const { combine, timestamp, json, errors } = winston_1.format; /** * Format for logging in Kibana. @@ -67238,7 +67203,7 @@ function kibanaTransformer(info) { /***/ }), -/***/ 8004: +/***/ 2457: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -67246,7 +67211,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true })); exports.local = void 0; exports.getMessageOrStack = getMessageOrStack; const node_util_1 = __nccwpck_require__(7975); -const winston_1 = __nccwpck_require__(9308); +const winston_1 = __nccwpck_require__(9654); const { combine, timestamp, cli, printf, errors } = winston_1.format; /** * Format for local logging. @@ -67296,7 +67261,7 @@ function localTransformer(info) { /***/ }), -/***/ 4587: +/***/ 3112: /***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { @@ -67315,13 +67280,13 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); }; Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(628), exports); -__exportStar(__nccwpck_require__(8599), exports); +__exportStar(__nccwpck_require__(9317), exports); +__exportStar(__nccwpck_require__(5286), exports); //# sourceMappingURL=index.js.map /***/ }), -/***/ 2597: +/***/ 608: /***/ ((__unused_webpack_module, exports) => { @@ -67339,7 +67304,7 @@ function isNullish(val) { /***/ }), -/***/ 8011: +/***/ 4248: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -67352,7 +67317,7 @@ exports.pickValueIgnoreCase = pickValueIgnoreCase; exports.pickNonNullish = pickNonNullish; exports.mergeLeftIgnoreCase = mergeLeftIgnoreCase; exports.mergeIgnoreCase = mergeIgnoreCase; -const nullish_1 = __nccwpck_require__(2597); +const nullish_1 = __nccwpck_require__(608); /** * Checks if a chain of properties exists on the given object. * @param obj - The object to be checked. @@ -67492,7 +67457,7 @@ function mergeIgnoreCase(left = {}, right = {}) { /***/ }), -/***/ 3200: +/***/ 9047: /***/ ((__unused_webpack_module, exports) => { @@ -67510,7 +67475,7 @@ function identity(value) { /***/ }), -/***/ 7779: +/***/ 7542: /***/ ((__unused_webpack_module, exports) => { @@ -67538,7 +67503,7 @@ async function finishAll(promises, errorMessage) { /***/ }), -/***/ 228: +/***/ 4399: /***/ ((__unused_webpack_module, exports) => { @@ -67573,7 +67538,7 @@ function removeLeadingSlashes(path) { /***/ }), -/***/ 1366: +/***/ 7841: /***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { @@ -67588,7 +67553,7 @@ exports.titleFormat = titleFormat; exports.pascalCase = pascalCase; exports.kebabCase = kebabCase; exports.formatJson = formatJson; -const voca_1 = __importDefault(__nccwpck_require__(8579)); +const voca_1 = __importDefault(__nccwpck_require__(5231)); /** * Within all files generated by the SDK we use the unix style end of line delimiter. * We do not consider if the generator is executed on windows or unix systems. @@ -67656,7 +67621,7 @@ function formatJson(json) { /***/ }), -/***/ 4757: +/***/ 2310: /***/ ((__unused_webpack_module, exports) => { @@ -67728,7 +67693,7 @@ function removeFileExtension(fileName) { /***/ }), -/***/ 6043: +/***/ 4814: /***/ ((__unused_webpack_module, exports) => { @@ -67746,7 +67711,7 @@ function caps(oDataVersion) { /***/ }), -/***/ 1491: +/***/ 6770: /***/ ((__unused_webpack_module, exports) => { @@ -67883,7 +67848,7 @@ UniqueNameGenerator.MAXIMUM_NUMBER_OF_SUFFIX = 1000; /***/ }), -/***/ 7583: +/***/ 2158: /***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { @@ -67892,7 +67857,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { }; Object.defineProperty(exports, "__esModule", ({ value: true })); exports.checkUrlExists = checkUrlExists; -const axios_1 = __importDefault(__nccwpck_require__(8889)); +const axios_1 = __importDefault(__nccwpck_require__(4047)); /** * Checks whether a URL is existing via a head request. * @param url - URL to be checked. @@ -68180,7 +68145,7 @@ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("stream"); /***/ }), -/***/ 5574: +/***/ 3193: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("string_decoder"); @@ -68229,7 +68194,360 @@ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("zlib"); /***/ }), -/***/ 1393: +/***/ 885: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + + + +/* eslint-disable no-var */ + +var reusify = __nccwpck_require__(3728) + +function fastqueue (context, worker, _concurrency) { + if (typeof context === 'function') { + _concurrency = worker + worker = context + context = null + } + + if (!(_concurrency >= 1)) { + throw new Error('fastqueue concurrency must be equal to or greater than 1') + } + + var cache = reusify(Task) + var queueHead = null + var queueTail = null + var _running = 0 + var errorHandler = null + + var self = { + push: push, + drain: noop, + saturated: noop, + pause: pause, + paused: false, + + get concurrency () { + return _concurrency + }, + set concurrency (value) { + if (!(value >= 1)) { + throw new Error('fastqueue concurrency must be equal to or greater than 1') + } + _concurrency = value + + if (self.paused) return + for (; queueHead && _running < _concurrency;) { + _running++ + release() + } + }, + + running: running, + resume: resume, + idle: idle, + length: length, + getQueue: getQueue, + unshift: unshift, + empty: noop, + kill: kill, + killAndDrain: killAndDrain, + error: error, + abort: abort + } + + return self + + function running () { + return _running + } + + function pause () { + self.paused = true + } + + function length () { + var current = queueHead + var counter = 0 + + while (current) { + current = current.next + counter++ + } + + return counter + } + + function getQueue () { + var current = queueHead + var tasks = [] + + while (current) { + tasks.push(current.value) + current = current.next + } + + return tasks + } + + function resume () { + if (!self.paused) return + self.paused = false + if (queueHead === null) { + _running++ + release() + return + } + for (; queueHead && _running < _concurrency;) { + _running++ + release() + } + } + + function idle () { + return _running === 0 && self.length() === 0 + } + + function push (value, done) { + var current = cache.get() + + current.context = context + current.release = release + current.value = value + current.callback = done || noop + current.errorHandler = errorHandler + + if (_running >= _concurrency || self.paused) { + if (queueTail) { + queueTail.next = current + queueTail = current + } else { + queueHead = current + queueTail = current + self.saturated() + } + } else { + _running++ + worker.call(context, current.value, current.worked) + } + } + + function unshift (value, done) { + var current = cache.get() + + current.context = context + current.release = release + current.value = value + current.callback = done || noop + current.errorHandler = errorHandler + + if (_running >= _concurrency || self.paused) { + if (queueHead) { + current.next = queueHead + queueHead = current + } else { + queueHead = current + queueTail = current + self.saturated() + } + } else { + _running++ + worker.call(context, current.value, current.worked) + } + } + + function release (holder) { + if (holder) { + cache.release(holder) + } + var next = queueHead + if (next && _running <= _concurrency) { + if (!self.paused) { + if (queueTail === queueHead) { + queueTail = null + } + queueHead = next.next + next.next = null + worker.call(context, next.value, next.worked) + if (queueTail === null) { + self.empty() + } + } else { + _running-- + } + } else if (--_running === 0) { + self.drain() + } + } + + function kill () { + queueHead = null + queueTail = null + self.drain = noop + } + + function killAndDrain () { + queueHead = null + queueTail = null + self.drain() + self.drain = noop + } + + function abort () { + var current = queueHead + queueHead = null + queueTail = null + + while (current) { + var next = current.next + var callback = current.callback + var errorHandler = current.errorHandler + var val = current.value + var context = current.context + + // Reset the task state + current.value = null + current.callback = noop + current.errorHandler = null + + // Call error handler if present + if (errorHandler) { + errorHandler(new Error('abort'), val) + } + + // Call callback with error + callback.call(context, new Error('abort')) + + // Release the task back to the pool + current.release(current) + + current = next + } + + self.drain = noop + } + + function error (handler) { + errorHandler = handler + } +} + +function noop () {} + +function Task () { + this.value = null + this.callback = noop + this.next = null + this.release = noop + this.context = null + this.errorHandler = null + + var self = this + + this.worked = function worked (err, result) { + var callback = self.callback + var errorHandler = self.errorHandler + var val = self.value + self.value = null + self.callback = noop + if (self.errorHandler) { + errorHandler(err, val) + } + callback.call(self.context, err, result) + self.release(self) + } +} + +function queueAsPromised (context, worker, _concurrency) { + if (typeof context === 'function') { + _concurrency = worker + worker = context + context = null + } + + function asyncWrapper (arg, cb) { + worker.call(this, arg) + .then(function (res) { + cb(null, res) + }, cb) + } + + var queue = fastqueue(context, asyncWrapper, _concurrency) + + var pushCb = queue.push + var unshiftCb = queue.unshift + + queue.push = push + queue.unshift = unshift + queue.drained = drained + + return queue + + function push (value) { + var p = new Promise(function (resolve, reject) { + pushCb(value, function (err, result) { + if (err) { + reject(err) + return + } + resolve(result) + }) + }) + + // Let's fork the promise chain to + // make the error bubble up to the user but + // not lead to a unhandledRejection + p.catch(noop) + + return p + } + + function unshift (value) { + var p = new Promise(function (resolve, reject) { + unshiftCb(value, function (err, result) { + if (err) { + reject(err) + return + } + resolve(result) + }) + }) + + // Let's fork the promise chain to + // make the error bubble up to the user but + // not lead to a unhandledRejection + p.catch(noop) + + return p + } + + function drained () { + var p = new Promise(function (resolve) { + process.nextTick(function () { + if (queue.idle()) { + resolve() + } else { + var previousDrain = queue.drain + queue.drain = function () { + if (typeof previousDrain === 'function') previousDrain() + resolve() + queue.drain = previousDrain + } + } + }) + }) + + return p + } +} + +module.exports = fastqueue +module.exports.promise = queueAsPromised + + +/***/ }), + +/***/ 2514: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { var R=(n,t)=>()=>(t||n((t={exports:{}}).exports,t),t.exports);var Ge=R(Y=>{"use strict";Object.defineProperty(Y,"__esModule",{value:!0});Y.range=Y.balanced=void 0;var Gs=(n,t,e)=>{let s=n instanceof RegExp?Ie(n,e):n,i=t instanceof RegExp?Ie(t,e):t,r=s!==null&&i!=null&&(0,Y.range)(s,i,e);return r&&{start:r[0],end:r[1],pre:e.slice(0,r[0]),body:e.slice(r[0]+s.length,r[1]),post:e.slice(r[1]+i.length)}};Y.balanced=Gs;var Ie=(n,t)=>{let e=t.match(n);return e?e[0]:null},zs=(n,t,e)=>{let s,i,r,h,o,a=e.indexOf(n),l=e.indexOf(t,a+1),f=a;if(a>=0&&l>0){if(n===t)return[a,l];for(s=[],r=e.length;f>=0&&!o;){if(f===a)s.push(f),a=e.indexOf(n,f+1);else if(s.length===1){let c=s.pop();c!==void 0&&(o=[c,l])}else i=s.pop(),i!==void 0&&i=0?a:l}s.length&&h!==void 0&&(o=[r,h])}return o};Y.range=zs});var Ke=R(it=>{"use strict";Object.defineProperty(it,"__esModule",{value:!0});it.EXPANSION_MAX=void 0;it.expand=ei;var ze=Ge(),Ue="\0SLASH"+Math.random()+"\0",$e="\0OPEN"+Math.random()+"\0",ue="\0CLOSE"+Math.random()+"\0",qe="\0COMMA"+Math.random()+"\0",He="\0PERIOD"+Math.random()+"\0",Us=new RegExp(Ue,"g"),$s=new RegExp($e,"g"),qs=new RegExp(ue,"g"),Hs=new RegExp(qe,"g"),Vs=new RegExp(He,"g"),Ks=/\\\\/g,Xs=/\\{/g,Ys=/\\}/g,Js=/\\,/g,Zs=/\\./g;it.EXPANSION_MAX=1e5;function ce(n){return isNaN(n)?n.charCodeAt(0):parseInt(n,10)}function Qs(n){return n.replace(Ks,Ue).replace(Xs,$e).replace(Ys,ue).replace(Js,qe).replace(Zs,He)}function ti(n){return n.replace(Us,"\\").replace($s,"{").replace(qs,"}").replace(Hs,",").replace(Vs,".")}function Ve(n){if(!n)return[""];let t=[],e=(0,ze.balanced)("{","}",n);if(!e)return n.split(",");let{pre:s,body:i,post:r}=e,h=s.split(",");h[h.length-1]+="{"+i+"}";let o=Ve(r);return r.length&&(h[h.length-1]+=o.shift(),h.push.apply(h,o)),t.push.apply(t,h),t}function ei(n,t={}){if(!n)return[];let{max:e=it.EXPANSION_MAX}=t;return n.slice(0,2)==="{}"&&(n="\\{\\}"+n.slice(2)),ht(Qs(n),e,!0).map(ti)}function si(n){return"{"+n+"}"}function ii(n){return/^-?0\d/.test(n)}function ri(n,t){return n<=t}function ni(n,t){return n>=t}function ht(n,t,e){let s=[],i=(0,ze.balanced)("{","}",n);if(!i)return[n];let r=i.pre,h=i.post.length?ht(i.post,t,!1):[""];if(/\$$/.test(i.pre))for(let o=0;o=0;if(!l&&!f)return i.post.match(/,(?!,).*\}/)?(n=i.pre+"{"+i.body+ue+i.post,ht(n,t,!0)):[n];let c;if(l)c=i.body.split(/\.\./);else if(c=Ve(i.body),c.length===1&&c[0]!==void 0&&(c=ht(c[0],t,!1).map(si),c.length===1))return h.map(u=>i.pre+c[0]+u);let d;if(l&&c[0]!==void 0&&c[1]!==void 0){let u=ce(c[0]),m=ce(c[1]),p=Math.max(c[0].length,c[1].length),b=c.length===3&&c[2]!==void 0?Math.abs(ce(c[2])):1,w=ri;m0){let U=new Array(B+1).join("0");y<0?S="-"+U+S.slice(1):S=U+S}}d.push(S)}}else{d=[];for(let u=0;u{"use strict";Object.defineProperty(Ct,"__esModule",{value:!0});Ct.assertValidPattern=void 0;var hi=1024*64,oi=n=>{if(typeof n!="string")throw new TypeError("invalid pattern");if(n.length>hi)throw new TypeError("pattern is too long")};Ct.assertValidPattern=oi});var Je=R(Rt=>{"use strict";Object.defineProperty(Rt,"__esModule",{value:!0});Rt.parseClass=void 0;var ai={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},ot=n=>n.replace(/[[\]\\-]/g,"\\$&"),li=n=>n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Ye=n=>n.join(""),ci=(n,t)=>{let e=t;if(n.charAt(e)!=="[")throw new Error("not in a brace expression");let s=[],i=[],r=e+1,h=!1,o=!1,a=!1,l=!1,f=e,c="";t:for(;rc?s.push(ot(c)+"-"+ot(p)):p===c&&s.push(ot(p)),c="",r++;continue}if(n.startsWith("-]",r+1)){s.push(ot(p+"-")),r+=2;continue}if(n.startsWith("-",r+1)){c=p,r+=2;continue}s.push(ot(p)),r++}if(f{"use strict";Object.defineProperty(At,"__esModule",{value:!0});At.unescape=void 0;var ui=(n,{windowsPathsNoEscape:t=!1,magicalBraces:e=!0}={})=>e?t?n.replace(/\[([^\/\\])\]/g,"$1"):n.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1"):t?n.replace(/\[([^\/\\{}])\]/g,"$1"):n.replace(/((?!\\).|^)\[([^\/\\{}])\]/g,"$1$2").replace(/\\([^\/{}])/g,"$1");At.unescape=ui});var pe=R(Dt=>{"use strict";Object.defineProperty(Dt,"__esModule",{value:!0});Dt.AST=void 0;var fi=Je(),Mt=kt(),di=new Set(["!","?","+","*","@"]),Ze=n=>di.has(n),pi="(?!(?:^|/)\\.\\.?(?:$|/))",Pt="(?!\\.)",mi=new Set(["[","."]),gi=new Set(["..","."]),wi=new Set("().*{}+?[]^$\\!"),bi=n=>n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),de="[^/]",Qe=de+"*?",ts=de+"+?",fe=class n{type;#t;#s;#n=!1;#r=[];#h;#S;#w;#c=!1;#o;#f;#u=!1;constructor(t,e,s={}){this.type=t,t&&(this.#s=!0),this.#h=e,this.#t=this.#h?this.#h.#t:this,this.#o=this.#t===this?s:this.#t.#o,this.#w=this.#t===this?[]:this.#t.#w,t==="!"&&!this.#t.#c&&this.#w.push(this),this.#S=this.#h?this.#h.#r.length:0}get hasMagic(){if(this.#s!==void 0)return this.#s;for(let t of this.#r)if(typeof t!="string"&&(t.type||t.hasMagic))return this.#s=!0;return this.#s}toString(){return this.#f!==void 0?this.#f:this.type?this.#f=this.type+"("+this.#r.map(t=>String(t)).join("|")+")":this.#f=this.#r.map(t=>String(t)).join("")}#a(){if(this!==this.#t)throw new Error("should only call on root");if(this.#c)return this;this.toString(),this.#c=!0;let t;for(;t=this.#w.pop();){if(t.type!=="!")continue;let e=t,s=e.#h;for(;s;){for(let i=e.#S+1;!s.type&&itypeof e=="string"?e:e.toJSON()):[this.type,...this.#r.map(e=>e.toJSON())];return this.isStart()&&!this.type&&t.unshift([]),this.isEnd()&&(this===this.#t||this.#t.#c&&this.#h?.type==="!")&&t.push({}),t}isStart(){if(this.#t===this)return!0;if(!this.#h?.isStart())return!1;if(this.#S===0)return!0;let t=this.#h;for(let e=0;etypeof u!="string"),l=this.#r.map(u=>{let[m,p,b,w]=typeof u=="string"?n.#v(u,this.#s,a):u.toRegExpSource(t);return this.#s=this.#s||b,this.#n=this.#n||w,m}).join(""),f="";if(this.isStart()&&typeof this.#r[0]=="string"&&!(this.#r.length===1&&gi.has(this.#r[0]))){let m=mi,p=e&&m.has(l.charAt(0))||l.startsWith("\\.")&&m.has(l.charAt(2))||l.startsWith("\\.\\.")&&m.has(l.charAt(4)),b=!e&&!t&&m.has(l.charAt(0));f=p?pi:b?Pt:""}let c="";return this.isEnd()&&this.#t.#c&&this.#h?.type==="!"&&(c="(?:$|\\/)"),[f+l+c,(0,Mt.unescape)(l),this.#s=!!this.#s,this.#n]}let s=this.type==="*"||this.type==="+",i=this.type==="!"?"(?:(?!(?:":"(?:",r=this.#d(e);if(this.isStart()&&this.isEnd()&&!r&&this.type!=="!"){let a=this.toString();return this.#r=[a],this.type=null,this.#s=void 0,[a,(0,Mt.unescape)(this.toString()),!1,!1]}let h=!s||t||e||!Pt?"":this.#d(!0);h===r&&(h=""),h&&(r=`(?:${r})(?:${h})*?`);let o="";if(this.type==="!"&&this.#u)o=(this.isStart()&&!e?Pt:"")+ts;else{let a=this.type==="!"?"))"+(this.isStart()&&!e&&!t?Pt:"")+Qe+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&h?")":this.type==="*"&&h?")?":`)${this.type}`;o=i+r+a}return[o,(0,Mt.unescape)(r),this.#s=!!this.#s,this.#n]}#d(t){return this.#r.map(e=>{if(typeof e=="string")throw new Error("string type in extglob ast??");let[s,i,r,h]=e.toRegExpSource(t);return this.#n=this.#n||h,s}).filter(e=>!(this.isStart()&&this.isEnd())||!!e).join("|")}static#v(t,e,s=!1){let i=!1,r="",h=!1,o=!1;for(let a=0;a{"use strict";Object.defineProperty(Ft,"__esModule",{value:!0});Ft.escape=void 0;var yi=(n,{windowsPathsNoEscape:t=!1,magicalBraces:e=!1}={})=>e?t?n.replace(/[?*()[\]{}]/g,"[$&]"):n.replace(/[?*()[\]\\{}]/g,"\\$&"):t?n.replace(/[?*()[\]]/g,"[$&]"):n.replace(/[?*()[\]\\]/g,"\\$&");Ft.escape=yi});var H=R(g=>{"use strict";Object.defineProperty(g,"__esModule",{value:!0});g.unescape=g.escape=g.AST=g.Minimatch=g.match=g.makeRe=g.braceExpand=g.defaults=g.filter=g.GLOBSTAR=g.sep=g.minimatch=void 0;var Si=Ke(),jt=Xe(),is=pe(),vi=me(),Ei=kt(),_i=(n,t,e={})=>((0,jt.assertValidPattern)(t),!e.nocomment&&t.charAt(0)==="#"?!1:new J(t,e).match(n));g.minimatch=_i;var Oi=/^\*+([^+@!?\*\[\(]*)$/,xi=n=>t=>!t.startsWith(".")&&t.endsWith(n),Ti=n=>t=>t.endsWith(n),Ci=n=>(n=n.toLowerCase(),t=>!t.startsWith(".")&&t.toLowerCase().endsWith(n)),Ri=n=>(n=n.toLowerCase(),t=>t.toLowerCase().endsWith(n)),Ai=/^\*+\.\*+$/,ki=n=>!n.startsWith(".")&&n.includes("."),Mi=n=>n!=="."&&n!==".."&&n.includes("."),Pi=/^\.\*+$/,Di=n=>n!=="."&&n!==".."&&n.startsWith("."),Fi=/^\*+$/,ji=n=>n.length!==0&&!n.startsWith("."),Ni=n=>n.length!==0&&n!=="."&&n!=="..",Li=/^\?+([^+@!?\*\[\(]*)?$/,Wi=([n,t=""])=>{let e=rs([n]);return t?(t=t.toLowerCase(),s=>e(s)&&s.toLowerCase().endsWith(t)):e},Bi=([n,t=""])=>{let e=ns([n]);return t?(t=t.toLowerCase(),s=>e(s)&&s.toLowerCase().endsWith(t)):e},Ii=([n,t=""])=>{let e=ns([n]);return t?s=>e(s)&&s.endsWith(t):e},Gi=([n,t=""])=>{let e=rs([n]);return t?s=>e(s)&&s.endsWith(t):e},rs=([n])=>{let t=n.length;return e=>e.length===t&&!e.startsWith(".")},ns=([n])=>{let t=n.length;return e=>e.length===t&&e!=="."&&e!==".."},hs=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",es={win32:{sep:"\\"},posix:{sep:"/"}};g.sep=hs==="win32"?es.win32.sep:es.posix.sep;g.minimatch.sep=g.sep;g.GLOBSTAR=Symbol("globstar **");g.minimatch.GLOBSTAR=g.GLOBSTAR;var zi="[^/]",Ui=zi+"*?",$i="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",qi="(?:(?!(?:\\/|^)\\.).)*?",Hi=(n,t={})=>e=>(0,g.minimatch)(e,n,t);g.filter=Hi;g.minimatch.filter=g.filter;var F=(n,t={})=>Object.assign({},n,t),Vi=n=>{if(!n||typeof n!="object"||!Object.keys(n).length)return g.minimatch;let t=g.minimatch;return Object.assign((s,i,r={})=>t(s,i,F(n,r)),{Minimatch:class extends t.Minimatch{constructor(i,r={}){super(i,F(n,r))}static defaults(i){return t.defaults(F(n,i)).Minimatch}},AST:class extends t.AST{constructor(i,r,h={}){super(i,r,F(n,h))}static fromGlob(i,r={}){return t.AST.fromGlob(i,F(n,r))}},unescape:(s,i={})=>t.unescape(s,F(n,i)),escape:(s,i={})=>t.escape(s,F(n,i)),filter:(s,i={})=>t.filter(s,F(n,i)),defaults:s=>t.defaults(F(n,s)),makeRe:(s,i={})=>t.makeRe(s,F(n,i)),braceExpand:(s,i={})=>t.braceExpand(s,F(n,i)),match:(s,i,r={})=>t.match(s,i,F(n,r)),sep:t.sep,GLOBSTAR:g.GLOBSTAR})};g.defaults=Vi;g.minimatch.defaults=g.defaults;var Ki=(n,t={})=>((0,jt.assertValidPattern)(n),t.nobrace||!/\{(?:(?!\{).)*\}/.test(n)?[n]:(0,Si.expand)(n,{max:t.braceExpandMax}));g.braceExpand=Ki;g.minimatch.braceExpand=g.braceExpand;var Xi=(n,t={})=>new J(n,t).makeRe();g.makeRe=Xi;g.minimatch.makeRe=g.makeRe;var Yi=(n,t,e={})=>{let s=new J(t,e);return n=n.filter(i=>s.match(i)),s.options.nonull&&!n.length&&n.push(t),n};g.match=Yi;g.minimatch.match=g.match;var ss=/[?*]|[+@!]\(.*?\)|\[|\]/,Ji=n=>n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),J=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(t,e={}){(0,jt.assertValidPattern)(t),e=e||{},this.options=e,this.pattern=t,this.platform=e.platform||hs,this.isWindows=this.platform==="win32";let s="allowWindowsEscape";this.windowsPathsNoEscape=!!e.windowsPathsNoEscape||e[s]===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!e.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!e.nonegate,this.comment=!1,this.empty=!1,this.partial=!!e.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=e.windowsNoMagicRoot!==void 0?e.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let t of this.set)for(let e of t)if(typeof e!="string")return!0;return!1}debug(...t){}make(){let t=this.pattern,e=this.options;if(!e.nocomment&&t.charAt(0)==="#"){this.comment=!0;return}if(!t){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],e.debug&&(this.debug=(...r)=>console.error(...r)),this.debug(this.pattern,this.globSet);let s=this.globSet.map(r=>this.slashSplit(r));this.globParts=this.preprocess(s),this.debug(this.pattern,this.globParts);let i=this.globParts.map((r,h,o)=>{if(this.isWindows&&this.windowsNoMagicRoot){let a=r[0]===""&&r[1]===""&&(r[2]==="?"||!ss.test(r[2]))&&!ss.test(r[3]),l=/^[a-z]:/i.test(r[0]);if(a)return[...r.slice(0,4),...r.slice(4).map(f=>this.parse(f))];if(l)return[r[0],...r.slice(1).map(f=>this.parse(f))]}return r.map(a=>this.parse(a))});if(this.debug(this.pattern,i),this.set=i.filter(r=>r.indexOf(!1)===-1),this.isWindows)for(let r=0;r=2?(t=this.firstPhasePreProcess(t),t=this.secondPhasePreProcess(t)):e>=1?t=this.levelOneOptimize(t):t=this.adjascentGlobstarOptimize(t),t}adjascentGlobstarOptimize(t){return t.map(e=>{let s=-1;for(;(s=e.indexOf("**",s+1))!==-1;){let i=s;for(;e[i+1]==="**";)i++;i!==s&&e.splice(s,i-s)}return e})}levelOneOptimize(t){return t.map(e=>(e=e.reduce((s,i)=>{let r=s[s.length-1];return i==="**"&&r==="**"?s:i===".."&&r&&r!==".."&&r!=="."&&r!=="**"?(s.pop(),s):(s.push(i),s)},[]),e.length===0?[""]:e))}levelTwoFileOptimize(t){Array.isArray(t)||(t=this.slashSplit(t));let e=!1;do{if(e=!1,!this.preserveMultipleSlashes){for(let i=1;ii&&s.splice(i+1,h-i);let o=s[i+1],a=s[i+2],l=s[i+3];if(o!==".."||!a||a==="."||a===".."||!l||l==="."||l==="..")continue;e=!0,s.splice(i,1);let f=s.slice(0);f[i]="**",t.push(f),i--}if(!this.preserveMultipleSlashes){for(let h=1;he.length)}partsMatch(t,e,s=!1){let i=0,r=0,h=[],o="";for(;iE?e=e.slice(y):E>y&&(t=t.slice(E)))}}let{optimizationLevel:r=1}=this.options;r>=2&&(t=this.levelTwoFileOptimize(t)),this.debug("matchOne",this,{file:t,pattern:e}),this.debug("matchOne",t.length,e.length);for(var h=0,o=0,a=t.length,l=e.length;h { /*! Axios v1.15.0 Copyright (c) 2026 Matt Zabriskie and contributors */ -var FormData$1 = __nccwpck_require__(2226); +var FormData$1 = __nccwpck_require__(1515); var crypto = __nccwpck_require__(6982); var url = __nccwpck_require__(7016); var http = __nccwpck_require__(8611); var https = __nccwpck_require__(5692); var http2 = __nccwpck_require__(5675); var util = __nccwpck_require__(9023); -var followRedirects = __nccwpck_require__(1209); +var followRedirects = __nccwpck_require__(1584); var zlib = __nccwpck_require__(3106); var stream = __nccwpck_require__(2203); var events = __nccwpck_require__(4434); @@ -73058,7 +73376,7 @@ module.exports = axios; /***/ }), -/***/ 4640: +/***/ 1699: /***/ ((__webpack_module__, __webpack_exports__, __nccwpck_require__) => { __nccwpck_require__.a(__webpack_module__, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try { @@ -73078,12 +73396,12 @@ __nccwpck_require__.a(__webpack_module__, async (__webpack_handle_async_dependen /* harmony import */ var node_path__WEBPACK_IMPORTED_MODULE_0__ = __nccwpck_require__(6760); /* harmony import */ var node_fs_promises__WEBPACK_IMPORTED_MODULE_1__ = __nccwpck_require__(1455); /* harmony import */ var node_os__WEBPACK_IMPORTED_MODULE_2__ = __nccwpck_require__(8161); -/* harmony import */ var glob__WEBPACK_IMPORTED_MODULE_3__ = __nccwpck_require__(576); -/* harmony import */ var _actions_core__WEBPACK_IMPORTED_MODULE_4__ = __nccwpck_require__(5200); -/* harmony import */ var _sap_cloud_sdk_util__WEBPACK_IMPORTED_MODULE_5__ = __nccwpck_require__(1238); -/* harmony import */ var _sap_cloud_sdk_generator_common_dist_compiler_js__WEBPACK_IMPORTED_MODULE_6__ = __nccwpck_require__(2776); -/* harmony import */ var _sap_cloud_sdk_generator_common_dist_file_writer_create_file_js__WEBPACK_IMPORTED_MODULE_7__ = __nccwpck_require__(5741); -/* harmony import */ var _manypkg_get_packages__WEBPACK_IMPORTED_MODULE_8__ = __nccwpck_require__(886); +/* harmony import */ var glob__WEBPACK_IMPORTED_MODULE_3__ = __nccwpck_require__(9337); +/* harmony import */ var _actions_core__WEBPACK_IMPORTED_MODULE_4__ = __nccwpck_require__(2722); +/* harmony import */ var _sap_cloud_sdk_util__WEBPACK_IMPORTED_MODULE_5__ = __nccwpck_require__(2343); +/* harmony import */ var _sap_cloud_sdk_generator_common_dist_compiler_js__WEBPACK_IMPORTED_MODULE_6__ = __nccwpck_require__(6435); +/* harmony import */ var _sap_cloud_sdk_generator_common_dist_file_writer_create_file_js__WEBPACK_IMPORTED_MODULE_7__ = __nccwpck_require__(4400); +/* harmony import */ var _manypkg_get_packages__WEBPACK_IMPORTED_MODULE_8__ = __nccwpck_require__(4344); /* eslint-disable jsdoc/require-jsdoc */ @@ -73373,7 +73691,7 @@ __webpack_async_result__(); /***/ }), -/***/ 5200: +/***/ 2722: /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __nccwpck_require__) => { @@ -73390,7 +73708,7 @@ __nccwpck_require__.d(__webpack_exports__, { // EXTERNAL MODULE: external "os" var external_os_ = __nccwpck_require__(857); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/utils.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/utils.js // We use any as a valid input type /* eslint-disable @typescript-eslint/no-explicit-any */ /** @@ -73426,7 +73744,7 @@ function utils_toCommandProperties(annotationProperties) { }; } //# sourceMappingURL=utils.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/command.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/command.js /** @@ -73522,7 +73840,7 @@ function escapeProperty(s) { var external_crypto_ = __nccwpck_require__(6982); // EXTERNAL MODULE: external "fs" var external_fs_ = __nccwpck_require__(9896); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/file-command.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/file-command.js // For internal use, subject to change. // We use any as a valid input type /* eslint-disable @typescript-eslint/no-explicit-any */ @@ -73563,7 +73881,7 @@ var external_path_ = __nccwpck_require__(6928); var external_http_ = __nccwpck_require__(8611); // EXTERNAL MODULE: external "https" var external_https_ = __nccwpck_require__(5692); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/node_modules/@actions/http-client/lib/proxy.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+http-client@4.0.0/node_modules/@actions/http-client/lib/proxy.js function getProxyUrl(reqUrl) { const usingSsl = reqUrl.protocol === 'https:'; if (checkBypass(reqUrl)) { @@ -73654,11 +73972,11 @@ class DecodedURL extends URL { } } //# sourceMappingURL=proxy.js.map -// EXTERNAL MODULE: ../../node_modules/tunnel/index.js -var node_modules_tunnel = __nccwpck_require__(5070); -// EXTERNAL MODULE: ../../node_modules/undici/index.js -var undici = __nccwpck_require__(1684); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/node_modules/@actions/http-client/lib/index.js +// EXTERNAL MODULE: ../../node_modules/.pnpm/tunnel@0.0.6/node_modules/tunnel/index.js +var node_modules_tunnel = __nccwpck_require__(7285); +// EXTERNAL MODULE: ../../node_modules/.pnpm/undici@6.24.1/node_modules/undici/index.js +var undici = __nccwpck_require__(4906); +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+http-client@4.0.0/node_modules/@actions/http-client/lib/index.js /* eslint-disable @typescript-eslint/no-explicit-any */ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } @@ -74355,7 +74673,7 @@ class lib_HttpClient { } const lowercaseKeys = (obj) => Object.keys(obj).reduce((c, k) => ((c[k.toLowerCase()] = obj[k]), c), {}); //# sourceMappingURL=index.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/node_modules/@actions/http-client/lib/auth.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+http-client@4.0.0/node_modules/@actions/http-client/lib/auth.js var auth_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -74431,7 +74749,7 @@ class PersonalAccessTokenCredentialHandler { } } //# sourceMappingURL=auth.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/oidc-utils.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/oidc-utils.js var oidc_utils_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -74505,7 +74823,7 @@ class oidc_utils_OidcClient { } } //# sourceMappingURL=oidc-utils.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/summary.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/summary.js var summary_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -74786,7 +75104,7 @@ const _summary = new Summary(); const markdownSummary = (/* unused pure expression or super */ null && (_summary)); const summary = (/* unused pure expression or super */ null && (_summary)); //# sourceMappingURL=summary.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/path-utils.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/path-utils.js /** * toPosixPath converts the given path to the posix form. On Windows, \\ will be @@ -74821,14 +75139,14 @@ function toPlatformPath(pth) { } //# sourceMappingURL=path-utils.js.map // EXTERNAL MODULE: external "string_decoder" -var external_string_decoder_ = __nccwpck_require__(5574); +var external_string_decoder_ = __nccwpck_require__(3193); // EXTERNAL MODULE: external "events" var external_events_ = __nccwpck_require__(4434); ;// CONCATENATED MODULE: external "child_process" const external_child_process_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("child_process"); // EXTERNAL MODULE: external "assert" var external_assert_ = __nccwpck_require__(2613); -;// CONCATENATED MODULE: ../../node_modules/@actions/io/lib/io-util.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+io@3.0.2/node_modules/@actions/io/lib/io-util.js var io_util_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -75008,7 +75326,7 @@ function getCmdPath() { return (_a = process.env['COMSPEC']) !== null && _a !== void 0 ? _a : `cmd.exe`; } //# sourceMappingURL=io-util.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/io/lib/io.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+io@3.0.2/node_modules/@actions/io/lib/io.js var io_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -75282,7 +75600,7 @@ function io_copyFile(srcFile, destFile, force) { //# sourceMappingURL=io.js.map ;// CONCATENATED MODULE: external "timers" const external_timers_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("timers"); -;// CONCATENATED MODULE: ../../node_modules/@actions/exec/lib/toolrunner.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+exec@3.0.0/node_modules/@actions/exec/lib/toolrunner.js var toolrunner_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -75870,7 +76188,7 @@ class ExecState extends external_events_.EventEmitter { } } //# sourceMappingURL=toolrunner.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/exec/lib/exec.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+exec@3.0.0/node_modules/@actions/exec/lib/exec.js var exec_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -75950,7 +76268,7 @@ function getExecOutput(commandLine, args, options) { }); } //# sourceMappingURL=exec.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/platform.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/platform.js var platform_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -76015,7 +76333,7 @@ function getDetails() { }); } //# sourceMappingURL=platform.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/core.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/core.js var core_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -76336,7 +76654,7 @@ function getIDToken(aud) { /***/ }), -/***/ 576: +/***/ 9337: /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __nccwpck_require__) => { var node_fs__WEBPACK_IMPORTED_MODULE_3___namespace_cache; @@ -76360,14 +76678,14 @@ globstar while`,t,d,e,f,m),this.matchOne(t.slice(d),e.slice(f),s))return this.de /***/ }), -/***/ 9139: +/***/ 2087: /***/ ((module) => { module.exports = /*#__PURE__*/JSON.parse('{"application/1d-interleaved-parityfec":{"source":"iana"},"application/3gpdash-qoe-report+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/3gpp-ims+xml":{"source":"iana","compressible":true},"application/3gpphal+json":{"source":"iana","compressible":true},"application/3gpphalforms+json":{"source":"iana","compressible":true},"application/a2l":{"source":"iana"},"application/ace+cbor":{"source":"iana"},"application/activemessage":{"source":"iana"},"application/activity+json":{"source":"iana","compressible":true},"application/alto-costmap+json":{"source":"iana","compressible":true},"application/alto-costmapfilter+json":{"source":"iana","compressible":true},"application/alto-directory+json":{"source":"iana","compressible":true},"application/alto-endpointcost+json":{"source":"iana","compressible":true},"application/alto-endpointcostparams+json":{"source":"iana","compressible":true},"application/alto-endpointprop+json":{"source":"iana","compressible":true},"application/alto-endpointpropparams+json":{"source":"iana","compressible":true},"application/alto-error+json":{"source":"iana","compressible":true},"application/alto-networkmap+json":{"source":"iana","compressible":true},"application/alto-networkmapfilter+json":{"source":"iana","compressible":true},"application/alto-updatestreamcontrol+json":{"source":"iana","compressible":true},"application/alto-updatestreamparams+json":{"source":"iana","compressible":true},"application/aml":{"source":"iana"},"application/andrew-inset":{"source":"iana","extensions":["ez"]},"application/applefile":{"source":"iana"},"application/applixware":{"source":"apache","extensions":["aw"]},"application/at+jwt":{"source":"iana"},"application/atf":{"source":"iana"},"application/atfx":{"source":"iana"},"application/atom+xml":{"source":"iana","compressible":true,"extensions":["atom"]},"application/atomcat+xml":{"source":"iana","compressible":true,"extensions":["atomcat"]},"application/atomdeleted+xml":{"source":"iana","compressible":true,"extensions":["atomdeleted"]},"application/atomicmail":{"source":"iana"},"application/atomsvc+xml":{"source":"iana","compressible":true,"extensions":["atomsvc"]},"application/atsc-dwd+xml":{"source":"iana","compressible":true,"extensions":["dwd"]},"application/atsc-dynamic-event-message":{"source":"iana"},"application/atsc-held+xml":{"source":"iana","compressible":true,"extensions":["held"]},"application/atsc-rdt+json":{"source":"iana","compressible":true},"application/atsc-rsat+xml":{"source":"iana","compressible":true,"extensions":["rsat"]},"application/atxml":{"source":"iana"},"application/auth-policy+xml":{"source":"iana","compressible":true},"application/bacnet-xdd+zip":{"source":"iana","compressible":false},"application/batch-smtp":{"source":"iana"},"application/bdoc":{"compressible":false,"extensions":["bdoc"]},"application/beep+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/calendar+json":{"source":"iana","compressible":true},"application/calendar+xml":{"source":"iana","compressible":true,"extensions":["xcs"]},"application/call-completion":{"source":"iana"},"application/cals-1840":{"source":"iana"},"application/captive+json":{"source":"iana","compressible":true},"application/cbor":{"source":"iana"},"application/cbor-seq":{"source":"iana"},"application/cccex":{"source":"iana"},"application/ccmp+xml":{"source":"iana","compressible":true},"application/ccxml+xml":{"source":"iana","compressible":true,"extensions":["ccxml"]},"application/cdfx+xml":{"source":"iana","compressible":true,"extensions":["cdfx"]},"application/cdmi-capability":{"source":"iana","extensions":["cdmia"]},"application/cdmi-container":{"source":"iana","extensions":["cdmic"]},"application/cdmi-domain":{"source":"iana","extensions":["cdmid"]},"application/cdmi-object":{"source":"iana","extensions":["cdmio"]},"application/cdmi-queue":{"source":"iana","extensions":["cdmiq"]},"application/cdni":{"source":"iana"},"application/cea":{"source":"iana"},"application/cea-2018+xml":{"source":"iana","compressible":true},"application/cellml+xml":{"source":"iana","compressible":true},"application/cfw":{"source":"iana"},"application/city+json":{"source":"iana","compressible":true},"application/clr":{"source":"iana"},"application/clue+xml":{"source":"iana","compressible":true},"application/clue_info+xml":{"source":"iana","compressible":true},"application/cms":{"source":"iana"},"application/cnrp+xml":{"source":"iana","compressible":true},"application/coap-group+json":{"source":"iana","compressible":true},"application/coap-payload":{"source":"iana"},"application/commonground":{"source":"iana"},"application/conference-info+xml":{"source":"iana","compressible":true},"application/cose":{"source":"iana"},"application/cose-key":{"source":"iana"},"application/cose-key-set":{"source":"iana"},"application/cpl+xml":{"source":"iana","compressible":true,"extensions":["cpl"]},"application/csrattrs":{"source":"iana"},"application/csta+xml":{"source":"iana","compressible":true},"application/cstadata+xml":{"source":"iana","compressible":true},"application/csvm+json":{"source":"iana","compressible":true},"application/cu-seeme":{"source":"apache","extensions":["cu"]},"application/cwt":{"source":"iana"},"application/cybercash":{"source":"iana"},"application/dart":{"compressible":true},"application/dash+xml":{"source":"iana","compressible":true,"extensions":["mpd"]},"application/dash-patch+xml":{"source":"iana","compressible":true,"extensions":["mpp"]},"application/dashdelta":{"source":"iana"},"application/davmount+xml":{"source":"iana","compressible":true,"extensions":["davmount"]},"application/dca-rft":{"source":"iana"},"application/dcd":{"source":"iana"},"application/dec-dx":{"source":"iana"},"application/dialog-info+xml":{"source":"iana","compressible":true},"application/dicom":{"source":"iana"},"application/dicom+json":{"source":"iana","compressible":true},"application/dicom+xml":{"source":"iana","compressible":true},"application/dii":{"source":"iana"},"application/dit":{"source":"iana"},"application/dns":{"source":"iana"},"application/dns+json":{"source":"iana","compressible":true},"application/dns-message":{"source":"iana"},"application/docbook+xml":{"source":"apache","compressible":true,"extensions":["dbk"]},"application/dots+cbor":{"source":"iana"},"application/dskpp+xml":{"source":"iana","compressible":true},"application/dssc+der":{"source":"iana","extensions":["dssc"]},"application/dssc+xml":{"source":"iana","compressible":true,"extensions":["xdssc"]},"application/dvcs":{"source":"iana"},"application/ecmascript":{"source":"iana","compressible":true,"extensions":["es","ecma"]},"application/edi-consent":{"source":"iana"},"application/edi-x12":{"source":"iana","compressible":false},"application/edifact":{"source":"iana","compressible":false},"application/efi":{"source":"iana"},"application/elm+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/elm+xml":{"source":"iana","compressible":true},"application/emergencycalldata.cap+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/emergencycalldata.comment+xml":{"source":"iana","compressible":true},"application/emergencycalldata.control+xml":{"source":"iana","compressible":true},"application/emergencycalldata.deviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.ecall.msd":{"source":"iana"},"application/emergencycalldata.providerinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.serviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.subscriberinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.veds+xml":{"source":"iana","compressible":true},"application/emma+xml":{"source":"iana","compressible":true,"extensions":["emma"]},"application/emotionml+xml":{"source":"iana","compressible":true,"extensions":["emotionml"]},"application/encaprtp":{"source":"iana"},"application/epp+xml":{"source":"iana","compressible":true},"application/epub+zip":{"source":"iana","compressible":false,"extensions":["epub"]},"application/eshop":{"source":"iana"},"application/exi":{"source":"iana","extensions":["exi"]},"application/expect-ct-report+json":{"source":"iana","compressible":true},"application/express":{"source":"iana","extensions":["exp"]},"application/fastinfoset":{"source":"iana"},"application/fastsoap":{"source":"iana"},"application/fdt+xml":{"source":"iana","compressible":true,"extensions":["fdt"]},"application/fhir+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/fhir+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/fido.trusted-apps+json":{"compressible":true},"application/fits":{"source":"iana"},"application/flexfec":{"source":"iana"},"application/font-sfnt":{"source":"iana"},"application/font-tdpfr":{"source":"iana","extensions":["pfr"]},"application/font-woff":{"source":"iana","compressible":false},"application/framework-attributes+xml":{"source":"iana","compressible":true},"application/geo+json":{"source":"iana","compressible":true,"extensions":["geojson"]},"application/geo+json-seq":{"source":"iana"},"application/geopackage+sqlite3":{"source":"iana"},"application/geoxacml+xml":{"source":"iana","compressible":true},"application/gltf-buffer":{"source":"iana"},"application/gml+xml":{"source":"iana","compressible":true,"extensions":["gml"]},"application/gpx+xml":{"source":"apache","compressible":true,"extensions":["gpx"]},"application/gxf":{"source":"apache","extensions":["gxf"]},"application/gzip":{"source":"iana","compressible":false,"extensions":["gz"]},"application/h224":{"source":"iana"},"application/held+xml":{"source":"iana","compressible":true},"application/hjson":{"extensions":["hjson"]},"application/http":{"source":"iana"},"application/hyperstudio":{"source":"iana","extensions":["stk"]},"application/ibe-key-request+xml":{"source":"iana","compressible":true},"application/ibe-pkg-reply+xml":{"source":"iana","compressible":true},"application/ibe-pp-data":{"source":"iana"},"application/iges":{"source":"iana"},"application/im-iscomposing+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/index":{"source":"iana"},"application/index.cmd":{"source":"iana"},"application/index.obj":{"source":"iana"},"application/index.response":{"source":"iana"},"application/index.vnd":{"source":"iana"},"application/inkml+xml":{"source":"iana","compressible":true,"extensions":["ink","inkml"]},"application/iotp":{"source":"iana"},"application/ipfix":{"source":"iana","extensions":["ipfix"]},"application/ipp":{"source":"iana"},"application/isup":{"source":"iana"},"application/its+xml":{"source":"iana","compressible":true,"extensions":["its"]},"application/java-archive":{"source":"apache","compressible":false,"extensions":["jar","war","ear"]},"application/java-serialized-object":{"source":"apache","compressible":false,"extensions":["ser"]},"application/java-vm":{"source":"apache","compressible":false,"extensions":["class"]},"application/javascript":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["js","mjs"]},"application/jf2feed+json":{"source":"iana","compressible":true},"application/jose":{"source":"iana"},"application/jose+json":{"source":"iana","compressible":true},"application/jrd+json":{"source":"iana","compressible":true},"application/jscalendar+json":{"source":"iana","compressible":true},"application/json":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["json","map"]},"application/json-patch+json":{"source":"iana","compressible":true},"application/json-seq":{"source":"iana"},"application/json5":{"extensions":["json5"]},"application/jsonml+json":{"source":"apache","compressible":true,"extensions":["jsonml"]},"application/jwk+json":{"source":"iana","compressible":true},"application/jwk-set+json":{"source":"iana","compressible":true},"application/jwt":{"source":"iana"},"application/kpml-request+xml":{"source":"iana","compressible":true},"application/kpml-response+xml":{"source":"iana","compressible":true},"application/ld+json":{"source":"iana","compressible":true,"extensions":["jsonld"]},"application/lgr+xml":{"source":"iana","compressible":true,"extensions":["lgr"]},"application/link-format":{"source":"iana"},"application/load-control+xml":{"source":"iana","compressible":true},"application/lost+xml":{"source":"iana","compressible":true,"extensions":["lostxml"]},"application/lostsync+xml":{"source":"iana","compressible":true},"application/lpf+zip":{"source":"iana","compressible":false},"application/lxf":{"source":"iana"},"application/mac-binhex40":{"source":"iana","extensions":["hqx"]},"application/mac-compactpro":{"source":"apache","extensions":["cpt"]},"application/macwriteii":{"source":"iana"},"application/mads+xml":{"source":"iana","compressible":true,"extensions":["mads"]},"application/manifest+json":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["webmanifest"]},"application/marc":{"source":"iana","extensions":["mrc"]},"application/marcxml+xml":{"source":"iana","compressible":true,"extensions":["mrcx"]},"application/mathematica":{"source":"iana","extensions":["ma","nb","mb"]},"application/mathml+xml":{"source":"iana","compressible":true,"extensions":["mathml"]},"application/mathml-content+xml":{"source":"iana","compressible":true},"application/mathml-presentation+xml":{"source":"iana","compressible":true},"application/mbms-associated-procedure-description+xml":{"source":"iana","compressible":true},"application/mbms-deregister+xml":{"source":"iana","compressible":true},"application/mbms-envelope+xml":{"source":"iana","compressible":true},"application/mbms-msk+xml":{"source":"iana","compressible":true},"application/mbms-msk-response+xml":{"source":"iana","compressible":true},"application/mbms-protection-description+xml":{"source":"iana","compressible":true},"application/mbms-reception-report+xml":{"source":"iana","compressible":true},"application/mbms-register+xml":{"source":"iana","compressible":true},"application/mbms-register-response+xml":{"source":"iana","compressible":true},"application/mbms-schedule+xml":{"source":"iana","compressible":true},"application/mbms-user-service-description+xml":{"source":"iana","compressible":true},"application/mbox":{"source":"iana","extensions":["mbox"]},"application/media-policy-dataset+xml":{"source":"iana","compressible":true,"extensions":["mpf"]},"application/media_control+xml":{"source":"iana","compressible":true},"application/mediaservercontrol+xml":{"source":"iana","compressible":true,"extensions":["mscml"]},"application/merge-patch+json":{"source":"iana","compressible":true},"application/metalink+xml":{"source":"apache","compressible":true,"extensions":["metalink"]},"application/metalink4+xml":{"source":"iana","compressible":true,"extensions":["meta4"]},"application/mets+xml":{"source":"iana","compressible":true,"extensions":["mets"]},"application/mf4":{"source":"iana"},"application/mikey":{"source":"iana"},"application/mipc":{"source":"iana"},"application/missing-blocks+cbor-seq":{"source":"iana"},"application/mmt-aei+xml":{"source":"iana","compressible":true,"extensions":["maei"]},"application/mmt-usd+xml":{"source":"iana","compressible":true,"extensions":["musd"]},"application/mods+xml":{"source":"iana","compressible":true,"extensions":["mods"]},"application/moss-keys":{"source":"iana"},"application/moss-signature":{"source":"iana"},"application/mosskey-data":{"source":"iana"},"application/mosskey-request":{"source":"iana"},"application/mp21":{"source":"iana","extensions":["m21","mp21"]},"application/mp4":{"source":"iana","extensions":["mp4s","m4p"]},"application/mpeg4-generic":{"source":"iana"},"application/mpeg4-iod":{"source":"iana"},"application/mpeg4-iod-xmt":{"source":"iana"},"application/mrb-consumer+xml":{"source":"iana","compressible":true},"application/mrb-publish+xml":{"source":"iana","compressible":true},"application/msc-ivr+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msc-mixer+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msword":{"source":"iana","compressible":false,"extensions":["doc","dot"]},"application/mud+json":{"source":"iana","compressible":true},"application/multipart-core":{"source":"iana"},"application/mxf":{"source":"iana","extensions":["mxf"]},"application/n-quads":{"source":"iana","extensions":["nq"]},"application/n-triples":{"source":"iana","extensions":["nt"]},"application/nasdata":{"source":"iana"},"application/news-checkgroups":{"source":"iana","charset":"US-ASCII"},"application/news-groupinfo":{"source":"iana","charset":"US-ASCII"},"application/news-transmission":{"source":"iana"},"application/nlsml+xml":{"source":"iana","compressible":true},"application/node":{"source":"iana","extensions":["cjs"]},"application/nss":{"source":"iana"},"application/oauth-authz-req+jwt":{"source":"iana"},"application/oblivious-dns-message":{"source":"iana"},"application/ocsp-request":{"source":"iana"},"application/ocsp-response":{"source":"iana"},"application/octet-stream":{"source":"iana","compressible":false,"extensions":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{"source":"iana","extensions":["oda"]},"application/odm+xml":{"source":"iana","compressible":true},"application/odx":{"source":"iana"},"application/oebps-package+xml":{"source":"iana","compressible":true,"extensions":["opf"]},"application/ogg":{"source":"iana","compressible":false,"extensions":["ogx"]},"application/omdoc+xml":{"source":"apache","compressible":true,"extensions":["omdoc"]},"application/onenote":{"source":"apache","extensions":["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{"source":"iana","compressible":true},"application/oscore":{"source":"iana"},"application/oxps":{"source":"iana","extensions":["oxps"]},"application/p21":{"source":"iana"},"application/p21+zip":{"source":"iana","compressible":false},"application/p2p-overlay+xml":{"source":"iana","compressible":true,"extensions":["relo"]},"application/parityfec":{"source":"iana"},"application/passport":{"source":"iana"},"application/patch-ops-error+xml":{"source":"iana","compressible":true,"extensions":["xer"]},"application/pdf":{"source":"iana","compressible":false,"extensions":["pdf"]},"application/pdx":{"source":"iana"},"application/pem-certificate-chain":{"source":"iana"},"application/pgp-encrypted":{"source":"iana","compressible":false,"extensions":["pgp"]},"application/pgp-keys":{"source":"iana","extensions":["asc"]},"application/pgp-signature":{"source":"iana","extensions":["asc","sig"]},"application/pics-rules":{"source":"apache","extensions":["prf"]},"application/pidf+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pidf-diff+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pkcs10":{"source":"iana","extensions":["p10"]},"application/pkcs12":{"source":"iana"},"application/pkcs7-mime":{"source":"iana","extensions":["p7m","p7c"]},"application/pkcs7-signature":{"source":"iana","extensions":["p7s"]},"application/pkcs8":{"source":"iana","extensions":["p8"]},"application/pkcs8-encrypted":{"source":"iana"},"application/pkix-attr-cert":{"source":"iana","extensions":["ac"]},"application/pkix-cert":{"source":"iana","extensions":["cer"]},"application/pkix-crl":{"source":"iana","extensions":["crl"]},"application/pkix-pkipath":{"source":"iana","extensions":["pkipath"]},"application/pkixcmp":{"source":"iana","extensions":["pki"]},"application/pls+xml":{"source":"iana","compressible":true,"extensions":["pls"]},"application/poc-settings+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/postscript":{"source":"iana","compressible":true,"extensions":["ai","eps","ps"]},"application/ppsp-tracker+json":{"source":"iana","compressible":true},"application/problem+json":{"source":"iana","compressible":true},"application/problem+xml":{"source":"iana","compressible":true},"application/provenance+xml":{"source":"iana","compressible":true,"extensions":["provx"]},"application/prs.alvestrand.titrax-sheet":{"source":"iana"},"application/prs.cww":{"source":"iana","extensions":["cww"]},"application/prs.cyn":{"source":"iana","charset":"7-BIT"},"application/prs.hpub+zip":{"source":"iana","compressible":false},"application/prs.nprend":{"source":"iana"},"application/prs.plucker":{"source":"iana"},"application/prs.rdf-xml-crypt":{"source":"iana"},"application/prs.xsf+xml":{"source":"iana","compressible":true},"application/pskc+xml":{"source":"iana","compressible":true,"extensions":["pskcxml"]},"application/pvd+json":{"source":"iana","compressible":true},"application/qsig":{"source":"iana"},"application/raml+yaml":{"compressible":true,"extensions":["raml"]},"application/raptorfec":{"source":"iana"},"application/rdap+json":{"source":"iana","compressible":true},"application/rdf+xml":{"source":"iana","compressible":true,"extensions":["rdf","owl"]},"application/reginfo+xml":{"source":"iana","compressible":true,"extensions":["rif"]},"application/relax-ng-compact-syntax":{"source":"iana","extensions":["rnc"]},"application/remote-printing":{"source":"iana"},"application/reputon+json":{"source":"iana","compressible":true},"application/resource-lists+xml":{"source":"iana","compressible":true,"extensions":["rl"]},"application/resource-lists-diff+xml":{"source":"iana","compressible":true,"extensions":["rld"]},"application/rfc+xml":{"source":"iana","compressible":true},"application/riscos":{"source":"iana"},"application/rlmi+xml":{"source":"iana","compressible":true},"application/rls-services+xml":{"source":"iana","compressible":true,"extensions":["rs"]},"application/route-apd+xml":{"source":"iana","compressible":true,"extensions":["rapd"]},"application/route-s-tsid+xml":{"source":"iana","compressible":true,"extensions":["sls"]},"application/route-usd+xml":{"source":"iana","compressible":true,"extensions":["rusd"]},"application/rpki-ghostbusters":{"source":"iana","extensions":["gbr"]},"application/rpki-manifest":{"source":"iana","extensions":["mft"]},"application/rpki-publication":{"source":"iana"},"application/rpki-roa":{"source":"iana","extensions":["roa"]},"application/rpki-updown":{"source":"iana"},"application/rsd+xml":{"source":"apache","compressible":true,"extensions":["rsd"]},"application/rss+xml":{"source":"apache","compressible":true,"extensions":["rss"]},"application/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"application/rtploopback":{"source":"iana"},"application/rtx":{"source":"iana"},"application/samlassertion+xml":{"source":"iana","compressible":true},"application/samlmetadata+xml":{"source":"iana","compressible":true},"application/sarif+json":{"source":"iana","compressible":true},"application/sarif-external-properties+json":{"source":"iana","compressible":true},"application/sbe":{"source":"iana"},"application/sbml+xml":{"source":"iana","compressible":true,"extensions":["sbml"]},"application/scaip+xml":{"source":"iana","compressible":true},"application/scim+json":{"source":"iana","compressible":true},"application/scvp-cv-request":{"source":"iana","extensions":["scq"]},"application/scvp-cv-response":{"source":"iana","extensions":["scs"]},"application/scvp-vp-request":{"source":"iana","extensions":["spq"]},"application/scvp-vp-response":{"source":"iana","extensions":["spp"]},"application/sdp":{"source":"iana","extensions":["sdp"]},"application/secevent+jwt":{"source":"iana"},"application/senml+cbor":{"source":"iana"},"application/senml+json":{"source":"iana","compressible":true},"application/senml+xml":{"source":"iana","compressible":true,"extensions":["senmlx"]},"application/senml-etch+cbor":{"source":"iana"},"application/senml-etch+json":{"source":"iana","compressible":true},"application/senml-exi":{"source":"iana"},"application/sensml+cbor":{"source":"iana"},"application/sensml+json":{"source":"iana","compressible":true},"application/sensml+xml":{"source":"iana","compressible":true,"extensions":["sensmlx"]},"application/sensml-exi":{"source":"iana"},"application/sep+xml":{"source":"iana","compressible":true},"application/sep-exi":{"source":"iana"},"application/session-info":{"source":"iana"},"application/set-payment":{"source":"iana"},"application/set-payment-initiation":{"source":"iana","extensions":["setpay"]},"application/set-registration":{"source":"iana"},"application/set-registration-initiation":{"source":"iana","extensions":["setreg"]},"application/sgml":{"source":"iana"},"application/sgml-open-catalog":{"source":"iana"},"application/shf+xml":{"source":"iana","compressible":true,"extensions":["shf"]},"application/sieve":{"source":"iana","extensions":["siv","sieve"]},"application/simple-filter+xml":{"source":"iana","compressible":true},"application/simple-message-summary":{"source":"iana"},"application/simplesymbolcontainer":{"source":"iana"},"application/sipc":{"source":"iana"},"application/slate":{"source":"iana"},"application/smil":{"source":"iana"},"application/smil+xml":{"source":"iana","compressible":true,"extensions":["smi","smil"]},"application/smpte336m":{"source":"iana"},"application/soap+fastinfoset":{"source":"iana"},"application/soap+xml":{"source":"iana","compressible":true},"application/sparql-query":{"source":"iana","extensions":["rq"]},"application/sparql-results+xml":{"source":"iana","compressible":true,"extensions":["srx"]},"application/spdx+json":{"source":"iana","compressible":true},"application/spirits-event+xml":{"source":"iana","compressible":true},"application/sql":{"source":"iana"},"application/srgs":{"source":"iana","extensions":["gram"]},"application/srgs+xml":{"source":"iana","compressible":true,"extensions":["grxml"]},"application/sru+xml":{"source":"iana","compressible":true,"extensions":["sru"]},"application/ssdl+xml":{"source":"apache","compressible":true,"extensions":["ssdl"]},"application/ssml+xml":{"source":"iana","compressible":true,"extensions":["ssml"]},"application/stix+json":{"source":"iana","compressible":true},"application/swid+xml":{"source":"iana","compressible":true,"extensions":["swidtag"]},"application/tamp-apex-update":{"source":"iana"},"application/tamp-apex-update-confirm":{"source":"iana"},"application/tamp-community-update":{"source":"iana"},"application/tamp-community-update-confirm":{"source":"iana"},"application/tamp-error":{"source":"iana"},"application/tamp-sequence-adjust":{"source":"iana"},"application/tamp-sequence-adjust-confirm":{"source":"iana"},"application/tamp-status-query":{"source":"iana"},"application/tamp-status-response":{"source":"iana"},"application/tamp-update":{"source":"iana"},"application/tamp-update-confirm":{"source":"iana"},"application/tar":{"compressible":true},"application/taxii+json":{"source":"iana","compressible":true},"application/td+json":{"source":"iana","compressible":true},"application/tei+xml":{"source":"iana","compressible":true,"extensions":["tei","teicorpus"]},"application/tetra_isi":{"source":"iana"},"application/thraud+xml":{"source":"iana","compressible":true,"extensions":["tfi"]},"application/timestamp-query":{"source":"iana"},"application/timestamp-reply":{"source":"iana"},"application/timestamped-data":{"source":"iana","extensions":["tsd"]},"application/tlsrpt+gzip":{"source":"iana"},"application/tlsrpt+json":{"source":"iana","compressible":true},"application/tnauthlist":{"source":"iana"},"application/token-introspection+jwt":{"source":"iana"},"application/toml":{"compressible":true,"extensions":["toml"]},"application/trickle-ice-sdpfrag":{"source":"iana"},"application/trig":{"source":"iana","extensions":["trig"]},"application/ttml+xml":{"source":"iana","compressible":true,"extensions":["ttml"]},"application/tve-trigger":{"source":"iana"},"application/tzif":{"source":"iana"},"application/tzif-leap":{"source":"iana"},"application/ubjson":{"compressible":false,"extensions":["ubj"]},"application/ulpfec":{"source":"iana"},"application/urc-grpsheet+xml":{"source":"iana","compressible":true},"application/urc-ressheet+xml":{"source":"iana","compressible":true,"extensions":["rsheet"]},"application/urc-targetdesc+xml":{"source":"iana","compressible":true,"extensions":["td"]},"application/urc-uisocketdesc+xml":{"source":"iana","compressible":true},"application/vcard+json":{"source":"iana","compressible":true},"application/vcard+xml":{"source":"iana","compressible":true},"application/vemmi":{"source":"iana"},"application/vividence.scriptfile":{"source":"apache"},"application/vnd.1000minds.decision-model+xml":{"source":"iana","compressible":true,"extensions":["1km"]},"application/vnd.3gpp-prose+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-prose-pc3ch+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-v2x-local-service-information":{"source":"iana"},"application/vnd.3gpp.5gnas":{"source":"iana"},"application/vnd.3gpp.access-transfer-events+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.bsf+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.gmop+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.gtpc":{"source":"iana"},"application/vnd.3gpp.interworking-data":{"source":"iana"},"application/vnd.3gpp.lpp":{"source":"iana"},"application/vnd.3gpp.mc-signalling-ear":{"source":"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-payload":{"source":"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-signalling":{"source":"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-floor-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-signed+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-init-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-transmission-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mid-call+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.ngap":{"source":"iana"},"application/vnd.3gpp.pfcp":{"source":"iana"},"application/vnd.3gpp.pic-bw-large":{"source":"iana","extensions":["plb"]},"application/vnd.3gpp.pic-bw-small":{"source":"iana","extensions":["psb"]},"application/vnd.3gpp.pic-bw-var":{"source":"iana","extensions":["pvb"]},"application/vnd.3gpp.s1ap":{"source":"iana"},"application/vnd.3gpp.sms":{"source":"iana"},"application/vnd.3gpp.sms+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-ext+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.state-and-event-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.ussd+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.bcmcsinfo+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.sms":{"source":"iana"},"application/vnd.3gpp2.tcap":{"source":"iana","extensions":["tcap"]},"application/vnd.3lightssoftware.imagescal":{"source":"iana"},"application/vnd.3m.post-it-notes":{"source":"iana","extensions":["pwn"]},"application/vnd.accpac.simply.aso":{"source":"iana","extensions":["aso"]},"application/vnd.accpac.simply.imp":{"source":"iana","extensions":["imp"]},"application/vnd.acucobol":{"source":"iana","extensions":["acu"]},"application/vnd.acucorp":{"source":"iana","extensions":["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{"source":"apache","compressible":false,"extensions":["air"]},"application/vnd.adobe.flash.movie":{"source":"iana"},"application/vnd.adobe.formscentral.fcdt":{"source":"iana","extensions":["fcdt"]},"application/vnd.adobe.fxp":{"source":"iana","extensions":["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{"source":"iana"},"application/vnd.adobe.xdp+xml":{"source":"iana","compressible":true,"extensions":["xdp"]},"application/vnd.adobe.xfdf":{"source":"iana","extensions":["xfdf"]},"application/vnd.aether.imp":{"source":"iana"},"application/vnd.afpc.afplinedata":{"source":"iana"},"application/vnd.afpc.afplinedata-pagedef":{"source":"iana"},"application/vnd.afpc.cmoca-cmresource":{"source":"iana"},"application/vnd.afpc.foca-charset":{"source":"iana"},"application/vnd.afpc.foca-codedfont":{"source":"iana"},"application/vnd.afpc.foca-codepage":{"source":"iana"},"application/vnd.afpc.modca":{"source":"iana"},"application/vnd.afpc.modca-cmtable":{"source":"iana"},"application/vnd.afpc.modca-formdef":{"source":"iana"},"application/vnd.afpc.modca-mediummap":{"source":"iana"},"application/vnd.afpc.modca-objectcontainer":{"source":"iana"},"application/vnd.afpc.modca-overlay":{"source":"iana"},"application/vnd.afpc.modca-pagesegment":{"source":"iana"},"application/vnd.age":{"source":"iana","extensions":["age"]},"application/vnd.ah-barcode":{"source":"iana"},"application/vnd.ahead.space":{"source":"iana","extensions":["ahead"]},"application/vnd.airzip.filesecure.azf":{"source":"iana","extensions":["azf"]},"application/vnd.airzip.filesecure.azs":{"source":"iana","extensions":["azs"]},"application/vnd.amadeus+json":{"source":"iana","compressible":true},"application/vnd.amazon.ebook":{"source":"apache","extensions":["azw"]},"application/vnd.amazon.mobi8-ebook":{"source":"iana"},"application/vnd.americandynamics.acc":{"source":"iana","extensions":["acc"]},"application/vnd.amiga.ami":{"source":"iana","extensions":["ami"]},"application/vnd.amundsen.maze+xml":{"source":"iana","compressible":true},"application/vnd.android.ota":{"source":"iana"},"application/vnd.android.package-archive":{"source":"apache","compressible":false,"extensions":["apk"]},"application/vnd.anki":{"source":"iana"},"application/vnd.anser-web-certificate-issue-initiation":{"source":"iana","extensions":["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{"source":"apache","extensions":["fti"]},"application/vnd.antix.game-component":{"source":"iana","extensions":["atx"]},"application/vnd.apache.arrow.file":{"source":"iana"},"application/vnd.apache.arrow.stream":{"source":"iana"},"application/vnd.apache.thrift.binary":{"source":"iana"},"application/vnd.apache.thrift.compact":{"source":"iana"},"application/vnd.apache.thrift.json":{"source":"iana"},"application/vnd.api+json":{"source":"iana","compressible":true},"application/vnd.aplextor.warrp+json":{"source":"iana","compressible":true},"application/vnd.apothekende.reservation+json":{"source":"iana","compressible":true},"application/vnd.apple.installer+xml":{"source":"iana","compressible":true,"extensions":["mpkg"]},"application/vnd.apple.keynote":{"source":"iana","extensions":["key"]},"application/vnd.apple.mpegurl":{"source":"iana","extensions":["m3u8"]},"application/vnd.apple.numbers":{"source":"iana","extensions":["numbers"]},"application/vnd.apple.pages":{"source":"iana","extensions":["pages"]},"application/vnd.apple.pkpass":{"compressible":false,"extensions":["pkpass"]},"application/vnd.arastra.swi":{"source":"iana"},"application/vnd.aristanetworks.swi":{"source":"iana","extensions":["swi"]},"application/vnd.artisan+json":{"source":"iana","compressible":true},"application/vnd.artsquare":{"source":"iana"},"application/vnd.astraea-software.iota":{"source":"iana","extensions":["iota"]},"application/vnd.audiograph":{"source":"iana","extensions":["aep"]},"application/vnd.autopackage":{"source":"iana"},"application/vnd.avalon+json":{"source":"iana","compressible":true},"application/vnd.avistar+xml":{"source":"iana","compressible":true},"application/vnd.balsamiq.bmml+xml":{"source":"iana","compressible":true,"extensions":["bmml"]},"application/vnd.balsamiq.bmpr":{"source":"iana"},"application/vnd.banana-accounting":{"source":"iana"},"application/vnd.bbf.usp.error":{"source":"iana"},"application/vnd.bbf.usp.msg":{"source":"iana"},"application/vnd.bbf.usp.msg+json":{"source":"iana","compressible":true},"application/vnd.bekitzur-stech+json":{"source":"iana","compressible":true},"application/vnd.bint.med-content":{"source":"iana"},"application/vnd.biopax.rdf+xml":{"source":"iana","compressible":true},"application/vnd.blink-idb-value-wrapper":{"source":"iana"},"application/vnd.blueice.multipass":{"source":"iana","extensions":["mpm"]},"application/vnd.bluetooth.ep.oob":{"source":"iana"},"application/vnd.bluetooth.le.oob":{"source":"iana"},"application/vnd.bmi":{"source":"iana","extensions":["bmi"]},"application/vnd.bpf":{"source":"iana"},"application/vnd.bpf3":{"source":"iana"},"application/vnd.businessobjects":{"source":"iana","extensions":["rep"]},"application/vnd.byu.uapi+json":{"source":"iana","compressible":true},"application/vnd.cab-jscript":{"source":"iana"},"application/vnd.canon-cpdl":{"source":"iana"},"application/vnd.canon-lips":{"source":"iana"},"application/vnd.capasystems-pg+json":{"source":"iana","compressible":true},"application/vnd.cendio.thinlinc.clientconf":{"source":"iana"},"application/vnd.century-systems.tcp_stream":{"source":"iana"},"application/vnd.chemdraw+xml":{"source":"iana","compressible":true,"extensions":["cdxml"]},"application/vnd.chess-pgn":{"source":"iana"},"application/vnd.chipnuts.karaoke-mmd":{"source":"iana","extensions":["mmd"]},"application/vnd.ciedi":{"source":"iana"},"application/vnd.cinderella":{"source":"iana","extensions":["cdy"]},"application/vnd.cirpack.isdn-ext":{"source":"iana"},"application/vnd.citationstyles.style+xml":{"source":"iana","compressible":true,"extensions":["csl"]},"application/vnd.claymore":{"source":"iana","extensions":["cla"]},"application/vnd.cloanto.rp9":{"source":"iana","extensions":["rp9"]},"application/vnd.clonk.c4group":{"source":"iana","extensions":["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{"source":"iana","extensions":["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{"source":"iana","extensions":["c11amz"]},"application/vnd.coffeescript":{"source":"iana"},"application/vnd.collabio.xodocuments.document":{"source":"iana"},"application/vnd.collabio.xodocuments.document-template":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation-template":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{"source":"iana"},"application/vnd.collection+json":{"source":"iana","compressible":true},"application/vnd.collection.doc+json":{"source":"iana","compressible":true},"application/vnd.collection.next+json":{"source":"iana","compressible":true},"application/vnd.comicbook+zip":{"source":"iana","compressible":false},"application/vnd.comicbook-rar":{"source":"iana"},"application/vnd.commerce-battelle":{"source":"iana"},"application/vnd.commonspace":{"source":"iana","extensions":["csp"]},"application/vnd.contact.cmsg":{"source":"iana","extensions":["cdbcmsg"]},"application/vnd.coreos.ignition+json":{"source":"iana","compressible":true},"application/vnd.cosmocaller":{"source":"iana","extensions":["cmc"]},"application/vnd.crick.clicker":{"source":"iana","extensions":["clkx"]},"application/vnd.crick.clicker.keyboard":{"source":"iana","extensions":["clkk"]},"application/vnd.crick.clicker.palette":{"source":"iana","extensions":["clkp"]},"application/vnd.crick.clicker.template":{"source":"iana","extensions":["clkt"]},"application/vnd.crick.clicker.wordbank":{"source":"iana","extensions":["clkw"]},"application/vnd.criticaltools.wbs+xml":{"source":"iana","compressible":true,"extensions":["wbs"]},"application/vnd.cryptii.pipe+json":{"source":"iana","compressible":true},"application/vnd.crypto-shade-file":{"source":"iana"},"application/vnd.cryptomator.encrypted":{"source":"iana"},"application/vnd.cryptomator.vault":{"source":"iana"},"application/vnd.ctc-posml":{"source":"iana","extensions":["pml"]},"application/vnd.ctct.ws+xml":{"source":"iana","compressible":true},"application/vnd.cups-pdf":{"source":"iana"},"application/vnd.cups-postscript":{"source":"iana"},"application/vnd.cups-ppd":{"source":"iana","extensions":["ppd"]},"application/vnd.cups-raster":{"source":"iana"},"application/vnd.cups-raw":{"source":"iana"},"application/vnd.curl":{"source":"iana"},"application/vnd.curl.car":{"source":"apache","extensions":["car"]},"application/vnd.curl.pcurl":{"source":"apache","extensions":["pcurl"]},"application/vnd.cyan.dean.root+xml":{"source":"iana","compressible":true},"application/vnd.cybank":{"source":"iana"},"application/vnd.cyclonedx+json":{"source":"iana","compressible":true},"application/vnd.cyclonedx+xml":{"source":"iana","compressible":true},"application/vnd.d2l.coursepackage1p0+zip":{"source":"iana","compressible":false},"application/vnd.d3m-dataset":{"source":"iana"},"application/vnd.d3m-problem":{"source":"iana"},"application/vnd.dart":{"source":"iana","compressible":true,"extensions":["dart"]},"application/vnd.data-vision.rdz":{"source":"iana","extensions":["rdz"]},"application/vnd.datapackage+json":{"source":"iana","compressible":true},"application/vnd.dataresource+json":{"source":"iana","compressible":true},"application/vnd.dbf":{"source":"iana","extensions":["dbf"]},"application/vnd.debian.binary-package":{"source":"iana"},"application/vnd.dece.data":{"source":"iana","extensions":["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{"source":"iana","compressible":true,"extensions":["uvt","uvvt"]},"application/vnd.dece.unspecified":{"source":"iana","extensions":["uvx","uvvx"]},"application/vnd.dece.zip":{"source":"iana","extensions":["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{"source":"iana","extensions":["fe_launch"]},"application/vnd.desmume.movie":{"source":"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{"source":"iana"},"application/vnd.dm.delegation+xml":{"source":"iana","compressible":true},"application/vnd.dna":{"source":"iana","extensions":["dna"]},"application/vnd.document+json":{"source":"iana","compressible":true},"application/vnd.dolby.mlp":{"source":"apache","extensions":["mlp"]},"application/vnd.dolby.mobile.1":{"source":"iana"},"application/vnd.dolby.mobile.2":{"source":"iana"},"application/vnd.doremir.scorecloud-binary-document":{"source":"iana"},"application/vnd.dpgraph":{"source":"iana","extensions":["dpg"]},"application/vnd.dreamfactory":{"source":"iana","extensions":["dfac"]},"application/vnd.drive+json":{"source":"iana","compressible":true},"application/vnd.ds-keypoint":{"source":"apache","extensions":["kpxx"]},"application/vnd.dtg.local":{"source":"iana"},"application/vnd.dtg.local.flash":{"source":"iana"},"application/vnd.dtg.local.html":{"source":"iana"},"application/vnd.dvb.ait":{"source":"iana","extensions":["ait"]},"application/vnd.dvb.dvbisl+xml":{"source":"iana","compressible":true},"application/vnd.dvb.dvbj":{"source":"iana"},"application/vnd.dvb.esgcontainer":{"source":"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess2":{"source":"iana"},"application/vnd.dvb.ipdcesgpdd":{"source":"iana"},"application/vnd.dvb.ipdcroaming":{"source":"iana"},"application/vnd.dvb.iptv.alfec-base":{"source":"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{"source":"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-container+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-generic+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-msglist+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-request+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-response+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-init+xml":{"source":"iana","compressible":true},"application/vnd.dvb.pfr":{"source":"iana"},"application/vnd.dvb.service":{"source":"iana","extensions":["svc"]},"application/vnd.dxr":{"source":"iana"},"application/vnd.dynageo":{"source":"iana","extensions":["geo"]},"application/vnd.dzr":{"source":"iana"},"application/vnd.easykaraoke.cdgdownload":{"source":"iana"},"application/vnd.ecdis-update":{"source":"iana"},"application/vnd.ecip.rlp":{"source":"iana"},"application/vnd.eclipse.ditto+json":{"source":"iana","compressible":true},"application/vnd.ecowin.chart":{"source":"iana","extensions":["mag"]},"application/vnd.ecowin.filerequest":{"source":"iana"},"application/vnd.ecowin.fileupdate":{"source":"iana"},"application/vnd.ecowin.series":{"source":"iana"},"application/vnd.ecowin.seriesrequest":{"source":"iana"},"application/vnd.ecowin.seriesupdate":{"source":"iana"},"application/vnd.efi.img":{"source":"iana"},"application/vnd.efi.iso":{"source":"iana"},"application/vnd.emclient.accessrequest+xml":{"source":"iana","compressible":true},"application/vnd.enliven":{"source":"iana","extensions":["nml"]},"application/vnd.enphase.envoy":{"source":"iana"},"application/vnd.eprints.data+xml":{"source":"iana","compressible":true},"application/vnd.epson.esf":{"source":"iana","extensions":["esf"]},"application/vnd.epson.msf":{"source":"iana","extensions":["msf"]},"application/vnd.epson.quickanime":{"source":"iana","extensions":["qam"]},"application/vnd.epson.salt":{"source":"iana","extensions":["slt"]},"application/vnd.epson.ssf":{"source":"iana","extensions":["ssf"]},"application/vnd.ericsson.quickcall":{"source":"iana"},"application/vnd.espass-espass+zip":{"source":"iana","compressible":false},"application/vnd.eszigno3+xml":{"source":"iana","compressible":true,"extensions":["es3","et3"]},"application/vnd.etsi.aoc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.asic-e+zip":{"source":"iana","compressible":false},"application/vnd.etsi.asic-s+zip":{"source":"iana","compressible":false},"application/vnd.etsi.cug+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvcommand+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-bc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-cod+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-npvr+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvservice+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsync+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvueprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mcid+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mheg5":{"source":"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{"source":"iana","compressible":true},"application/vnd.etsi.pstn+xml":{"source":"iana","compressible":true},"application/vnd.etsi.sci+xml":{"source":"iana","compressible":true},"application/vnd.etsi.simservs+xml":{"source":"iana","compressible":true},"application/vnd.etsi.timestamp-token":{"source":"iana"},"application/vnd.etsi.tsl+xml":{"source":"iana","compressible":true},"application/vnd.etsi.tsl.der":{"source":"iana"},"application/vnd.eu.kasparian.car+json":{"source":"iana","compressible":true},"application/vnd.eudora.data":{"source":"iana"},"application/vnd.evolv.ecig.profile":{"source":"iana"},"application/vnd.evolv.ecig.settings":{"source":"iana"},"application/vnd.evolv.ecig.theme":{"source":"iana"},"application/vnd.exstream-empower+zip":{"source":"iana","compressible":false},"application/vnd.exstream-package":{"source":"iana"},"application/vnd.ezpix-album":{"source":"iana","extensions":["ez2"]},"application/vnd.ezpix-package":{"source":"iana","extensions":["ez3"]},"application/vnd.f-secure.mobile":{"source":"iana"},"application/vnd.familysearch.gedcom+zip":{"source":"iana","compressible":false},"application/vnd.fastcopy-disk-image":{"source":"iana"},"application/vnd.fdf":{"source":"iana","extensions":["fdf"]},"application/vnd.fdsn.mseed":{"source":"iana","extensions":["mseed"]},"application/vnd.fdsn.seed":{"source":"iana","extensions":["seed","dataless"]},"application/vnd.ffsns":{"source":"iana"},"application/vnd.ficlab.flb+zip":{"source":"iana","compressible":false},"application/vnd.filmit.zfc":{"source":"iana"},"application/vnd.fints":{"source":"iana"},"application/vnd.firemonkeys.cloudcell":{"source":"iana"},"application/vnd.flographit":{"source":"iana","extensions":["gph"]},"application/vnd.fluxtime.clip":{"source":"iana","extensions":["ftc"]},"application/vnd.font-fontforge-sfd":{"source":"iana"},"application/vnd.framemaker":{"source":"iana","extensions":["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{"source":"iana","extensions":["fnc"]},"application/vnd.frogans.ltf":{"source":"iana","extensions":["ltf"]},"application/vnd.fsc.weblaunch":{"source":"iana","extensions":["fsc"]},"application/vnd.fujifilm.fb.docuworks":{"source":"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{"source":"iana"},"application/vnd.fujifilm.fb.docuworks.container":{"source":"iana"},"application/vnd.fujifilm.fb.jfi+xml":{"source":"iana","compressible":true},"application/vnd.fujitsu.oasys":{"source":"iana","extensions":["oas"]},"application/vnd.fujitsu.oasys2":{"source":"iana","extensions":["oa2"]},"application/vnd.fujitsu.oasys3":{"source":"iana","extensions":["oa3"]},"application/vnd.fujitsu.oasysgp":{"source":"iana","extensions":["fg5"]},"application/vnd.fujitsu.oasysprs":{"source":"iana","extensions":["bh2"]},"application/vnd.fujixerox.art-ex":{"source":"iana"},"application/vnd.fujixerox.art4":{"source":"iana"},"application/vnd.fujixerox.ddd":{"source":"iana","extensions":["ddd"]},"application/vnd.fujixerox.docuworks":{"source":"iana","extensions":["xdw"]},"application/vnd.fujixerox.docuworks.binder":{"source":"iana","extensions":["xbd"]},"application/vnd.fujixerox.docuworks.container":{"source":"iana"},"application/vnd.fujixerox.hbpl":{"source":"iana"},"application/vnd.fut-misnet":{"source":"iana"},"application/vnd.futoin+cbor":{"source":"iana"},"application/vnd.futoin+json":{"source":"iana","compressible":true},"application/vnd.fuzzysheet":{"source":"iana","extensions":["fzs"]},"application/vnd.genomatix.tuxedo":{"source":"iana","extensions":["txd"]},"application/vnd.gentics.grd+json":{"source":"iana","compressible":true},"application/vnd.geo+json":{"source":"iana","compressible":true},"application/vnd.geocube+xml":{"source":"iana","compressible":true},"application/vnd.geogebra.file":{"source":"iana","extensions":["ggb"]},"application/vnd.geogebra.slides":{"source":"iana"},"application/vnd.geogebra.tool":{"source":"iana","extensions":["ggt"]},"application/vnd.geometry-explorer":{"source":"iana","extensions":["gex","gre"]},"application/vnd.geonext":{"source":"iana","extensions":["gxt"]},"application/vnd.geoplan":{"source":"iana","extensions":["g2w"]},"application/vnd.geospace":{"source":"iana","extensions":["g3w"]},"application/vnd.gerber":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt-response":{"source":"iana"},"application/vnd.gmx":{"source":"iana","extensions":["gmx"]},"application/vnd.google-apps.document":{"compressible":false,"extensions":["gdoc"]},"application/vnd.google-apps.presentation":{"compressible":false,"extensions":["gslides"]},"application/vnd.google-apps.spreadsheet":{"compressible":false,"extensions":["gsheet"]},"application/vnd.google-earth.kml+xml":{"source":"iana","compressible":true,"extensions":["kml"]},"application/vnd.google-earth.kmz":{"source":"iana","compressible":false,"extensions":["kmz"]},"application/vnd.gov.sk.e-form+xml":{"source":"iana","compressible":true},"application/vnd.gov.sk.e-form+zip":{"source":"iana","compressible":false},"application/vnd.gov.sk.xmldatacontainer+xml":{"source":"iana","compressible":true},"application/vnd.grafeq":{"source":"iana","extensions":["gqf","gqs"]},"application/vnd.gridmp":{"source":"iana"},"application/vnd.groove-account":{"source":"iana","extensions":["gac"]},"application/vnd.groove-help":{"source":"iana","extensions":["ghf"]},"application/vnd.groove-identity-message":{"source":"iana","extensions":["gim"]},"application/vnd.groove-injector":{"source":"iana","extensions":["grv"]},"application/vnd.groove-tool-message":{"source":"iana","extensions":["gtm"]},"application/vnd.groove-tool-template":{"source":"iana","extensions":["tpl"]},"application/vnd.groove-vcard":{"source":"iana","extensions":["vcg"]},"application/vnd.hal+json":{"source":"iana","compressible":true},"application/vnd.hal+xml":{"source":"iana","compressible":true,"extensions":["hal"]},"application/vnd.handheld-entertainment+xml":{"source":"iana","compressible":true,"extensions":["zmm"]},"application/vnd.hbci":{"source":"iana","extensions":["hbci"]},"application/vnd.hc+json":{"source":"iana","compressible":true},"application/vnd.hcl-bireports":{"source":"iana"},"application/vnd.hdt":{"source":"iana"},"application/vnd.heroku+json":{"source":"iana","compressible":true},"application/vnd.hhe.lesson-player":{"source":"iana","extensions":["les"]},"application/vnd.hl7cda+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.hl7v2+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.hp-hpgl":{"source":"iana","extensions":["hpgl"]},"application/vnd.hp-hpid":{"source":"iana","extensions":["hpid"]},"application/vnd.hp-hps":{"source":"iana","extensions":["hps"]},"application/vnd.hp-jlyt":{"source":"iana","extensions":["jlt"]},"application/vnd.hp-pcl":{"source":"iana","extensions":["pcl"]},"application/vnd.hp-pclxl":{"source":"iana","extensions":["pclxl"]},"application/vnd.httphone":{"source":"iana"},"application/vnd.hydrostatix.sof-data":{"source":"iana","extensions":["sfd-hdstx"]},"application/vnd.hyper+json":{"source":"iana","compressible":true},"application/vnd.hyper-item+json":{"source":"iana","compressible":true},"application/vnd.hyperdrive+json":{"source":"iana","compressible":true},"application/vnd.hzn-3d-crossword":{"source":"iana"},"application/vnd.ibm.afplinedata":{"source":"iana"},"application/vnd.ibm.electronic-media":{"source":"iana"},"application/vnd.ibm.minipay":{"source":"iana","extensions":["mpy"]},"application/vnd.ibm.modcap":{"source":"iana","extensions":["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{"source":"iana","extensions":["irm"]},"application/vnd.ibm.secure-container":{"source":"iana","extensions":["sc"]},"application/vnd.iccprofile":{"source":"iana","extensions":["icc","icm"]},"application/vnd.ieee.1905":{"source":"iana"},"application/vnd.igloader":{"source":"iana","extensions":["igl"]},"application/vnd.imagemeter.folder+zip":{"source":"iana","compressible":false},"application/vnd.imagemeter.image+zip":{"source":"iana","compressible":false},"application/vnd.immervision-ivp":{"source":"iana","extensions":["ivp"]},"application/vnd.immervision-ivu":{"source":"iana","extensions":["ivu"]},"application/vnd.ims.imsccv1p1":{"source":"iana"},"application/vnd.ims.imsccv1p2":{"source":"iana"},"application/vnd.ims.imsccv1p3":{"source":"iana"},"application/vnd.ims.lis.v2.result+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy.id+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings.simple+json":{"source":"iana","compressible":true},"application/vnd.informedcontrol.rms+xml":{"source":"iana","compressible":true},"application/vnd.informix-visionary":{"source":"iana"},"application/vnd.infotech.project":{"source":"iana"},"application/vnd.infotech.project+xml":{"source":"iana","compressible":true},"application/vnd.innopath.wamp.notification":{"source":"iana"},"application/vnd.insors.igm":{"source":"iana","extensions":["igm"]},"application/vnd.intercon.formnet":{"source":"iana","extensions":["xpw","xpx"]},"application/vnd.intergeo":{"source":"iana","extensions":["i2g"]},"application/vnd.intertrust.digibox":{"source":"iana"},"application/vnd.intertrust.nncp":{"source":"iana"},"application/vnd.intu.qbo":{"source":"iana","extensions":["qbo"]},"application/vnd.intu.qfx":{"source":"iana","extensions":["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.conceptitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.knowledgeitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsmessage+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.packageitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.planningitem+xml":{"source":"iana","compressible":true},"application/vnd.ipunplugged.rcprofile":{"source":"iana","extensions":["rcprofile"]},"application/vnd.irepository.package+xml":{"source":"iana","compressible":true,"extensions":["irp"]},"application/vnd.is-xpr":{"source":"iana","extensions":["xpr"]},"application/vnd.isac.fcs":{"source":"iana","extensions":["fcs"]},"application/vnd.iso11783-10+zip":{"source":"iana","compressible":false},"application/vnd.jam":{"source":"iana","extensions":["jam"]},"application/vnd.japannet-directory-service":{"source":"iana"},"application/vnd.japannet-jpnstore-wakeup":{"source":"iana"},"application/vnd.japannet-payment-wakeup":{"source":"iana"},"application/vnd.japannet-registration":{"source":"iana"},"application/vnd.japannet-registration-wakeup":{"source":"iana"},"application/vnd.japannet-setstore-wakeup":{"source":"iana"},"application/vnd.japannet-verification":{"source":"iana"},"application/vnd.japannet-verification-wakeup":{"source":"iana"},"application/vnd.jcp.javame.midlet-rms":{"source":"iana","extensions":["rms"]},"application/vnd.jisp":{"source":"iana","extensions":["jisp"]},"application/vnd.joost.joda-archive":{"source":"iana","extensions":["joda"]},"application/vnd.jsk.isdn-ngn":{"source":"iana"},"application/vnd.kahootz":{"source":"iana","extensions":["ktz","ktr"]},"application/vnd.kde.karbon":{"source":"iana","extensions":["karbon"]},"application/vnd.kde.kchart":{"source":"iana","extensions":["chrt"]},"application/vnd.kde.kformula":{"source":"iana","extensions":["kfo"]},"application/vnd.kde.kivio":{"source":"iana","extensions":["flw"]},"application/vnd.kde.kontour":{"source":"iana","extensions":["kon"]},"application/vnd.kde.kpresenter":{"source":"iana","extensions":["kpr","kpt"]},"application/vnd.kde.kspread":{"source":"iana","extensions":["ksp"]},"application/vnd.kde.kword":{"source":"iana","extensions":["kwd","kwt"]},"application/vnd.kenameaapp":{"source":"iana","extensions":["htke"]},"application/vnd.kidspiration":{"source":"iana","extensions":["kia"]},"application/vnd.kinar":{"source":"iana","extensions":["kne","knp"]},"application/vnd.koan":{"source":"iana","extensions":["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{"source":"iana","extensions":["sse"]},"application/vnd.las":{"source":"iana"},"application/vnd.las.las+json":{"source":"iana","compressible":true},"application/vnd.las.las+xml":{"source":"iana","compressible":true,"extensions":["lasxml"]},"application/vnd.laszip":{"source":"iana"},"application/vnd.leap+json":{"source":"iana","compressible":true},"application/vnd.liberty-request+xml":{"source":"iana","compressible":true},"application/vnd.llamagraphics.life-balance.desktop":{"source":"iana","extensions":["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{"source":"iana","compressible":true,"extensions":["lbe"]},"application/vnd.logipipe.circuit+zip":{"source":"iana","compressible":false},"application/vnd.loom":{"source":"iana"},"application/vnd.lotus-1-2-3":{"source":"iana","extensions":["123"]},"application/vnd.lotus-approach":{"source":"iana","extensions":["apr"]},"application/vnd.lotus-freelance":{"source":"iana","extensions":["pre"]},"application/vnd.lotus-notes":{"source":"iana","extensions":["nsf"]},"application/vnd.lotus-organizer":{"source":"iana","extensions":["org"]},"application/vnd.lotus-screencam":{"source":"iana","extensions":["scm"]},"application/vnd.lotus-wordpro":{"source":"iana","extensions":["lwp"]},"application/vnd.macports.portpkg":{"source":"iana","extensions":["portpkg"]},"application/vnd.mapbox-vector-tile":{"source":"iana","extensions":["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.conftoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.license+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.mdcf":{"source":"iana"},"application/vnd.mason+json":{"source":"iana","compressible":true},"application/vnd.maxar.archive.3tz+zip":{"source":"iana","compressible":false},"application/vnd.maxmind.maxmind-db":{"source":"iana"},"application/vnd.mcd":{"source":"iana","extensions":["mcd"]},"application/vnd.medcalcdata":{"source":"iana","extensions":["mc1"]},"application/vnd.mediastation.cdkey":{"source":"iana","extensions":["cdkey"]},"application/vnd.meridian-slingshot":{"source":"iana"},"application/vnd.mfer":{"source":"iana","extensions":["mwf"]},"application/vnd.mfmp":{"source":"iana","extensions":["mfm"]},"application/vnd.micro+json":{"source":"iana","compressible":true},"application/vnd.micrografx.flo":{"source":"iana","extensions":["flo"]},"application/vnd.micrografx.igx":{"source":"iana","extensions":["igx"]},"application/vnd.microsoft.portable-executable":{"source":"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{"source":"iana"},"application/vnd.miele+json":{"source":"iana","compressible":true},"application/vnd.mif":{"source":"iana","extensions":["mif"]},"application/vnd.minisoft-hp3000-save":{"source":"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{"source":"iana"},"application/vnd.mobius.daf":{"source":"iana","extensions":["daf"]},"application/vnd.mobius.dis":{"source":"iana","extensions":["dis"]},"application/vnd.mobius.mbk":{"source":"iana","extensions":["mbk"]},"application/vnd.mobius.mqy":{"source":"iana","extensions":["mqy"]},"application/vnd.mobius.msl":{"source":"iana","extensions":["msl"]},"application/vnd.mobius.plc":{"source":"iana","extensions":["plc"]},"application/vnd.mobius.txf":{"source":"iana","extensions":["txf"]},"application/vnd.mophun.application":{"source":"iana","extensions":["mpn"]},"application/vnd.mophun.certificate":{"source":"iana","extensions":["mpc"]},"application/vnd.motorola.flexsuite":{"source":"iana"},"application/vnd.motorola.flexsuite.adsi":{"source":"iana"},"application/vnd.motorola.flexsuite.fis":{"source":"iana"},"application/vnd.motorola.flexsuite.gotap":{"source":"iana"},"application/vnd.motorola.flexsuite.kmr":{"source":"iana"},"application/vnd.motorola.flexsuite.ttc":{"source":"iana"},"application/vnd.motorola.flexsuite.wem":{"source":"iana"},"application/vnd.motorola.iprm":{"source":"iana"},"application/vnd.mozilla.xul+xml":{"source":"iana","compressible":true,"extensions":["xul"]},"application/vnd.ms-3mfdocument":{"source":"iana"},"application/vnd.ms-artgalry":{"source":"iana","extensions":["cil"]},"application/vnd.ms-asf":{"source":"iana"},"application/vnd.ms-cab-compressed":{"source":"iana","extensions":["cab"]},"application/vnd.ms-color.iccprofile":{"source":"apache"},"application/vnd.ms-excel":{"source":"iana","compressible":false,"extensions":["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{"source":"iana","extensions":["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{"source":"iana","extensions":["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{"source":"iana","extensions":["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{"source":"iana","extensions":["xltm"]},"application/vnd.ms-fontobject":{"source":"iana","compressible":true,"extensions":["eot"]},"application/vnd.ms-htmlhelp":{"source":"iana","extensions":["chm"]},"application/vnd.ms-ims":{"source":"iana","extensions":["ims"]},"application/vnd.ms-lrm":{"source":"iana","extensions":["lrm"]},"application/vnd.ms-office.activex+xml":{"source":"iana","compressible":true},"application/vnd.ms-officetheme":{"source":"iana","extensions":["thmx"]},"application/vnd.ms-opentype":{"source":"apache","compressible":true},"application/vnd.ms-outlook":{"compressible":false,"extensions":["msg"]},"application/vnd.ms-package.obfuscated-opentype":{"source":"apache"},"application/vnd.ms-pki.seccat":{"source":"apache","extensions":["cat"]},"application/vnd.ms-pki.stl":{"source":"apache","extensions":["stl"]},"application/vnd.ms-playready.initiator+xml":{"source":"iana","compressible":true},"application/vnd.ms-powerpoint":{"source":"iana","compressible":false,"extensions":["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{"source":"iana","extensions":["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{"source":"iana","extensions":["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{"source":"iana","extensions":["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{"source":"iana","extensions":["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{"source":"iana","extensions":["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{"source":"iana","compressible":true},"application/vnd.ms-printing.printticket+xml":{"source":"apache","compressible":true},"application/vnd.ms-printschematicket+xml":{"source":"iana","compressible":true},"application/vnd.ms-project":{"source":"iana","extensions":["mpp","mpt"]},"application/vnd.ms-tnef":{"source":"iana"},"application/vnd.ms-windows.devicepairing":{"source":"iana"},"application/vnd.ms-windows.nwprinting.oob":{"source":"iana"},"application/vnd.ms-windows.printerpairing":{"source":"iana"},"application/vnd.ms-windows.wsd.oob":{"source":"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.lic-resp":{"source":"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.meter-resp":{"source":"iana"},"application/vnd.ms-word.document.macroenabled.12":{"source":"iana","extensions":["docm"]},"application/vnd.ms-word.template.macroenabled.12":{"source":"iana","extensions":["dotm"]},"application/vnd.ms-works":{"source":"iana","extensions":["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{"source":"iana","extensions":["wpl"]},"application/vnd.ms-xpsdocument":{"source":"iana","compressible":false,"extensions":["xps"]},"application/vnd.msa-disk-image":{"source":"iana"},"application/vnd.mseq":{"source":"iana","extensions":["mseq"]},"application/vnd.msign":{"source":"iana"},"application/vnd.multiad.creator":{"source":"iana"},"application/vnd.multiad.creator.cif":{"source":"iana"},"application/vnd.music-niff":{"source":"iana"},"application/vnd.musician":{"source":"iana","extensions":["mus"]},"application/vnd.muvee.style":{"source":"iana","extensions":["msty"]},"application/vnd.mynfc":{"source":"iana","extensions":["taglet"]},"application/vnd.nacamar.ybrid+json":{"source":"iana","compressible":true},"application/vnd.ncd.control":{"source":"iana"},"application/vnd.ncd.reference":{"source":"iana"},"application/vnd.nearst.inv+json":{"source":"iana","compressible":true},"application/vnd.nebumind.line":{"source":"iana"},"application/vnd.nervana":{"source":"iana"},"application/vnd.netfpx":{"source":"iana"},"application/vnd.neurolanguage.nlu":{"source":"iana","extensions":["nlu"]},"application/vnd.nimn":{"source":"iana"},"application/vnd.nintendo.nitro.rom":{"source":"iana"},"application/vnd.nintendo.snes.rom":{"source":"iana"},"application/vnd.nitf":{"source":"iana","extensions":["ntf","nitf"]},"application/vnd.noblenet-directory":{"source":"iana","extensions":["nnd"]},"application/vnd.noblenet-sealer":{"source":"iana","extensions":["nns"]},"application/vnd.noblenet-web":{"source":"iana","extensions":["nnw"]},"application/vnd.nokia.catalogs":{"source":"iana"},"application/vnd.nokia.conml+wbxml":{"source":"iana"},"application/vnd.nokia.conml+xml":{"source":"iana","compressible":true},"application/vnd.nokia.iptv.config+xml":{"source":"iana","compressible":true},"application/vnd.nokia.isds-radio-presets":{"source":"iana"},"application/vnd.nokia.landmark+wbxml":{"source":"iana"},"application/vnd.nokia.landmark+xml":{"source":"iana","compressible":true},"application/vnd.nokia.landmarkcollection+xml":{"source":"iana","compressible":true},"application/vnd.nokia.n-gage.ac+xml":{"source":"iana","compressible":true,"extensions":["ac"]},"application/vnd.nokia.n-gage.data":{"source":"iana","extensions":["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{"source":"iana","extensions":["n-gage"]},"application/vnd.nokia.ncd":{"source":"iana"},"application/vnd.nokia.pcd+wbxml":{"source":"iana"},"application/vnd.nokia.pcd+xml":{"source":"iana","compressible":true},"application/vnd.nokia.radio-preset":{"source":"iana","extensions":["rpst"]},"application/vnd.nokia.radio-presets":{"source":"iana","extensions":["rpss"]},"application/vnd.novadigm.edm":{"source":"iana","extensions":["edm"]},"application/vnd.novadigm.edx":{"source":"iana","extensions":["edx"]},"application/vnd.novadigm.ext":{"source":"iana","extensions":["ext"]},"application/vnd.ntt-local.content-share":{"source":"iana"},"application/vnd.ntt-local.file-transfer":{"source":"iana"},"application/vnd.ntt-local.ogw_remote-access":{"source":"iana"},"application/vnd.ntt-local.sip-ta_remote":{"source":"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{"source":"iana"},"application/vnd.oasis.opendocument.chart":{"source":"iana","extensions":["odc"]},"application/vnd.oasis.opendocument.chart-template":{"source":"iana","extensions":["otc"]},"application/vnd.oasis.opendocument.database":{"source":"iana","extensions":["odb"]},"application/vnd.oasis.opendocument.formula":{"source":"iana","extensions":["odf"]},"application/vnd.oasis.opendocument.formula-template":{"source":"iana","extensions":["odft"]},"application/vnd.oasis.opendocument.graphics":{"source":"iana","compressible":false,"extensions":["odg"]},"application/vnd.oasis.opendocument.graphics-template":{"source":"iana","extensions":["otg"]},"application/vnd.oasis.opendocument.image":{"source":"iana","extensions":["odi"]},"application/vnd.oasis.opendocument.image-template":{"source":"iana","extensions":["oti"]},"application/vnd.oasis.opendocument.presentation":{"source":"iana","compressible":false,"extensions":["odp"]},"application/vnd.oasis.opendocument.presentation-template":{"source":"iana","extensions":["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{"source":"iana","compressible":false,"extensions":["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{"source":"iana","extensions":["ots"]},"application/vnd.oasis.opendocument.text":{"source":"iana","compressible":false,"extensions":["odt"]},"application/vnd.oasis.opendocument.text-master":{"source":"iana","extensions":["odm"]},"application/vnd.oasis.opendocument.text-template":{"source":"iana","extensions":["ott"]},"application/vnd.oasis.opendocument.text-web":{"source":"iana","extensions":["oth"]},"application/vnd.obn":{"source":"iana"},"application/vnd.ocf+cbor":{"source":"iana"},"application/vnd.oci.image.manifest.v1+json":{"source":"iana","compressible":true},"application/vnd.oftn.l10n+json":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessdownload+xml":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessstreaming+xml":{"source":"iana","compressible":true},"application/vnd.oipf.cspg-hexbinary":{"source":"iana"},"application/vnd.oipf.dae.svg+xml":{"source":"iana","compressible":true},"application/vnd.oipf.dae.xhtml+xml":{"source":"iana","compressible":true},"application/vnd.oipf.mippvcontrolmessage+xml":{"source":"iana","compressible":true},"application/vnd.oipf.pae.gem":{"source":"iana"},"application/vnd.oipf.spdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.oipf.spdlist+xml":{"source":"iana","compressible":true},"application/vnd.oipf.ueprofile+xml":{"source":"iana","compressible":true},"application/vnd.oipf.userprofile+xml":{"source":"iana","compressible":true},"application/vnd.olpc-sugar":{"source":"iana","extensions":["xo"]},"application/vnd.oma-scws-config":{"source":"iana"},"application/vnd.oma-scws-http-request":{"source":"iana"},"application/vnd.oma-scws-http-response":{"source":"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.drm-trigger+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.imd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.ltkm":{"source":"iana"},"application/vnd.oma.bcast.notification+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.provisioningtrigger":{"source":"iana"},"application/vnd.oma.bcast.sgboot":{"source":"iana"},"application/vnd.oma.bcast.sgdd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.sgdu":{"source":"iana"},"application/vnd.oma.bcast.simple-symbol-container":{"source":"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.sprov+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.stkm":{"source":"iana"},"application/vnd.oma.cab-address-book+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-feature-handler+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-pcc+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-subs-invite+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-user-prefs+xml":{"source":"iana","compressible":true},"application/vnd.oma.dcd":{"source":"iana"},"application/vnd.oma.dcdc":{"source":"iana"},"application/vnd.oma.dd2+xml":{"source":"iana","compressible":true,"extensions":["dd2"]},"application/vnd.oma.drm.risd+xml":{"source":"iana","compressible":true},"application/vnd.oma.group-usage-list+xml":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+cbor":{"source":"iana"},"application/vnd.oma.lwm2m+json":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+tlv":{"source":"iana"},"application/vnd.oma.pal+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.detailed-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.final-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.groups+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.invocation-descriptor+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.optimized-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.push":{"source":"iana"},"application/vnd.oma.scidm.messages+xml":{"source":"iana","compressible":true},"application/vnd.oma.xcap-directory+xml":{"source":"iana","compressible":true},"application/vnd.omads-email+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-file+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-folder+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omaloc-supl-init":{"source":"iana"},"application/vnd.onepager":{"source":"iana"},"application/vnd.onepagertamp":{"source":"iana"},"application/vnd.onepagertamx":{"source":"iana"},"application/vnd.onepagertat":{"source":"iana"},"application/vnd.onepagertatp":{"source":"iana"},"application/vnd.onepagertatx":{"source":"iana"},"application/vnd.openblox.game+xml":{"source":"iana","compressible":true,"extensions":["obgx"]},"application/vnd.openblox.game-binary":{"source":"iana"},"application/vnd.openeye.oeb":{"source":"iana"},"application/vnd.openofficeorg.extension":{"source":"apache","extensions":["oxt"]},"application/vnd.openstreetmap.data+xml":{"source":"iana","compressible":true,"extensions":["osm"]},"application/vnd.opentimestamps.ots":{"source":"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawing+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{"source":"iana","compressible":false,"extensions":["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slide":{"source":"iana","extensions":["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{"source":"iana","extensions":["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.template":{"source":"iana","extensions":["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{"source":"iana","compressible":false,"extensions":["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{"source":"iana","extensions":["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.theme+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.vmldrawing":{"source":"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{"source":"iana","compressible":false,"extensions":["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{"source":"iana","extensions":["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.core-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.relationships+xml":{"source":"iana","compressible":true},"application/vnd.oracle.resource+json":{"source":"iana","compressible":true},"application/vnd.orange.indata":{"source":"iana"},"application/vnd.osa.netdeploy":{"source":"iana"},"application/vnd.osgeo.mapguide.package":{"source":"iana","extensions":["mgp"]},"application/vnd.osgi.bundle":{"source":"iana"},"application/vnd.osgi.dp":{"source":"iana","extensions":["dp"]},"application/vnd.osgi.subsystem":{"source":"iana","extensions":["esa"]},"application/vnd.otps.ct-kip+xml":{"source":"iana","compressible":true},"application/vnd.oxli.countgraph":{"source":"iana"},"application/vnd.pagerduty+json":{"source":"iana","compressible":true},"application/vnd.palm":{"source":"iana","extensions":["pdb","pqa","oprc"]},"application/vnd.panoply":{"source":"iana"},"application/vnd.paos.xml":{"source":"iana"},"application/vnd.patentdive":{"source":"iana"},"application/vnd.patientecommsdoc":{"source":"iana"},"application/vnd.pawaafile":{"source":"iana","extensions":["paw"]},"application/vnd.pcos":{"source":"iana"},"application/vnd.pg.format":{"source":"iana","extensions":["str"]},"application/vnd.pg.osasli":{"source":"iana","extensions":["ei6"]},"application/vnd.piaccess.application-licence":{"source":"iana"},"application/vnd.picsel":{"source":"iana","extensions":["efif"]},"application/vnd.pmi.widget":{"source":"iana","extensions":["wg"]},"application/vnd.poc.group-advertisement+xml":{"source":"iana","compressible":true},"application/vnd.pocketlearn":{"source":"iana","extensions":["plf"]},"application/vnd.powerbuilder6":{"source":"iana","extensions":["pbd"]},"application/vnd.powerbuilder6-s":{"source":"iana"},"application/vnd.powerbuilder7":{"source":"iana"},"application/vnd.powerbuilder7-s":{"source":"iana"},"application/vnd.powerbuilder75":{"source":"iana"},"application/vnd.powerbuilder75-s":{"source":"iana"},"application/vnd.preminet":{"source":"iana"},"application/vnd.previewsystems.box":{"source":"iana","extensions":["box"]},"application/vnd.proteus.magazine":{"source":"iana","extensions":["mgz"]},"application/vnd.psfs":{"source":"iana"},"application/vnd.publishare-delta-tree":{"source":"iana","extensions":["qps"]},"application/vnd.pvi.ptid1":{"source":"iana","extensions":["ptid"]},"application/vnd.pwg-multiplexed":{"source":"iana"},"application/vnd.pwg-xhtml-print+xml":{"source":"iana","compressible":true},"application/vnd.qualcomm.brew-app-res":{"source":"iana"},"application/vnd.quarantainenet":{"source":"iana"},"application/vnd.quark.quarkxpress":{"source":"iana","extensions":["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{"source":"iana"},"application/vnd.radisys.moml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conn+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-stream+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-base+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-detect+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-group+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-speech+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-transform+xml":{"source":"iana","compressible":true},"application/vnd.rainstor.data":{"source":"iana"},"application/vnd.rapid":{"source":"iana"},"application/vnd.rar":{"source":"iana","extensions":["rar"]},"application/vnd.realvnc.bed":{"source":"iana","extensions":["bed"]},"application/vnd.recordare.musicxml":{"source":"iana","extensions":["mxl"]},"application/vnd.recordare.musicxml+xml":{"source":"iana","compressible":true,"extensions":["musicxml"]},"application/vnd.renlearn.rlprint":{"source":"iana"},"application/vnd.resilient.logic":{"source":"iana"},"application/vnd.restful+json":{"source":"iana","compressible":true},"application/vnd.rig.cryptonote":{"source":"iana","extensions":["cryptonote"]},"application/vnd.rim.cod":{"source":"apache","extensions":["cod"]},"application/vnd.rn-realmedia":{"source":"apache","extensions":["rm"]},"application/vnd.rn-realmedia-vbr":{"source":"apache","extensions":["rmvb"]},"application/vnd.route66.link66+xml":{"source":"iana","compressible":true,"extensions":["link66"]},"application/vnd.rs-274x":{"source":"iana"},"application/vnd.ruckus.download":{"source":"iana"},"application/vnd.s3sms":{"source":"iana"},"application/vnd.sailingtracker.track":{"source":"iana","extensions":["st"]},"application/vnd.sar":{"source":"iana"},"application/vnd.sbm.cid":{"source":"iana"},"application/vnd.sbm.mid2":{"source":"iana"},"application/vnd.scribus":{"source":"iana"},"application/vnd.sealed.3df":{"source":"iana"},"application/vnd.sealed.csf":{"source":"iana"},"application/vnd.sealed.doc":{"source":"iana"},"application/vnd.sealed.eml":{"source":"iana"},"application/vnd.sealed.mht":{"source":"iana"},"application/vnd.sealed.net":{"source":"iana"},"application/vnd.sealed.ppt":{"source":"iana"},"application/vnd.sealed.tiff":{"source":"iana"},"application/vnd.sealed.xls":{"source":"iana"},"application/vnd.sealedmedia.softseal.html":{"source":"iana"},"application/vnd.sealedmedia.softseal.pdf":{"source":"iana"},"application/vnd.seemail":{"source":"iana","extensions":["see"]},"application/vnd.seis+json":{"source":"iana","compressible":true},"application/vnd.sema":{"source":"iana","extensions":["sema"]},"application/vnd.semd":{"source":"iana","extensions":["semd"]},"application/vnd.semf":{"source":"iana","extensions":["semf"]},"application/vnd.shade-save-file":{"source":"iana"},"application/vnd.shana.informed.formdata":{"source":"iana","extensions":["ifm"]},"application/vnd.shana.informed.formtemplate":{"source":"iana","extensions":["itp"]},"application/vnd.shana.informed.interchange":{"source":"iana","extensions":["iif"]},"application/vnd.shana.informed.package":{"source":"iana","extensions":["ipk"]},"application/vnd.shootproof+json":{"source":"iana","compressible":true},"application/vnd.shopkick+json":{"source":"iana","compressible":true},"application/vnd.shp":{"source":"iana"},"application/vnd.shx":{"source":"iana"},"application/vnd.sigrok.session":{"source":"iana"},"application/vnd.simtech-mindmapper":{"source":"iana","extensions":["twd","twds"]},"application/vnd.siren+json":{"source":"iana","compressible":true},"application/vnd.smaf":{"source":"iana","extensions":["mmf"]},"application/vnd.smart.notebook":{"source":"iana"},"application/vnd.smart.teacher":{"source":"iana","extensions":["teacher"]},"application/vnd.snesdev-page-table":{"source":"iana"},"application/vnd.software602.filler.form+xml":{"source":"iana","compressible":true,"extensions":["fo"]},"application/vnd.software602.filler.form-xml-zip":{"source":"iana"},"application/vnd.solent.sdkm+xml":{"source":"iana","compressible":true,"extensions":["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{"source":"iana","extensions":["dxp"]},"application/vnd.spotfire.sfs":{"source":"iana","extensions":["sfs"]},"application/vnd.sqlite3":{"source":"iana"},"application/vnd.sss-cod":{"source":"iana"},"application/vnd.sss-dtf":{"source":"iana"},"application/vnd.sss-ntf":{"source":"iana"},"application/vnd.stardivision.calc":{"source":"apache","extensions":["sdc"]},"application/vnd.stardivision.draw":{"source":"apache","extensions":["sda"]},"application/vnd.stardivision.impress":{"source":"apache","extensions":["sdd"]},"application/vnd.stardivision.math":{"source":"apache","extensions":["smf"]},"application/vnd.stardivision.writer":{"source":"apache","extensions":["sdw","vor"]},"application/vnd.stardivision.writer-global":{"source":"apache","extensions":["sgl"]},"application/vnd.stepmania.package":{"source":"iana","extensions":["smzip"]},"application/vnd.stepmania.stepchart":{"source":"iana","extensions":["sm"]},"application/vnd.street-stream":{"source":"iana"},"application/vnd.sun.wadl+xml":{"source":"iana","compressible":true,"extensions":["wadl"]},"application/vnd.sun.xml.calc":{"source":"apache","extensions":["sxc"]},"application/vnd.sun.xml.calc.template":{"source":"apache","extensions":["stc"]},"application/vnd.sun.xml.draw":{"source":"apache","extensions":["sxd"]},"application/vnd.sun.xml.draw.template":{"source":"apache","extensions":["std"]},"application/vnd.sun.xml.impress":{"source":"apache","extensions":["sxi"]},"application/vnd.sun.xml.impress.template":{"source":"apache","extensions":["sti"]},"application/vnd.sun.xml.math":{"source":"apache","extensions":["sxm"]},"application/vnd.sun.xml.writer":{"source":"apache","extensions":["sxw"]},"application/vnd.sun.xml.writer.global":{"source":"apache","extensions":["sxg"]},"application/vnd.sun.xml.writer.template":{"source":"apache","extensions":["stw"]},"application/vnd.sus-calendar":{"source":"iana","extensions":["sus","susp"]},"application/vnd.svd":{"source":"iana","extensions":["svd"]},"application/vnd.swiftview-ics":{"source":"iana"},"application/vnd.sycle+xml":{"source":"iana","compressible":true},"application/vnd.syft+json":{"source":"iana","compressible":true},"application/vnd.symbian.install":{"source":"apache","extensions":["sis","sisx"]},"application/vnd.syncml+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xsm"]},"application/vnd.syncml.dm+wbxml":{"source":"iana","charset":"UTF-8","extensions":["bdm"]},"application/vnd.syncml.dm+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xdm"]},"application/vnd.syncml.dm.notification":{"source":"iana"},"application/vnd.syncml.dmddf+wbxml":{"source":"iana"},"application/vnd.syncml.dmddf+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{"source":"iana"},"application/vnd.syncml.dmtnds+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.syncml.ds.notification":{"source":"iana"},"application/vnd.tableschema+json":{"source":"iana","compressible":true},"application/vnd.tao.intent-module-archive":{"source":"iana","extensions":["tao"]},"application/vnd.tcpdump.pcap":{"source":"iana","extensions":["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{"source":"iana","compressible":true},"application/vnd.tmd.mediaflex.api+xml":{"source":"iana","compressible":true},"application/vnd.tml":{"source":"iana"},"application/vnd.tmobile-livetv":{"source":"iana","extensions":["tmo"]},"application/vnd.tri.onesource":{"source":"iana"},"application/vnd.trid.tpt":{"source":"iana","extensions":["tpt"]},"application/vnd.triscape.mxs":{"source":"iana","extensions":["mxs"]},"application/vnd.trueapp":{"source":"iana","extensions":["tra"]},"application/vnd.truedoc":{"source":"iana"},"application/vnd.ubisoft.webplayer":{"source":"iana"},"application/vnd.ufdl":{"source":"iana","extensions":["ufd","ufdl"]},"application/vnd.uiq.theme":{"source":"iana","extensions":["utz"]},"application/vnd.umajin":{"source":"iana","extensions":["umj"]},"application/vnd.unity":{"source":"iana","extensions":["unityweb"]},"application/vnd.uoml+xml":{"source":"iana","compressible":true,"extensions":["uoml"]},"application/vnd.uplanet.alert":{"source":"iana"},"application/vnd.uplanet.alert-wbxml":{"source":"iana"},"application/vnd.uplanet.bearer-choice":{"source":"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{"source":"iana"},"application/vnd.uplanet.cacheop":{"source":"iana"},"application/vnd.uplanet.cacheop-wbxml":{"source":"iana"},"application/vnd.uplanet.channel":{"source":"iana"},"application/vnd.uplanet.channel-wbxml":{"source":"iana"},"application/vnd.uplanet.list":{"source":"iana"},"application/vnd.uplanet.list-wbxml":{"source":"iana"},"application/vnd.uplanet.listcmd":{"source":"iana"},"application/vnd.uplanet.listcmd-wbxml":{"source":"iana"},"application/vnd.uplanet.signal":{"source":"iana"},"application/vnd.uri-map":{"source":"iana"},"application/vnd.valve.source.material":{"source":"iana"},"application/vnd.vcx":{"source":"iana","extensions":["vcx"]},"application/vnd.vd-study":{"source":"iana"},"application/vnd.vectorworks":{"source":"iana"},"application/vnd.vel+json":{"source":"iana","compressible":true},"application/vnd.verimatrix.vcas":{"source":"iana"},"application/vnd.veritone.aion+json":{"source":"iana","compressible":true},"application/vnd.veryant.thin":{"source":"iana"},"application/vnd.ves.encrypted":{"source":"iana"},"application/vnd.vidsoft.vidconference":{"source":"iana"},"application/vnd.visio":{"source":"iana","extensions":["vsd","vst","vss","vsw"]},"application/vnd.visionary":{"source":"iana","extensions":["vis"]},"application/vnd.vividence.scriptfile":{"source":"iana"},"application/vnd.vsf":{"source":"iana","extensions":["vsf"]},"application/vnd.wap.sic":{"source":"iana"},"application/vnd.wap.slc":{"source":"iana"},"application/vnd.wap.wbxml":{"source":"iana","charset":"UTF-8","extensions":["wbxml"]},"application/vnd.wap.wmlc":{"source":"iana","extensions":["wmlc"]},"application/vnd.wap.wmlscriptc":{"source":"iana","extensions":["wmlsc"]},"application/vnd.webturbo":{"source":"iana","extensions":["wtb"]},"application/vnd.wfa.dpp":{"source":"iana"},"application/vnd.wfa.p2p":{"source":"iana"},"application/vnd.wfa.wsc":{"source":"iana"},"application/vnd.windows.devicepairing":{"source":"iana"},"application/vnd.wmc":{"source":"iana"},"application/vnd.wmf.bootstrap":{"source":"iana"},"application/vnd.wolfram.mathematica":{"source":"iana"},"application/vnd.wolfram.mathematica.package":{"source":"iana"},"application/vnd.wolfram.player":{"source":"iana","extensions":["nbp"]},"application/vnd.wordperfect":{"source":"iana","extensions":["wpd"]},"application/vnd.wqd":{"source":"iana","extensions":["wqd"]},"application/vnd.wrq-hp3000-labelled":{"source":"iana"},"application/vnd.wt.stf":{"source":"iana","extensions":["stf"]},"application/vnd.wv.csp+wbxml":{"source":"iana"},"application/vnd.wv.csp+xml":{"source":"iana","compressible":true},"application/vnd.wv.ssp+xml":{"source":"iana","compressible":true},"application/vnd.xacml+json":{"source":"iana","compressible":true},"application/vnd.xara":{"source":"iana","extensions":["xar"]},"application/vnd.xfdl":{"source":"iana","extensions":["xfdl"]},"application/vnd.xfdl.webform":{"source":"iana"},"application/vnd.xmi+xml":{"source":"iana","compressible":true},"application/vnd.xmpie.cpkg":{"source":"iana"},"application/vnd.xmpie.dpkg":{"source":"iana"},"application/vnd.xmpie.plan":{"source":"iana"},"application/vnd.xmpie.ppkg":{"source":"iana"},"application/vnd.xmpie.xlim":{"source":"iana"},"application/vnd.yamaha.hv-dic":{"source":"iana","extensions":["hvd"]},"application/vnd.yamaha.hv-script":{"source":"iana","extensions":["hvs"]},"application/vnd.yamaha.hv-voice":{"source":"iana","extensions":["hvp"]},"application/vnd.yamaha.openscoreformat":{"source":"iana","extensions":["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{"source":"iana","compressible":true,"extensions":["osfpvg"]},"application/vnd.yamaha.remote-setup":{"source":"iana"},"application/vnd.yamaha.smaf-audio":{"source":"iana","extensions":["saf"]},"application/vnd.yamaha.smaf-phrase":{"source":"iana","extensions":["spf"]},"application/vnd.yamaha.through-ngn":{"source":"iana"},"application/vnd.yamaha.tunnel-udpencap":{"source":"iana"},"application/vnd.yaoweme":{"source":"iana"},"application/vnd.yellowriver-custom-menu":{"source":"iana","extensions":["cmp"]},"application/vnd.youtube.yt":{"source":"iana"},"application/vnd.zul":{"source":"iana","extensions":["zir","zirz"]},"application/vnd.zzazz.deck+xml":{"source":"iana","compressible":true,"extensions":["zaz"]},"application/voicexml+xml":{"source":"iana","compressible":true,"extensions":["vxml"]},"application/voucher-cms+json":{"source":"iana","compressible":true},"application/vq-rtcpxr":{"source":"iana"},"application/wasm":{"source":"iana","compressible":true,"extensions":["wasm"]},"application/watcherinfo+xml":{"source":"iana","compressible":true,"extensions":["wif"]},"application/webpush-options+json":{"source":"iana","compressible":true},"application/whoispp-query":{"source":"iana"},"application/whoispp-response":{"source":"iana"},"application/widget":{"source":"iana","extensions":["wgt"]},"application/winhlp":{"source":"apache","extensions":["hlp"]},"application/wita":{"source":"iana"},"application/wordperfect5.1":{"source":"iana"},"application/wsdl+xml":{"source":"iana","compressible":true,"extensions":["wsdl"]},"application/wspolicy+xml":{"source":"iana","compressible":true,"extensions":["wspolicy"]},"application/x-7z-compressed":{"source":"apache","compressible":false,"extensions":["7z"]},"application/x-abiword":{"source":"apache","extensions":["abw"]},"application/x-ace-compressed":{"source":"apache","extensions":["ace"]},"application/x-amf":{"source":"apache"},"application/x-apple-diskimage":{"source":"apache","extensions":["dmg"]},"application/x-arj":{"compressible":false,"extensions":["arj"]},"application/x-authorware-bin":{"source":"apache","extensions":["aab","x32","u32","vox"]},"application/x-authorware-map":{"source":"apache","extensions":["aam"]},"application/x-authorware-seg":{"source":"apache","extensions":["aas"]},"application/x-bcpio":{"source":"apache","extensions":["bcpio"]},"application/x-bdoc":{"compressible":false,"extensions":["bdoc"]},"application/x-bittorrent":{"source":"apache","extensions":["torrent"]},"application/x-blorb":{"source":"apache","extensions":["blb","blorb"]},"application/x-bzip":{"source":"apache","compressible":false,"extensions":["bz"]},"application/x-bzip2":{"source":"apache","compressible":false,"extensions":["bz2","boz"]},"application/x-cbr":{"source":"apache","extensions":["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{"source":"apache","extensions":["vcd"]},"application/x-cfs-compressed":{"source":"apache","extensions":["cfs"]},"application/x-chat":{"source":"apache","extensions":["chat"]},"application/x-chess-pgn":{"source":"apache","extensions":["pgn"]},"application/x-chrome-extension":{"extensions":["crx"]},"application/x-cocoa":{"source":"nginx","extensions":["cco"]},"application/x-compress":{"source":"apache"},"application/x-conference":{"source":"apache","extensions":["nsc"]},"application/x-cpio":{"source":"apache","extensions":["cpio"]},"application/x-csh":{"source":"apache","extensions":["csh"]},"application/x-deb":{"compressible":false},"application/x-debian-package":{"source":"apache","extensions":["deb","udeb"]},"application/x-dgc-compressed":{"source":"apache","extensions":["dgc"]},"application/x-director":{"source":"apache","extensions":["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{"source":"apache","extensions":["wad"]},"application/x-dtbncx+xml":{"source":"apache","compressible":true,"extensions":["ncx"]},"application/x-dtbook+xml":{"source":"apache","compressible":true,"extensions":["dtb"]},"application/x-dtbresource+xml":{"source":"apache","compressible":true,"extensions":["res"]},"application/x-dvi":{"source":"apache","compressible":false,"extensions":["dvi"]},"application/x-envoy":{"source":"apache","extensions":["evy"]},"application/x-eva":{"source":"apache","extensions":["eva"]},"application/x-font-bdf":{"source":"apache","extensions":["bdf"]},"application/x-font-dos":{"source":"apache"},"application/x-font-framemaker":{"source":"apache"},"application/x-font-ghostscript":{"source":"apache","extensions":["gsf"]},"application/x-font-libgrx":{"source":"apache"},"application/x-font-linux-psf":{"source":"apache","extensions":["psf"]},"application/x-font-pcf":{"source":"apache","extensions":["pcf"]},"application/x-font-snf":{"source":"apache","extensions":["snf"]},"application/x-font-speedo":{"source":"apache"},"application/x-font-sunos-news":{"source":"apache"},"application/x-font-type1":{"source":"apache","extensions":["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{"source":"apache"},"application/x-freearc":{"source":"apache","extensions":["arc"]},"application/x-futuresplash":{"source":"apache","extensions":["spl"]},"application/x-gca-compressed":{"source":"apache","extensions":["gca"]},"application/x-glulx":{"source":"apache","extensions":["ulx"]},"application/x-gnumeric":{"source":"apache","extensions":["gnumeric"]},"application/x-gramps-xml":{"source":"apache","extensions":["gramps"]},"application/x-gtar":{"source":"apache","extensions":["gtar"]},"application/x-gzip":{"source":"apache"},"application/x-hdf":{"source":"apache","extensions":["hdf"]},"application/x-httpd-php":{"compressible":true,"extensions":["php"]},"application/x-install-instructions":{"source":"apache","extensions":["install"]},"application/x-iso9660-image":{"source":"apache","extensions":["iso"]},"application/x-iwork-keynote-sffkey":{"extensions":["key"]},"application/x-iwork-numbers-sffnumbers":{"extensions":["numbers"]},"application/x-iwork-pages-sffpages":{"extensions":["pages"]},"application/x-java-archive-diff":{"source":"nginx","extensions":["jardiff"]},"application/x-java-jnlp-file":{"source":"apache","compressible":false,"extensions":["jnlp"]},"application/x-javascript":{"compressible":true},"application/x-keepass2":{"extensions":["kdbx"]},"application/x-latex":{"source":"apache","compressible":false,"extensions":["latex"]},"application/x-lua-bytecode":{"extensions":["luac"]},"application/x-lzh-compressed":{"source":"apache","extensions":["lzh","lha"]},"application/x-makeself":{"source":"nginx","extensions":["run"]},"application/x-mie":{"source":"apache","extensions":["mie"]},"application/x-mobipocket-ebook":{"source":"apache","extensions":["prc","mobi"]},"application/x-mpegurl":{"compressible":false},"application/x-ms-application":{"source":"apache","extensions":["application"]},"application/x-ms-shortcut":{"source":"apache","extensions":["lnk"]},"application/x-ms-wmd":{"source":"apache","extensions":["wmd"]},"application/x-ms-wmz":{"source":"apache","extensions":["wmz"]},"application/x-ms-xbap":{"source":"apache","extensions":["xbap"]},"application/x-msaccess":{"source":"apache","extensions":["mdb"]},"application/x-msbinder":{"source":"apache","extensions":["obd"]},"application/x-mscardfile":{"source":"apache","extensions":["crd"]},"application/x-msclip":{"source":"apache","extensions":["clp"]},"application/x-msdos-program":{"extensions":["exe"]},"application/x-msdownload":{"source":"apache","extensions":["exe","dll","com","bat","msi"]},"application/x-msmediaview":{"source":"apache","extensions":["mvb","m13","m14"]},"application/x-msmetafile":{"source":"apache","extensions":["wmf","wmz","emf","emz"]},"application/x-msmoney":{"source":"apache","extensions":["mny"]},"application/x-mspublisher":{"source":"apache","extensions":["pub"]},"application/x-msschedule":{"source":"apache","extensions":["scd"]},"application/x-msterminal":{"source":"apache","extensions":["trm"]},"application/x-mswrite":{"source":"apache","extensions":["wri"]},"application/x-netcdf":{"source":"apache","extensions":["nc","cdf"]},"application/x-ns-proxy-autoconfig":{"compressible":true,"extensions":["pac"]},"application/x-nzb":{"source":"apache","extensions":["nzb"]},"application/x-perl":{"source":"nginx","extensions":["pl","pm"]},"application/x-pilot":{"source":"nginx","extensions":["prc","pdb"]},"application/x-pkcs12":{"source":"apache","compressible":false,"extensions":["p12","pfx"]},"application/x-pkcs7-certificates":{"source":"apache","extensions":["p7b","spc"]},"application/x-pkcs7-certreqresp":{"source":"apache","extensions":["p7r"]},"application/x-pki-message":{"source":"iana"},"application/x-rar-compressed":{"source":"apache","compressible":false,"extensions":["rar"]},"application/x-redhat-package-manager":{"source":"nginx","extensions":["rpm"]},"application/x-research-info-systems":{"source":"apache","extensions":["ris"]},"application/x-sea":{"source":"nginx","extensions":["sea"]},"application/x-sh":{"source":"apache","compressible":true,"extensions":["sh"]},"application/x-shar":{"source":"apache","extensions":["shar"]},"application/x-shockwave-flash":{"source":"apache","compressible":false,"extensions":["swf"]},"application/x-silverlight-app":{"source":"apache","extensions":["xap"]},"application/x-sql":{"source":"apache","extensions":["sql"]},"application/x-stuffit":{"source":"apache","compressible":false,"extensions":["sit"]},"application/x-stuffitx":{"source":"apache","extensions":["sitx"]},"application/x-subrip":{"source":"apache","extensions":["srt"]},"application/x-sv4cpio":{"source":"apache","extensions":["sv4cpio"]},"application/x-sv4crc":{"source":"apache","extensions":["sv4crc"]},"application/x-t3vm-image":{"source":"apache","extensions":["t3"]},"application/x-tads":{"source":"apache","extensions":["gam"]},"application/x-tar":{"source":"apache","compressible":true,"extensions":["tar"]},"application/x-tcl":{"source":"apache","extensions":["tcl","tk"]},"application/x-tex":{"source":"apache","extensions":["tex"]},"application/x-tex-tfm":{"source":"apache","extensions":["tfm"]},"application/x-texinfo":{"source":"apache","extensions":["texinfo","texi"]},"application/x-tgif":{"source":"apache","extensions":["obj"]},"application/x-ustar":{"source":"apache","extensions":["ustar"]},"application/x-virtualbox-hdd":{"compressible":true,"extensions":["hdd"]},"application/x-virtualbox-ova":{"compressible":true,"extensions":["ova"]},"application/x-virtualbox-ovf":{"compressible":true,"extensions":["ovf"]},"application/x-virtualbox-vbox":{"compressible":true,"extensions":["vbox"]},"application/x-virtualbox-vbox-extpack":{"compressible":false,"extensions":["vbox-extpack"]},"application/x-virtualbox-vdi":{"compressible":true,"extensions":["vdi"]},"application/x-virtualbox-vhd":{"compressible":true,"extensions":["vhd"]},"application/x-virtualbox-vmdk":{"compressible":true,"extensions":["vmdk"]},"application/x-wais-source":{"source":"apache","extensions":["src"]},"application/x-web-app-manifest+json":{"compressible":true,"extensions":["webapp"]},"application/x-www-form-urlencoded":{"source":"iana","compressible":true},"application/x-x509-ca-cert":{"source":"iana","extensions":["der","crt","pem"]},"application/x-x509-ca-ra-cert":{"source":"iana"},"application/x-x509-next-ca-cert":{"source":"iana"},"application/x-xfig":{"source":"apache","extensions":["fig"]},"application/x-xliff+xml":{"source":"apache","compressible":true,"extensions":["xlf"]},"application/x-xpinstall":{"source":"apache","compressible":false,"extensions":["xpi"]},"application/x-xz":{"source":"apache","extensions":["xz"]},"application/x-zmachine":{"source":"apache","extensions":["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{"source":"iana"},"application/xacml+xml":{"source":"iana","compressible":true},"application/xaml+xml":{"source":"apache","compressible":true,"extensions":["xaml"]},"application/xcap-att+xml":{"source":"iana","compressible":true,"extensions":["xav"]},"application/xcap-caps+xml":{"source":"iana","compressible":true,"extensions":["xca"]},"application/xcap-diff+xml":{"source":"iana","compressible":true,"extensions":["xdf"]},"application/xcap-el+xml":{"source":"iana","compressible":true,"extensions":["xel"]},"application/xcap-error+xml":{"source":"iana","compressible":true},"application/xcap-ns+xml":{"source":"iana","compressible":true,"extensions":["xns"]},"application/xcon-conference-info+xml":{"source":"iana","compressible":true},"application/xcon-conference-info-diff+xml":{"source":"iana","compressible":true},"application/xenc+xml":{"source":"iana","compressible":true,"extensions":["xenc"]},"application/xhtml+xml":{"source":"iana","compressible":true,"extensions":["xhtml","xht"]},"application/xhtml-voice+xml":{"source":"apache","compressible":true},"application/xliff+xml":{"source":"iana","compressible":true,"extensions":["xlf"]},"application/xml":{"source":"iana","compressible":true,"extensions":["xml","xsl","xsd","rng"]},"application/xml-dtd":{"source":"iana","compressible":true,"extensions":["dtd"]},"application/xml-external-parsed-entity":{"source":"iana"},"application/xml-patch+xml":{"source":"iana","compressible":true},"application/xmpp+xml":{"source":"iana","compressible":true},"application/xop+xml":{"source":"iana","compressible":true,"extensions":["xop"]},"application/xproc+xml":{"source":"apache","compressible":true,"extensions":["xpl"]},"application/xslt+xml":{"source":"iana","compressible":true,"extensions":["xsl","xslt"]},"application/xspf+xml":{"source":"apache","compressible":true,"extensions":["xspf"]},"application/xv+xml":{"source":"iana","compressible":true,"extensions":["mxml","xhvml","xvml","xvm"]},"application/yang":{"source":"iana","extensions":["yang"]},"application/yang-data+json":{"source":"iana","compressible":true},"application/yang-data+xml":{"source":"iana","compressible":true},"application/yang-patch+json":{"source":"iana","compressible":true},"application/yang-patch+xml":{"source":"iana","compressible":true},"application/yin+xml":{"source":"iana","compressible":true,"extensions":["yin"]},"application/zip":{"source":"iana","compressible":false,"extensions":["zip"]},"application/zlib":{"source":"iana"},"application/zstd":{"source":"iana"},"audio/1d-interleaved-parityfec":{"source":"iana"},"audio/32kadpcm":{"source":"iana"},"audio/3gpp":{"source":"iana","compressible":false,"extensions":["3gpp"]},"audio/3gpp2":{"source":"iana"},"audio/aac":{"source":"iana"},"audio/ac3":{"source":"iana"},"audio/adpcm":{"source":"apache","extensions":["adp"]},"audio/amr":{"source":"iana","extensions":["amr"]},"audio/amr-wb":{"source":"iana"},"audio/amr-wb+":{"source":"iana"},"audio/aptx":{"source":"iana"},"audio/asc":{"source":"iana"},"audio/atrac-advanced-lossless":{"source":"iana"},"audio/atrac-x":{"source":"iana"},"audio/atrac3":{"source":"iana"},"audio/basic":{"source":"iana","compressible":false,"extensions":["au","snd"]},"audio/bv16":{"source":"iana"},"audio/bv32":{"source":"iana"},"audio/clearmode":{"source":"iana"},"audio/cn":{"source":"iana"},"audio/dat12":{"source":"iana"},"audio/dls":{"source":"iana"},"audio/dsr-es201108":{"source":"iana"},"audio/dsr-es202050":{"source":"iana"},"audio/dsr-es202211":{"source":"iana"},"audio/dsr-es202212":{"source":"iana"},"audio/dv":{"source":"iana"},"audio/dvi4":{"source":"iana"},"audio/eac3":{"source":"iana"},"audio/encaprtp":{"source":"iana"},"audio/evrc":{"source":"iana"},"audio/evrc-qcp":{"source":"iana"},"audio/evrc0":{"source":"iana"},"audio/evrc1":{"source":"iana"},"audio/evrcb":{"source":"iana"},"audio/evrcb0":{"source":"iana"},"audio/evrcb1":{"source":"iana"},"audio/evrcnw":{"source":"iana"},"audio/evrcnw0":{"source":"iana"},"audio/evrcnw1":{"source":"iana"},"audio/evrcwb":{"source":"iana"},"audio/evrcwb0":{"source":"iana"},"audio/evrcwb1":{"source":"iana"},"audio/evs":{"source":"iana"},"audio/flexfec":{"source":"iana"},"audio/fwdred":{"source":"iana"},"audio/g711-0":{"source":"iana"},"audio/g719":{"source":"iana"},"audio/g722":{"source":"iana"},"audio/g7221":{"source":"iana"},"audio/g723":{"source":"iana"},"audio/g726-16":{"source":"iana"},"audio/g726-24":{"source":"iana"},"audio/g726-32":{"source":"iana"},"audio/g726-40":{"source":"iana"},"audio/g728":{"source":"iana"},"audio/g729":{"source":"iana"},"audio/g7291":{"source":"iana"},"audio/g729d":{"source":"iana"},"audio/g729e":{"source":"iana"},"audio/gsm":{"source":"iana"},"audio/gsm-efr":{"source":"iana"},"audio/gsm-hr-08":{"source":"iana"},"audio/ilbc":{"source":"iana"},"audio/ip-mr_v2.5":{"source":"iana"},"audio/isac":{"source":"apache"},"audio/l16":{"source":"iana"},"audio/l20":{"source":"iana"},"audio/l24":{"source":"iana","compressible":false},"audio/l8":{"source":"iana"},"audio/lpc":{"source":"iana"},"audio/melp":{"source":"iana"},"audio/melp1200":{"source":"iana"},"audio/melp2400":{"source":"iana"},"audio/melp600":{"source":"iana"},"audio/mhas":{"source":"iana"},"audio/midi":{"source":"apache","extensions":["mid","midi","kar","rmi"]},"audio/mobile-xmf":{"source":"iana","extensions":["mxmf"]},"audio/mp3":{"compressible":false,"extensions":["mp3"]},"audio/mp4":{"source":"iana","compressible":false,"extensions":["m4a","mp4a"]},"audio/mp4a-latm":{"source":"iana"},"audio/mpa":{"source":"iana"},"audio/mpa-robust":{"source":"iana"},"audio/mpeg":{"source":"iana","compressible":false,"extensions":["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{"source":"iana"},"audio/musepack":{"source":"apache"},"audio/ogg":{"source":"iana","compressible":false,"extensions":["oga","ogg","spx","opus"]},"audio/opus":{"source":"iana"},"audio/parityfec":{"source":"iana"},"audio/pcma":{"source":"iana"},"audio/pcma-wb":{"source":"iana"},"audio/pcmu":{"source":"iana"},"audio/pcmu-wb":{"source":"iana"},"audio/prs.sid":{"source":"iana"},"audio/qcelp":{"source":"iana"},"audio/raptorfec":{"source":"iana"},"audio/red":{"source":"iana"},"audio/rtp-enc-aescm128":{"source":"iana"},"audio/rtp-midi":{"source":"iana"},"audio/rtploopback":{"source":"iana"},"audio/rtx":{"source":"iana"},"audio/s3m":{"source":"apache","extensions":["s3m"]},"audio/scip":{"source":"iana"},"audio/silk":{"source":"apache","extensions":["sil"]},"audio/smv":{"source":"iana"},"audio/smv-qcp":{"source":"iana"},"audio/smv0":{"source":"iana"},"audio/sofa":{"source":"iana"},"audio/sp-midi":{"source":"iana"},"audio/speex":{"source":"iana"},"audio/t140c":{"source":"iana"},"audio/t38":{"source":"iana"},"audio/telephone-event":{"source":"iana"},"audio/tetra_acelp":{"source":"iana"},"audio/tetra_acelp_bb":{"source":"iana"},"audio/tone":{"source":"iana"},"audio/tsvcis":{"source":"iana"},"audio/uemclip":{"source":"iana"},"audio/ulpfec":{"source":"iana"},"audio/usac":{"source":"iana"},"audio/vdvi":{"source":"iana"},"audio/vmr-wb":{"source":"iana"},"audio/vnd.3gpp.iufp":{"source":"iana"},"audio/vnd.4sb":{"source":"iana"},"audio/vnd.audiokoz":{"source":"iana"},"audio/vnd.celp":{"source":"iana"},"audio/vnd.cisco.nse":{"source":"iana"},"audio/vnd.cmles.radio-events":{"source":"iana"},"audio/vnd.cns.anp1":{"source":"iana"},"audio/vnd.cns.inf1":{"source":"iana"},"audio/vnd.dece.audio":{"source":"iana","extensions":["uva","uvva"]},"audio/vnd.digital-winds":{"source":"iana","extensions":["eol"]},"audio/vnd.dlna.adts":{"source":"iana"},"audio/vnd.dolby.heaac.1":{"source":"iana"},"audio/vnd.dolby.heaac.2":{"source":"iana"},"audio/vnd.dolby.mlp":{"source":"iana"},"audio/vnd.dolby.mps":{"source":"iana"},"audio/vnd.dolby.pl2":{"source":"iana"},"audio/vnd.dolby.pl2x":{"source":"iana"},"audio/vnd.dolby.pl2z":{"source":"iana"},"audio/vnd.dolby.pulse.1":{"source":"iana"},"audio/vnd.dra":{"source":"iana","extensions":["dra"]},"audio/vnd.dts":{"source":"iana","extensions":["dts"]},"audio/vnd.dts.hd":{"source":"iana","extensions":["dtshd"]},"audio/vnd.dts.uhd":{"source":"iana"},"audio/vnd.dvb.file":{"source":"iana"},"audio/vnd.everad.plj":{"source":"iana"},"audio/vnd.hns.audio":{"source":"iana"},"audio/vnd.lucent.voice":{"source":"iana","extensions":["lvp"]},"audio/vnd.ms-playready.media.pya":{"source":"iana","extensions":["pya"]},"audio/vnd.nokia.mobile-xmf":{"source":"iana"},"audio/vnd.nortel.vbk":{"source":"iana"},"audio/vnd.nuera.ecelp4800":{"source":"iana","extensions":["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{"source":"iana","extensions":["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{"source":"iana","extensions":["ecelp9600"]},"audio/vnd.octel.sbc":{"source":"iana"},"audio/vnd.presonus.multitrack":{"source":"iana"},"audio/vnd.qcelp":{"source":"iana"},"audio/vnd.rhetorex.32kadpcm":{"source":"iana"},"audio/vnd.rip":{"source":"iana","extensions":["rip"]},"audio/vnd.rn-realaudio":{"compressible":false},"audio/vnd.sealedmedia.softseal.mpeg":{"source":"iana"},"audio/vnd.vmx.cvsd":{"source":"iana"},"audio/vnd.wave":{"compressible":false},"audio/vorbis":{"source":"iana","compressible":false},"audio/vorbis-config":{"source":"iana"},"audio/wav":{"compressible":false,"extensions":["wav"]},"audio/wave":{"compressible":false,"extensions":["wav"]},"audio/webm":{"source":"apache","compressible":false,"extensions":["weba"]},"audio/x-aac":{"source":"apache","compressible":false,"extensions":["aac"]},"audio/x-aiff":{"source":"apache","extensions":["aif","aiff","aifc"]},"audio/x-caf":{"source":"apache","compressible":false,"extensions":["caf"]},"audio/x-flac":{"source":"apache","extensions":["flac"]},"audio/x-m4a":{"source":"nginx","extensions":["m4a"]},"audio/x-matroska":{"source":"apache","extensions":["mka"]},"audio/x-mpegurl":{"source":"apache","extensions":["m3u"]},"audio/x-ms-wax":{"source":"apache","extensions":["wax"]},"audio/x-ms-wma":{"source":"apache","extensions":["wma"]},"audio/x-pn-realaudio":{"source":"apache","extensions":["ram","ra"]},"audio/x-pn-realaudio-plugin":{"source":"apache","extensions":["rmp"]},"audio/x-realaudio":{"source":"nginx","extensions":["ra"]},"audio/x-tta":{"source":"apache"},"audio/x-wav":{"source":"apache","extensions":["wav"]},"audio/xm":{"source":"apache","extensions":["xm"]},"chemical/x-cdx":{"source":"apache","extensions":["cdx"]},"chemical/x-cif":{"source":"apache","extensions":["cif"]},"chemical/x-cmdf":{"source":"apache","extensions":["cmdf"]},"chemical/x-cml":{"source":"apache","extensions":["cml"]},"chemical/x-csml":{"source":"apache","extensions":["csml"]},"chemical/x-pdb":{"source":"apache"},"chemical/x-xyz":{"source":"apache","extensions":["xyz"]},"font/collection":{"source":"iana","extensions":["ttc"]},"font/otf":{"source":"iana","compressible":true,"extensions":["otf"]},"font/sfnt":{"source":"iana"},"font/ttf":{"source":"iana","compressible":true,"extensions":["ttf"]},"font/woff":{"source":"iana","extensions":["woff"]},"font/woff2":{"source":"iana","extensions":["woff2"]},"image/aces":{"source":"iana","extensions":["exr"]},"image/apng":{"compressible":false,"extensions":["apng"]},"image/avci":{"source":"iana","extensions":["avci"]},"image/avcs":{"source":"iana","extensions":["avcs"]},"image/avif":{"source":"iana","compressible":false,"extensions":["avif"]},"image/bmp":{"source":"iana","compressible":true,"extensions":["bmp"]},"image/cgm":{"source":"iana","extensions":["cgm"]},"image/dicom-rle":{"source":"iana","extensions":["drle"]},"image/emf":{"source":"iana","extensions":["emf"]},"image/fits":{"source":"iana","extensions":["fits"]},"image/g3fax":{"source":"iana","extensions":["g3"]},"image/gif":{"source":"iana","compressible":false,"extensions":["gif"]},"image/heic":{"source":"iana","extensions":["heic"]},"image/heic-sequence":{"source":"iana","extensions":["heics"]},"image/heif":{"source":"iana","extensions":["heif"]},"image/heif-sequence":{"source":"iana","extensions":["heifs"]},"image/hej2k":{"source":"iana","extensions":["hej2"]},"image/hsj2":{"source":"iana","extensions":["hsj2"]},"image/ief":{"source":"iana","extensions":["ief"]},"image/jls":{"source":"iana","extensions":["jls"]},"image/jp2":{"source":"iana","compressible":false,"extensions":["jp2","jpg2"]},"image/jpeg":{"source":"iana","compressible":false,"extensions":["jpeg","jpg","jpe"]},"image/jph":{"source":"iana","extensions":["jph"]},"image/jphc":{"source":"iana","extensions":["jhc"]},"image/jpm":{"source":"iana","compressible":false,"extensions":["jpm"]},"image/jpx":{"source":"iana","compressible":false,"extensions":["jpx","jpf"]},"image/jxr":{"source":"iana","extensions":["jxr"]},"image/jxra":{"source":"iana","extensions":["jxra"]},"image/jxrs":{"source":"iana","extensions":["jxrs"]},"image/jxs":{"source":"iana","extensions":["jxs"]},"image/jxsc":{"source":"iana","extensions":["jxsc"]},"image/jxsi":{"source":"iana","extensions":["jxsi"]},"image/jxss":{"source":"iana","extensions":["jxss"]},"image/ktx":{"source":"iana","extensions":["ktx"]},"image/ktx2":{"source":"iana","extensions":["ktx2"]},"image/naplps":{"source":"iana"},"image/pjpeg":{"compressible":false},"image/png":{"source":"iana","compressible":false,"extensions":["png"]},"image/prs.btif":{"source":"iana","extensions":["btif"]},"image/prs.pti":{"source":"iana","extensions":["pti"]},"image/pwg-raster":{"source":"iana"},"image/sgi":{"source":"apache","extensions":["sgi"]},"image/svg+xml":{"source":"iana","compressible":true,"extensions":["svg","svgz"]},"image/t38":{"source":"iana","extensions":["t38"]},"image/tiff":{"source":"iana","compressible":false,"extensions":["tif","tiff"]},"image/tiff-fx":{"source":"iana","extensions":["tfx"]},"image/vnd.adobe.photoshop":{"source":"iana","compressible":true,"extensions":["psd"]},"image/vnd.airzip.accelerator.azv":{"source":"iana","extensions":["azv"]},"image/vnd.cns.inf2":{"source":"iana"},"image/vnd.dece.graphic":{"source":"iana","extensions":["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{"source":"iana","extensions":["djvu","djv"]},"image/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"image/vnd.dwg":{"source":"iana","extensions":["dwg"]},"image/vnd.dxf":{"source":"iana","extensions":["dxf"]},"image/vnd.fastbidsheet":{"source":"iana","extensions":["fbs"]},"image/vnd.fpx":{"source":"iana","extensions":["fpx"]},"image/vnd.fst":{"source":"iana","extensions":["fst"]},"image/vnd.fujixerox.edmics-mmr":{"source":"iana","extensions":["mmr"]},"image/vnd.fujixerox.edmics-rlc":{"source":"iana","extensions":["rlc"]},"image/vnd.globalgraphics.pgb":{"source":"iana"},"image/vnd.microsoft.icon":{"source":"iana","compressible":true,"extensions":["ico"]},"image/vnd.mix":{"source":"iana"},"image/vnd.mozilla.apng":{"source":"iana"},"image/vnd.ms-dds":{"compressible":true,"extensions":["dds"]},"image/vnd.ms-modi":{"source":"iana","extensions":["mdi"]},"image/vnd.ms-photo":{"source":"apache","extensions":["wdp"]},"image/vnd.net-fpx":{"source":"iana","extensions":["npx"]},"image/vnd.pco.b16":{"source":"iana","extensions":["b16"]},"image/vnd.radiance":{"source":"iana"},"image/vnd.sealed.png":{"source":"iana"},"image/vnd.sealedmedia.softseal.gif":{"source":"iana"},"image/vnd.sealedmedia.softseal.jpg":{"source":"iana"},"image/vnd.svf":{"source":"iana"},"image/vnd.tencent.tap":{"source":"iana","extensions":["tap"]},"image/vnd.valve.source.texture":{"source":"iana","extensions":["vtf"]},"image/vnd.wap.wbmp":{"source":"iana","extensions":["wbmp"]},"image/vnd.xiff":{"source":"iana","extensions":["xif"]},"image/vnd.zbrush.pcx":{"source":"iana","extensions":["pcx"]},"image/webp":{"source":"apache","extensions":["webp"]},"image/wmf":{"source":"iana","extensions":["wmf"]},"image/x-3ds":{"source":"apache","extensions":["3ds"]},"image/x-cmu-raster":{"source":"apache","extensions":["ras"]},"image/x-cmx":{"source":"apache","extensions":["cmx"]},"image/x-freehand":{"source":"apache","extensions":["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{"source":"apache","compressible":true,"extensions":["ico"]},"image/x-jng":{"source":"nginx","extensions":["jng"]},"image/x-mrsid-image":{"source":"apache","extensions":["sid"]},"image/x-ms-bmp":{"source":"nginx","compressible":true,"extensions":["bmp"]},"image/x-pcx":{"source":"apache","extensions":["pcx"]},"image/x-pict":{"source":"apache","extensions":["pic","pct"]},"image/x-portable-anymap":{"source":"apache","extensions":["pnm"]},"image/x-portable-bitmap":{"source":"apache","extensions":["pbm"]},"image/x-portable-graymap":{"source":"apache","extensions":["pgm"]},"image/x-portable-pixmap":{"source":"apache","extensions":["ppm"]},"image/x-rgb":{"source":"apache","extensions":["rgb"]},"image/x-tga":{"source":"apache","extensions":["tga"]},"image/x-xbitmap":{"source":"apache","extensions":["xbm"]},"image/x-xcf":{"compressible":false},"image/x-xpixmap":{"source":"apache","extensions":["xpm"]},"image/x-xwindowdump":{"source":"apache","extensions":["xwd"]},"message/cpim":{"source":"iana"},"message/delivery-status":{"source":"iana"},"message/disposition-notification":{"source":"iana","extensions":["disposition-notification"]},"message/external-body":{"source":"iana"},"message/feedback-report":{"source":"iana"},"message/global":{"source":"iana","extensions":["u8msg"]},"message/global-delivery-status":{"source":"iana","extensions":["u8dsn"]},"message/global-disposition-notification":{"source":"iana","extensions":["u8mdn"]},"message/global-headers":{"source":"iana","extensions":["u8hdr"]},"message/http":{"source":"iana","compressible":false},"message/imdn+xml":{"source":"iana","compressible":true},"message/news":{"source":"iana"},"message/partial":{"source":"iana","compressible":false},"message/rfc822":{"source":"iana","compressible":true,"extensions":["eml","mime"]},"message/s-http":{"source":"iana"},"message/sip":{"source":"iana"},"message/sipfrag":{"source":"iana"},"message/tracking-status":{"source":"iana"},"message/vnd.si.simp":{"source":"iana"},"message/vnd.wfa.wsc":{"source":"iana","extensions":["wsc"]},"model/3mf":{"source":"iana","extensions":["3mf"]},"model/e57":{"source":"iana"},"model/gltf+json":{"source":"iana","compressible":true,"extensions":["gltf"]},"model/gltf-binary":{"source":"iana","compressible":true,"extensions":["glb"]},"model/iges":{"source":"iana","compressible":false,"extensions":["igs","iges"]},"model/mesh":{"source":"iana","compressible":false,"extensions":["msh","mesh","silo"]},"model/mtl":{"source":"iana","extensions":["mtl"]},"model/obj":{"source":"iana","extensions":["obj"]},"model/step":{"source":"iana"},"model/step+xml":{"source":"iana","compressible":true,"extensions":["stpx"]},"model/step+zip":{"source":"iana","compressible":false,"extensions":["stpz"]},"model/step-xml+zip":{"source":"iana","compressible":false,"extensions":["stpxz"]},"model/stl":{"source":"iana","extensions":["stl"]},"model/vnd.collada+xml":{"source":"iana","compressible":true,"extensions":["dae"]},"model/vnd.dwf":{"source":"iana","extensions":["dwf"]},"model/vnd.flatland.3dml":{"source":"iana"},"model/vnd.gdl":{"source":"iana","extensions":["gdl"]},"model/vnd.gs-gdl":{"source":"apache"},"model/vnd.gs.gdl":{"source":"iana"},"model/vnd.gtw":{"source":"iana","extensions":["gtw"]},"model/vnd.moml+xml":{"source":"iana","compressible":true},"model/vnd.mts":{"source":"iana","extensions":["mts"]},"model/vnd.opengex":{"source":"iana","extensions":["ogex"]},"model/vnd.parasolid.transmit.binary":{"source":"iana","extensions":["x_b"]},"model/vnd.parasolid.transmit.text":{"source":"iana","extensions":["x_t"]},"model/vnd.pytha.pyox":{"source":"iana"},"model/vnd.rosette.annotated-data-model":{"source":"iana"},"model/vnd.sap.vds":{"source":"iana","extensions":["vds"]},"model/vnd.usdz+zip":{"source":"iana","compressible":false,"extensions":["usdz"]},"model/vnd.valve.source.compiled-map":{"source":"iana","extensions":["bsp"]},"model/vnd.vtu":{"source":"iana","extensions":["vtu"]},"model/vrml":{"source":"iana","compressible":false,"extensions":["wrl","vrml"]},"model/x3d+binary":{"source":"apache","compressible":false,"extensions":["x3db","x3dbz"]},"model/x3d+fastinfoset":{"source":"iana","extensions":["x3db"]},"model/x3d+vrml":{"source":"apache","compressible":false,"extensions":["x3dv","x3dvz"]},"model/x3d+xml":{"source":"iana","compressible":true,"extensions":["x3d","x3dz"]},"model/x3d-vrml":{"source":"iana","extensions":["x3dv"]},"multipart/alternative":{"source":"iana","compressible":false},"multipart/appledouble":{"source":"iana"},"multipart/byteranges":{"source":"iana"},"multipart/digest":{"source":"iana"},"multipart/encrypted":{"source":"iana","compressible":false},"multipart/form-data":{"source":"iana","compressible":false},"multipart/header-set":{"source":"iana"},"multipart/mixed":{"source":"iana"},"multipart/multilingual":{"source":"iana"},"multipart/parallel":{"source":"iana"},"multipart/related":{"source":"iana","compressible":false},"multipart/report":{"source":"iana"},"multipart/signed":{"source":"iana","compressible":false},"multipart/vnd.bint.med-plus":{"source":"iana"},"multipart/voice-message":{"source":"iana"},"multipart/x-mixed-replace":{"source":"iana"},"text/1d-interleaved-parityfec":{"source":"iana"},"text/cache-manifest":{"source":"iana","compressible":true,"extensions":["appcache","manifest"]},"text/calendar":{"source":"iana","extensions":["ics","ifb"]},"text/calender":{"compressible":true},"text/cmd":{"compressible":true},"text/coffeescript":{"extensions":["coffee","litcoffee"]},"text/cql":{"source":"iana"},"text/cql-expression":{"source":"iana"},"text/cql-identifier":{"source":"iana"},"text/css":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["css"]},"text/csv":{"source":"iana","compressible":true,"extensions":["csv"]},"text/csv-schema":{"source":"iana"},"text/directory":{"source":"iana"},"text/dns":{"source":"iana"},"text/ecmascript":{"source":"iana"},"text/encaprtp":{"source":"iana"},"text/enriched":{"source":"iana"},"text/fhirpath":{"source":"iana"},"text/flexfec":{"source":"iana"},"text/fwdred":{"source":"iana"},"text/gff3":{"source":"iana"},"text/grammar-ref-list":{"source":"iana"},"text/html":{"source":"iana","compressible":true,"extensions":["html","htm","shtml"]},"text/jade":{"extensions":["jade"]},"text/javascript":{"source":"iana","compressible":true},"text/jcr-cnd":{"source":"iana"},"text/jsx":{"compressible":true,"extensions":["jsx"]},"text/less":{"compressible":true,"extensions":["less"]},"text/markdown":{"source":"iana","compressible":true,"extensions":["markdown","md"]},"text/mathml":{"source":"nginx","extensions":["mml"]},"text/mdx":{"compressible":true,"extensions":["mdx"]},"text/mizar":{"source":"iana"},"text/n3":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["n3"]},"text/parameters":{"source":"iana","charset":"UTF-8"},"text/parityfec":{"source":"iana"},"text/plain":{"source":"iana","compressible":true,"extensions":["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{"source":"iana","charset":"UTF-8"},"text/prs.fallenstein.rst":{"source":"iana"},"text/prs.lines.tag":{"source":"iana","extensions":["dsc"]},"text/prs.prop.logic":{"source":"iana"},"text/raptorfec":{"source":"iana"},"text/red":{"source":"iana"},"text/rfc822-headers":{"source":"iana"},"text/richtext":{"source":"iana","compressible":true,"extensions":["rtx"]},"text/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"text/rtp-enc-aescm128":{"source":"iana"},"text/rtploopback":{"source":"iana"},"text/rtx":{"source":"iana"},"text/sgml":{"source":"iana","extensions":["sgml","sgm"]},"text/shaclc":{"source":"iana"},"text/shex":{"source":"iana","extensions":["shex"]},"text/slim":{"extensions":["slim","slm"]},"text/spdx":{"source":"iana","extensions":["spdx"]},"text/strings":{"source":"iana"},"text/stylus":{"extensions":["stylus","styl"]},"text/t140":{"source":"iana"},"text/tab-separated-values":{"source":"iana","compressible":true,"extensions":["tsv"]},"text/troff":{"source":"iana","extensions":["t","tr","roff","man","me","ms"]},"text/turtle":{"source":"iana","charset":"UTF-8","extensions":["ttl"]},"text/ulpfec":{"source":"iana"},"text/uri-list":{"source":"iana","compressible":true,"extensions":["uri","uris","urls"]},"text/vcard":{"source":"iana","compressible":true,"extensions":["vcard"]},"text/vnd.a":{"source":"iana"},"text/vnd.abc":{"source":"iana"},"text/vnd.ascii-art":{"source":"iana"},"text/vnd.curl":{"source":"iana","extensions":["curl"]},"text/vnd.curl.dcurl":{"source":"apache","extensions":["dcurl"]},"text/vnd.curl.mcurl":{"source":"apache","extensions":["mcurl"]},"text/vnd.curl.scurl":{"source":"apache","extensions":["scurl"]},"text/vnd.debian.copyright":{"source":"iana","charset":"UTF-8"},"text/vnd.dmclientscript":{"source":"iana"},"text/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"text/vnd.esmertec.theme-descriptor":{"source":"iana","charset":"UTF-8"},"text/vnd.familysearch.gedcom":{"source":"iana","extensions":["ged"]},"text/vnd.ficlab.flt":{"source":"iana"},"text/vnd.fly":{"source":"iana","extensions":["fly"]},"text/vnd.fmi.flexstor":{"source":"iana","extensions":["flx"]},"text/vnd.gml":{"source":"iana"},"text/vnd.graphviz":{"source":"iana","extensions":["gv"]},"text/vnd.hans":{"source":"iana"},"text/vnd.hgl":{"source":"iana"},"text/vnd.in3d.3dml":{"source":"iana","extensions":["3dml"]},"text/vnd.in3d.spot":{"source":"iana","extensions":["spot"]},"text/vnd.iptc.newsml":{"source":"iana"},"text/vnd.iptc.nitf":{"source":"iana"},"text/vnd.latex-z":{"source":"iana"},"text/vnd.motorola.reflex":{"source":"iana"},"text/vnd.ms-mediapackage":{"source":"iana"},"text/vnd.net2phone.commcenter.command":{"source":"iana"},"text/vnd.radisys.msml-basic-layout":{"source":"iana"},"text/vnd.senx.warpscript":{"source":"iana"},"text/vnd.si.uricatalogue":{"source":"iana"},"text/vnd.sosi":{"source":"iana"},"text/vnd.sun.j2me.app-descriptor":{"source":"iana","charset":"UTF-8","extensions":["jad"]},"text/vnd.trolltech.linguist":{"source":"iana","charset":"UTF-8"},"text/vnd.wap.si":{"source":"iana"},"text/vnd.wap.sl":{"source":"iana"},"text/vnd.wap.wml":{"source":"iana","extensions":["wml"]},"text/vnd.wap.wmlscript":{"source":"iana","extensions":["wmls"]},"text/vtt":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["vtt"]},"text/x-asm":{"source":"apache","extensions":["s","asm"]},"text/x-c":{"source":"apache","extensions":["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{"source":"nginx","extensions":["htc"]},"text/x-fortran":{"source":"apache","extensions":["f","for","f77","f90"]},"text/x-gwt-rpc":{"compressible":true},"text/x-handlebars-template":{"extensions":["hbs"]},"text/x-java-source":{"source":"apache","extensions":["java"]},"text/x-jquery-tmpl":{"compressible":true},"text/x-lua":{"extensions":["lua"]},"text/x-markdown":{"compressible":true,"extensions":["mkd"]},"text/x-nfo":{"source":"apache","extensions":["nfo"]},"text/x-opml":{"source":"apache","extensions":["opml"]},"text/x-org":{"compressible":true,"extensions":["org"]},"text/x-pascal":{"source":"apache","extensions":["p","pas"]},"text/x-processing":{"compressible":true,"extensions":["pde"]},"text/x-sass":{"extensions":["sass"]},"text/x-scss":{"extensions":["scss"]},"text/x-setext":{"source":"apache","extensions":["etx"]},"text/x-sfv":{"source":"apache","extensions":["sfv"]},"text/x-suse-ymp":{"compressible":true,"extensions":["ymp"]},"text/x-uuencode":{"source":"apache","extensions":["uu"]},"text/x-vcalendar":{"source":"apache","extensions":["vcs"]},"text/x-vcard":{"source":"apache","extensions":["vcf"]},"text/xml":{"source":"iana","compressible":true,"extensions":["xml"]},"text/xml-external-parsed-entity":{"source":"iana"},"text/yaml":{"compressible":true,"extensions":["yaml","yml"]},"video/1d-interleaved-parityfec":{"source":"iana"},"video/3gpp":{"source":"iana","extensions":["3gp","3gpp"]},"video/3gpp-tt":{"source":"iana"},"video/3gpp2":{"source":"iana","extensions":["3g2"]},"video/av1":{"source":"iana"},"video/bmpeg":{"source":"iana"},"video/bt656":{"source":"iana"},"video/celb":{"source":"iana"},"video/dv":{"source":"iana"},"video/encaprtp":{"source":"iana"},"video/ffv1":{"source":"iana"},"video/flexfec":{"source":"iana"},"video/h261":{"source":"iana","extensions":["h261"]},"video/h263":{"source":"iana","extensions":["h263"]},"video/h263-1998":{"source":"iana"},"video/h263-2000":{"source":"iana"},"video/h264":{"source":"iana","extensions":["h264"]},"video/h264-rcdo":{"source":"iana"},"video/h264-svc":{"source":"iana"},"video/h265":{"source":"iana"},"video/iso.segment":{"source":"iana","extensions":["m4s"]},"video/jpeg":{"source":"iana","extensions":["jpgv"]},"video/jpeg2000":{"source":"iana"},"video/jpm":{"source":"apache","extensions":["jpm","jpgm"]},"video/jxsv":{"source":"iana"},"video/mj2":{"source":"iana","extensions":["mj2","mjp2"]},"video/mp1s":{"source":"iana"},"video/mp2p":{"source":"iana"},"video/mp2t":{"source":"iana","extensions":["ts"]},"video/mp4":{"source":"iana","compressible":false,"extensions":["mp4","mp4v","mpg4"]},"video/mp4v-es":{"source":"iana"},"video/mpeg":{"source":"iana","compressible":false,"extensions":["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{"source":"iana"},"video/mpv":{"source":"iana"},"video/nv":{"source":"iana"},"video/ogg":{"source":"iana","compressible":false,"extensions":["ogv"]},"video/parityfec":{"source":"iana"},"video/pointer":{"source":"iana"},"video/quicktime":{"source":"iana","compressible":false,"extensions":["qt","mov"]},"video/raptorfec":{"source":"iana"},"video/raw":{"source":"iana"},"video/rtp-enc-aescm128":{"source":"iana"},"video/rtploopback":{"source":"iana"},"video/rtx":{"source":"iana"},"video/scip":{"source":"iana"},"video/smpte291":{"source":"iana"},"video/smpte292m":{"source":"iana"},"video/ulpfec":{"source":"iana"},"video/vc1":{"source":"iana"},"video/vc2":{"source":"iana"},"video/vnd.cctv":{"source":"iana"},"video/vnd.dece.hd":{"source":"iana","extensions":["uvh","uvvh"]},"video/vnd.dece.mobile":{"source":"iana","extensions":["uvm","uvvm"]},"video/vnd.dece.mp4":{"source":"iana"},"video/vnd.dece.pd":{"source":"iana","extensions":["uvp","uvvp"]},"video/vnd.dece.sd":{"source":"iana","extensions":["uvs","uvvs"]},"video/vnd.dece.video":{"source":"iana","extensions":["uvv","uvvv"]},"video/vnd.directv.mpeg":{"source":"iana"},"video/vnd.directv.mpeg-tts":{"source":"iana"},"video/vnd.dlna.mpeg-tts":{"source":"iana"},"video/vnd.dvb.file":{"source":"iana","extensions":["dvb"]},"video/vnd.fvt":{"source":"iana","extensions":["fvt"]},"video/vnd.hns.video":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.ttsavc":{"source":"iana"},"video/vnd.iptvforum.ttsmpeg2":{"source":"iana"},"video/vnd.motorola.video":{"source":"iana"},"video/vnd.motorola.videop":{"source":"iana"},"video/vnd.mpegurl":{"source":"iana","extensions":["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{"source":"iana","extensions":["pyv"]},"video/vnd.nokia.interleaved-multimedia":{"source":"iana"},"video/vnd.nokia.mp4vr":{"source":"iana"},"video/vnd.nokia.videovoip":{"source":"iana"},"video/vnd.objectvideo":{"source":"iana"},"video/vnd.radgamettools.bink":{"source":"iana"},"video/vnd.radgamettools.smacker":{"source":"iana"},"video/vnd.sealed.mpeg1":{"source":"iana"},"video/vnd.sealed.mpeg4":{"source":"iana"},"video/vnd.sealed.swf":{"source":"iana"},"video/vnd.sealedmedia.softseal.mov":{"source":"iana"},"video/vnd.uvvu.mp4":{"source":"iana","extensions":["uvu","uvvu"]},"video/vnd.vivo":{"source":"iana","extensions":["viv"]},"video/vnd.youtube.yt":{"source":"iana"},"video/vp8":{"source":"iana"},"video/vp9":{"source":"iana"},"video/webm":{"source":"apache","compressible":false,"extensions":["webm"]},"video/x-f4v":{"source":"apache","extensions":["f4v"]},"video/x-fli":{"source":"apache","extensions":["fli"]},"video/x-flv":{"source":"apache","compressible":false,"extensions":["flv"]},"video/x-m4v":{"source":"apache","extensions":["m4v"]},"video/x-matroska":{"source":"apache","compressible":false,"extensions":["mkv","mk3d","mks"]},"video/x-mng":{"source":"apache","extensions":["mng"]},"video/x-ms-asf":{"source":"apache","extensions":["asf","asx"]},"video/x-ms-vob":{"source":"apache","extensions":["vob"]},"video/x-ms-wm":{"source":"apache","extensions":["wm"]},"video/x-ms-wmv":{"source":"apache","compressible":false,"extensions":["wmv"]},"video/x-ms-wmx":{"source":"apache","extensions":["wmx"]},"video/x-ms-wvx":{"source":"apache","extensions":["wvx"]},"video/x-msvideo":{"source":"apache","extensions":["avi"]},"video/x-sgi-movie":{"source":"apache","extensions":["movie"]},"video/x-smv":{"source":"apache","extensions":["smv"]},"x-conference/x-cooltalk":{"source":"apache","extensions":["ice"]},"x-shader/x-fragment":{"compressible":true},"x-shader/x-vertex":{"compressible":true}}'); /***/ }), -/***/ 7241: +/***/ 1306: /***/ ((module) => { module.exports = {"version":"3.19.0"}; @@ -76543,7 +76861,7 @@ module.exports = {"version":"3.19.0"}; /******/ // startup /******/ // Load entry module and return exports /******/ // This entry module used 'module' so it can't be inlined -/******/ var __webpack_exports__ = __nccwpck_require__(4640); +/******/ var __webpack_exports__ = __nccwpck_require__(1699); /******/ __webpack_exports__ = await __webpack_exports__; /******/ var __webpack_exports__checkApiOfPackage = __webpack_exports__.i8; /******/ var __webpack_exports__checkBarrelRecursive = __webpack_exports__.le; diff --git a/.github/actions/get-changelog/index.js b/.github/actions/get-changelog/index.js index 9db628074e..0715878a9f 100644 --- a/.github/actions/get-changelog/index.js +++ b/.github/actions/get-changelog/index.js @@ -1,15 +1,15 @@ import { createRequire as __WEBPACK_EXTERNAL_createRequire } from "module"; /******/ var __webpack_modules__ = ({ -/***/ 5070: +/***/ 7285: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -/* unused reexport */ __nccwpck_require__(5862); +/* unused reexport */ __nccwpck_require__(8703); /***/ }), -/***/ 5862: +/***/ 8703: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { var __webpack_unused_export__; @@ -281,34 +281,34 @@ __webpack_unused_export__ = debug; // for test /***/ }), -/***/ 1684: +/***/ 4906: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { var __webpack_unused_export__; -const Client = __nccwpck_require__(1313) -const Dispatcher = __nccwpck_require__(3415) -const Pool = __nccwpck_require__(5928) -const BalancedPool = __nccwpck_require__(6681) -const Agent = __nccwpck_require__(1745) -const ProxyAgent = __nccwpck_require__(7508) -const EnvHttpProxyAgent = __nccwpck_require__(9221) -const RetryAgent = __nccwpck_require__(334) -const errors = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) +const Client = __nccwpck_require__(979) +const Dispatcher = __nccwpck_require__(7029) +const Pool = __nccwpck_require__(9610) +const BalancedPool = __nccwpck_require__(7475) +const Agent = __nccwpck_require__(7823) +const ProxyAgent = __nccwpck_require__(826) +const EnvHttpProxyAgent = __nccwpck_require__(2935) +const RetryAgent = __nccwpck_require__(5308) +const errors = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) const { InvalidArgumentError } = errors -const api = __nccwpck_require__(2531) -const buildConnector = __nccwpck_require__(1332) -const MockClient = __nccwpck_require__(2361) -const MockAgent = __nccwpck_require__(7017) -const MockPool = __nccwpck_require__(6480) -const mockErrors = __nccwpck_require__(2673) -const RetryHandler = __nccwpck_require__(4004) -const { getGlobalDispatcher, setGlobalDispatcher } = __nccwpck_require__(1481) -const DecoratorHandler = __nccwpck_require__(9151) -const RedirectHandler = __nccwpck_require__(7158) -const createRedirectInterceptor = __nccwpck_require__(1576) +const api = __nccwpck_require__(3797) +const buildConnector = __nccwpck_require__(46) +const MockClient = __nccwpck_require__(6899) +const MockAgent = __nccwpck_require__(2527) +const MockPool = __nccwpck_require__(7226) +const mockErrors = __nccwpck_require__(2863) +const RetryHandler = __nccwpck_require__(1450) +const { getGlobalDispatcher, setGlobalDispatcher } = __nccwpck_require__(8707) +const DecoratorHandler = __nccwpck_require__(801) +const RedirectHandler = __nccwpck_require__(1932) +const createRedirectInterceptor = __nccwpck_require__(7958) Object.assign(Dispatcher.prototype, api) @@ -326,10 +326,10 @@ __webpack_unused_export__ = DecoratorHandler __webpack_unused_export__ = RedirectHandler __webpack_unused_export__ = createRedirectInterceptor __webpack_unused_export__ = { - redirect: __nccwpck_require__(7734), - retry: __nccwpck_require__(5486), - dump: __nccwpck_require__(5376), - dns: __nccwpck_require__(4287) + redirect: __nccwpck_require__(3184), + retry: __nccwpck_require__(5904), + dump: __nccwpck_require__(4166), + dns: __nccwpck_require__(4289) } __webpack_unused_export__ = buildConnector @@ -391,7 +391,7 @@ function makeDispatcher (fn) { __webpack_unused_export__ = setGlobalDispatcher __webpack_unused_export__ = getGlobalDispatcher -const fetchImpl = (__nccwpck_require__(4202).fetch) +const fetchImpl = (__nccwpck_require__(224).fetch) __webpack_unused_export__ = async function fetch (init, options = undefined) { try { return await fetchImpl(init, options) @@ -403,39 +403,39 @@ __webpack_unused_export__ = async function fetch (init, options = undefined) { throw err } } -/* unused reexport */ __nccwpck_require__(3408).Headers -/* unused reexport */ __nccwpck_require__(7287).Response -/* unused reexport */ __nccwpck_require__(9683).Request -/* unused reexport */ __nccwpck_require__(3818).FormData +/* unused reexport */ __nccwpck_require__(8146).Headers +/* unused reexport */ __nccwpck_require__(2873).Response +/* unused reexport */ __nccwpck_require__(557).Request +/* unused reexport */ __nccwpck_require__(8932).FormData __webpack_unused_export__ = globalThis.File ?? (__nccwpck_require__(4573).File) -/* unused reexport */ __nccwpck_require__(6575).FileReader +/* unused reexport */ __nccwpck_require__(7669).FileReader -const { setGlobalOrigin, getGlobalOrigin } = __nccwpck_require__(5311) +const { setGlobalOrigin, getGlobalOrigin } = __nccwpck_require__(777) __webpack_unused_export__ = setGlobalOrigin __webpack_unused_export__ = getGlobalOrigin -const { CacheStorage } = __nccwpck_require__(6577) -const { kConstruct } = __nccwpck_require__(8329) +const { CacheStorage } = __nccwpck_require__(4215) +const { kConstruct } = __nccwpck_require__(7747) // Cache & CacheStorage are tightly coupled with fetch. Even if it may run // in an older version of Node, it doesn't have any use without fetch. __webpack_unused_export__ = new CacheStorage(kConstruct) -const { deleteCookie, getCookies, getSetCookies, setCookie } = __nccwpck_require__(7889) +const { deleteCookie, getCookies, getSetCookies, setCookie } = __nccwpck_require__(8659) __webpack_unused_export__ = deleteCookie __webpack_unused_export__ = getCookies __webpack_unused_export__ = getSetCookies __webpack_unused_export__ = setCookie -const { parseMIMEType, serializeAMimeType } = __nccwpck_require__(192) +const { parseMIMEType, serializeAMimeType } = __nccwpck_require__(8394) __webpack_unused_export__ = parseMIMEType __webpack_unused_export__ = serializeAMimeType -const { CloseEvent, ErrorEvent, MessageEvent } = __nccwpck_require__(6760) -/* unused reexport */ __nccwpck_require__(2522).WebSocket +const { CloseEvent, ErrorEvent, MessageEvent } = __nccwpck_require__(7690) +/* unused reexport */ __nccwpck_require__(7836).WebSocket __webpack_unused_export__ = CloseEvent __webpack_unused_export__ = ErrorEvent __webpack_unused_export__ = MessageEvent @@ -451,18 +451,18 @@ __webpack_unused_export__ = MockPool __webpack_unused_export__ = MockAgent __webpack_unused_export__ = mockErrors -const { EventSource } = __nccwpck_require__(7042) +const { EventSource } = __nccwpck_require__(3276) __webpack_unused_export__ = EventSource /***/ }), -/***/ 2730: +/***/ 6756: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { addAbortListener } = __nccwpck_require__(9500) -const { RequestAbortedError } = __nccwpck_require__(3959) +const { addAbortListener } = __nccwpck_require__(7662) +const { RequestAbortedError } = __nccwpck_require__(5933) const kListener = Symbol('kListener') const kSignal = Symbol('kSignal') @@ -522,16 +522,16 @@ module.exports = { /***/ }), -/***/ 3192: +/***/ 7530: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { AsyncResource } = __nccwpck_require__(6698) -const { InvalidArgumentError, SocketError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const { InvalidArgumentError, SocketError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { addSignal, removeSignal } = __nccwpck_require__(6756) class ConnectHandler extends AsyncResource { constructor (opts, callback) { @@ -637,7 +637,7 @@ module.exports = connect /***/ }), -/***/ 2466: +/***/ 8656: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -651,10 +651,10 @@ const { InvalidArgumentError, InvalidReturnValueError, RequestAbortedError -} = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) +} = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) const { AsyncResource } = __nccwpck_require__(6698) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const { addSignal, removeSignal } = __nccwpck_require__(6756) const assert = __nccwpck_require__(4589) const kResume = Symbol('resume') @@ -895,16 +895,16 @@ module.exports = pipeline /***/ }), -/***/ 887: +/***/ 7157: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { Readable } = __nccwpck_require__(8947) -const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { getResolveErrorBodyCallback } = __nccwpck_require__(363) +const { Readable } = __nccwpck_require__(2797) +const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { getResolveErrorBodyCallback } = __nccwpck_require__(3877) const { AsyncResource } = __nccwpck_require__(6698) class RequestHandler extends AsyncResource { @@ -1116,18 +1116,18 @@ module.exports.RequestHandler = RequestHandler /***/ }), -/***/ 4388: +/***/ 3718: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { finished, PassThrough } = __nccwpck_require__(7075) -const { InvalidArgumentError, InvalidReturnValueError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { getResolveErrorBodyCallback } = __nccwpck_require__(363) +const { InvalidArgumentError, InvalidReturnValueError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { getResolveErrorBodyCallback } = __nccwpck_require__(3877) const { AsyncResource } = __nccwpck_require__(6698) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const { addSignal, removeSignal } = __nccwpck_require__(6756) class StreamHandler extends AsyncResource { constructor (opts, factory, callback) { @@ -1343,15 +1343,15 @@ module.exports = stream /***/ }), -/***/ 6342: +/***/ 9764: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { InvalidArgumentError, SocketError } = __nccwpck_require__(3959) +const { InvalidArgumentError, SocketError } = __nccwpck_require__(5933) const { AsyncResource } = __nccwpck_require__(6698) -const util = __nccwpck_require__(9500) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const util = __nccwpck_require__(7662) +const { addSignal, removeSignal } = __nccwpck_require__(6756) const assert = __nccwpck_require__(4589) class UpgradeHandler extends AsyncResource { @@ -1458,21 +1458,21 @@ module.exports = upgrade /***/ }), -/***/ 2531: +/***/ 3797: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -module.exports.request = __nccwpck_require__(887) -module.exports.stream = __nccwpck_require__(4388) -module.exports.pipeline = __nccwpck_require__(2466) -module.exports.upgrade = __nccwpck_require__(6342) -module.exports.connect = __nccwpck_require__(3192) +module.exports.request = __nccwpck_require__(7157) +module.exports.stream = __nccwpck_require__(3718) +module.exports.pipeline = __nccwpck_require__(8656) +module.exports.upgrade = __nccwpck_require__(9764) +module.exports.connect = __nccwpck_require__(7530) /***/ }), -/***/ 8947: +/***/ 2797: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Ported from https://github.com/nodejs/undici/pull/907 @@ -1481,9 +1481,9 @@ module.exports.connect = __nccwpck_require__(3192) const assert = __nccwpck_require__(4589) const { Readable } = __nccwpck_require__(7075) -const { RequestAbortedError, NotSupportedError, InvalidArgumentError, AbortError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { ReadableStreamFrom } = __nccwpck_require__(9500) +const { RequestAbortedError, NotSupportedError, InvalidArgumentError, AbortError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { ReadableStreamFrom } = __nccwpck_require__(7662) const kConsume = Symbol('kConsume') const kReading = Symbol('kReading') @@ -1864,15 +1864,15 @@ module.exports = { Readable: BodyReadable, chunksDecode } /***/ }), -/***/ 363: +/***/ 3877: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { ResponseStatusCodeError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) -const { chunksDecode } = __nccwpck_require__(8947) +const { chunksDecode } = __nccwpck_require__(2797) const CHUNK_LIMIT = 128 * 1024 async function getResolveErrorBodyCallback ({ callback, body, contentType, statusCode, statusMessage, headers }) { @@ -1964,16 +1964,16 @@ module.exports = { /***/ }), -/***/ 1332: +/***/ 46: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const net = __nccwpck_require__(7030) const assert = __nccwpck_require__(4589) -const util = __nccwpck_require__(9500) -const { InvalidArgumentError, ConnectTimeoutError } = __nccwpck_require__(3959) -const timers = __nccwpck_require__(4591) +const util = __nccwpck_require__(7662) +const { InvalidArgumentError, ConnectTimeoutError } = __nccwpck_require__(5933) +const timers = __nccwpck_require__(7797) function noop () {} @@ -2211,7 +2211,7 @@ module.exports = buildConnector /***/ }), -/***/ 2371: +/***/ 7313: /***/ ((module) => { @@ -2336,7 +2336,7 @@ module.exports = { /***/ }), -/***/ 5458: +/***/ 8560: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -2545,7 +2545,7 @@ module.exports = { /***/ }), -/***/ 3959: +/***/ 5933: /***/ ((module) => { @@ -2977,7 +2977,7 @@ module.exports = { /***/ }), -/***/ 9691: +/***/ 9441: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -2985,7 +2985,7 @@ module.exports = { const { InvalidArgumentError, NotSupportedError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const assert = __nccwpck_require__(4589) const { isValidHTTPToken, @@ -3000,9 +3000,9 @@ const { validateHandler, getServerName, normalizedMethodRecords -} = __nccwpck_require__(9500) -const { channels } = __nccwpck_require__(5458) -const { headerNameLowerCasedRecord } = __nccwpck_require__(2371) +} = __nccwpck_require__(7662) +const { channels } = __nccwpck_require__(8560) +const { headerNameLowerCasedRecord } = __nccwpck_require__(7313) // Verifies that a given path is valid does not contain control chars \x00 to \x20 const invalidPathRegex = /[^\u0021-\u00ff]/ @@ -3389,7 +3389,7 @@ module.exports = Request /***/ }), -/***/ 8031: +/***/ 3373: /***/ ((module) => { module.exports = { @@ -3463,7 +3463,7 @@ module.exports = { /***/ }), -/***/ 6868: +/***/ 6338: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -3471,7 +3471,7 @@ module.exports = { const { wellknownHeaderNames, headerNameLowerCasedRecord -} = __nccwpck_require__(2371) +} = __nccwpck_require__(7313) class TstNode { /** @type {any} */ @@ -3622,13 +3622,13 @@ module.exports = { /***/ }), -/***/ 9500: +/***/ 7662: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { kDestroyed, kBodyUsed, kListeners, kBody } = __nccwpck_require__(8031) +const { kDestroyed, kBodyUsed, kListeners, kBody } = __nccwpck_require__(3373) const { IncomingMessage } = __nccwpck_require__(7067) const stream = __nccwpck_require__(7075) const net = __nccwpck_require__(7030) @@ -3636,9 +3636,9 @@ const { Blob } = __nccwpck_require__(4573) const nodeUtil = __nccwpck_require__(7975) const { stringify } = __nccwpck_require__(1792) const { EventEmitter: EE } = __nccwpck_require__(8474) -const { InvalidArgumentError } = __nccwpck_require__(3959) -const { headerNameLowerCasedRecord } = __nccwpck_require__(2371) -const { tree } = __nccwpck_require__(6868) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const { headerNameLowerCasedRecord } = __nccwpck_require__(7313) +const { tree } = __nccwpck_require__(6338) const [nodeMajor, nodeMinor] = process.versions.node.split('.').map(v => Number(v)) @@ -4348,18 +4348,18 @@ module.exports = { /***/ }), -/***/ 1745: +/***/ 7823: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { InvalidArgumentError } = __nccwpck_require__(3959) -const { kClients, kRunning, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(8031) -const DispatcherBase = __nccwpck_require__(1517) -const Pool = __nccwpck_require__(5928) -const Client = __nccwpck_require__(1313) -const util = __nccwpck_require__(9500) -const createRedirectInterceptor = __nccwpck_require__(1576) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const { kClients, kRunning, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(3373) +const DispatcherBase = __nccwpck_require__(103) +const Pool = __nccwpck_require__(9610) +const Client = __nccwpck_require__(979) +const util = __nccwpck_require__(7662) +const createRedirectInterceptor = __nccwpck_require__(7958) const kOnConnect = Symbol('onConnect') const kOnDisconnect = Symbol('onDisconnect') @@ -4484,7 +4484,7 @@ module.exports = Agent /***/ }), -/***/ 6681: +/***/ 7475: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -4492,7 +4492,7 @@ module.exports = Agent const { BalancedPoolMissingUpstreamError, InvalidArgumentError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const { PoolBase, kClients, @@ -4500,10 +4500,10 @@ const { kAddClient, kRemoveClient, kGetDispatcher -} = __nccwpck_require__(7292) -const Pool = __nccwpck_require__(5928) -const { kUrl, kInterceptors } = __nccwpck_require__(8031) -const { parseOrigin } = __nccwpck_require__(9500) +} = __nccwpck_require__(9266) +const Pool = __nccwpck_require__(9610) +const { kUrl, kInterceptors } = __nccwpck_require__(3373) +const { parseOrigin } = __nccwpck_require__(7662) const kFactory = Symbol('factory') const kOptions = Symbol('options') @@ -4700,7 +4700,7 @@ module.exports = BalancedPool /***/ }), -/***/ 4393: +/***/ 7727: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -4708,9 +4708,9 @@ module.exports = BalancedPool /* global WebAssembly */ const assert = __nccwpck_require__(4589) -const util = __nccwpck_require__(9500) -const { channels } = __nccwpck_require__(5458) -const timers = __nccwpck_require__(4591) +const util = __nccwpck_require__(7662) +const { channels } = __nccwpck_require__(8560) +const timers = __nccwpck_require__(7797) const { RequestContentLengthMismatchError, ResponseContentLengthMismatchError, @@ -4722,7 +4722,7 @@ const { BodyTimeoutError, HTTPParserError, ResponseExceededMaxSizeError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const { kUrl, kReset, @@ -4755,9 +4755,9 @@ const { kOnError, kResume, kHTTPContext -} = __nccwpck_require__(8031) +} = __nccwpck_require__(3373) -const constants = __nccwpck_require__(748) +const constants = __nccwpck_require__(1214) const EMPTY_BUF = Buffer.alloc(0) const FastBuffer = Buffer[Symbol.species] const addListener = util.addListener @@ -4766,11 +4766,11 @@ const removeAllListeners = util.removeAllListeners let extractBody async function lazyllhttp () { - const llhttpWasmData = process.env.JEST_WORKER_ID ? __nccwpck_require__(3922) : undefined + const llhttpWasmData = process.env.JEST_WORKER_ID ? __nccwpck_require__(4916) : undefined let mod try { - mod = await WebAssembly.compile(__nccwpck_require__(3742)) + mod = await WebAssembly.compile(__nccwpck_require__(7708)) } catch (e) { /* istanbul ignore next */ @@ -4778,7 +4778,7 @@ async function lazyllhttp () { // being enabled, but the occurring of this other error // * https://github.com/emscripten-core/emscripten/issues/11495 // got me to remove that check to avoid breaking Node 12. - mod = await WebAssembly.compile(llhttpWasmData || __nccwpck_require__(3922)) + mod = await WebAssembly.compile(llhttpWasmData || __nccwpck_require__(4916)) } return await WebAssembly.instantiate(mod, { @@ -5573,7 +5573,7 @@ function writeH1 (client, request) { if (util.isFormDataLike(body)) { if (!extractBody) { - extractBody = (__nccwpck_require__(1448).extractBody) + extractBody = (__nccwpck_require__(4086).extractBody) } const [bodyStream, contentType] = extractBody(body) @@ -6077,20 +6077,20 @@ module.exports = connectH1 /***/ }), -/***/ 3504: +/***/ 930: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { pipeline } = __nccwpck_require__(7075) -const util = __nccwpck_require__(9500) +const util = __nccwpck_require__(7662) const { RequestContentLengthMismatchError, RequestAbortedError, SocketError, InformationalError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const { kUrl, kReset, @@ -6109,7 +6109,7 @@ const { kResume, kSize, kHTTPContext -} = __nccwpck_require__(8031) +} = __nccwpck_require__(3373) const kOpenStreams = Symbol('open streams') @@ -6468,7 +6468,7 @@ function writeH2 (client, request) { let contentLength = util.bodyLength(body) if (util.isFormDataLike(body)) { - extractBody ??= (__nccwpck_require__(1448).extractBody) + extractBody ??= (__nccwpck_require__(4086).extractBody) const [bodyStream, contentType] = extractBody(body) headers['content-type'] = contentType @@ -6828,7 +6828,7 @@ module.exports = connectH2 /***/ }), -/***/ 1313: +/***/ 979: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // @ts-check @@ -6838,16 +6838,16 @@ module.exports = connectH2 const assert = __nccwpck_require__(4589) const net = __nccwpck_require__(7030) const http = __nccwpck_require__(7067) -const util = __nccwpck_require__(9500) -const { channels } = __nccwpck_require__(5458) -const Request = __nccwpck_require__(9691) -const DispatcherBase = __nccwpck_require__(1517) +const util = __nccwpck_require__(7662) +const { channels } = __nccwpck_require__(8560) +const Request = __nccwpck_require__(9441) +const DispatcherBase = __nccwpck_require__(103) const { InvalidArgumentError, InformationalError, ClientDestroyedError -} = __nccwpck_require__(3959) -const buildConnector = __nccwpck_require__(1332) +} = __nccwpck_require__(5933) +const buildConnector = __nccwpck_require__(46) const { kUrl, kServerName, @@ -6889,9 +6889,9 @@ const { kHTTPContext, kMaxConcurrentStreams, kResume -} = __nccwpck_require__(8031) -const connectH1 = __nccwpck_require__(4393) -const connectH2 = __nccwpck_require__(3504) +} = __nccwpck_require__(3373) +const connectH1 = __nccwpck_require__(7727) +const connectH2 = __nccwpck_require__(930) let deprecatedInterceptorWarned = false const kClosedResolve = Symbol('kClosedResolve') @@ -7197,7 +7197,7 @@ class Client extends DispatcherBase { } } -const createRedirectInterceptor = __nccwpck_require__(1576) +const createRedirectInterceptor = __nccwpck_require__(7958) function onError (client, err) { if ( @@ -7457,18 +7457,18 @@ module.exports = Client /***/ }), -/***/ 1517: +/***/ 103: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const Dispatcher = __nccwpck_require__(3415) +const Dispatcher = __nccwpck_require__(7029) const { ClientDestroyedError, ClientClosedError, InvalidArgumentError -} = __nccwpck_require__(3959) -const { kDestroy, kClose, kClosed, kDestroyed, kDispatch, kInterceptors } = __nccwpck_require__(8031) +} = __nccwpck_require__(5933) +const { kDestroy, kClose, kClosed, kDestroyed, kDispatch, kInterceptors } = __nccwpck_require__(3373) const kOnDestroyed = Symbol('onDestroyed') const kOnClosed = Symbol('onClosed') @@ -7654,7 +7654,7 @@ module.exports = DispatcherBase /***/ }), -/***/ 3415: +/***/ 7029: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -7726,15 +7726,15 @@ module.exports = Dispatcher /***/ }), -/***/ 9221: +/***/ 2935: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const DispatcherBase = __nccwpck_require__(1517) -const { kClose, kDestroy, kClosed, kDestroyed, kDispatch, kNoProxyAgent, kHttpProxyAgent, kHttpsProxyAgent } = __nccwpck_require__(8031) -const ProxyAgent = __nccwpck_require__(7508) -const Agent = __nccwpck_require__(1745) +const DispatcherBase = __nccwpck_require__(103) +const { kClose, kDestroy, kClosed, kDestroyed, kDispatch, kNoProxyAgent, kHttpProxyAgent, kHttpsProxyAgent } = __nccwpck_require__(3373) +const ProxyAgent = __nccwpck_require__(826) +const Agent = __nccwpck_require__(7823) const DEFAULT_PORTS = { 'http:': 80, @@ -7893,7 +7893,7 @@ module.exports = EnvHttpProxyAgent /***/ }), -/***/ 5464: +/***/ 1034: /***/ ((module) => { /* eslint-disable */ @@ -8017,15 +8017,15 @@ module.exports = class FixedQueue { /***/ }), -/***/ 7292: +/***/ 9266: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const DispatcherBase = __nccwpck_require__(1517) -const FixedQueue = __nccwpck_require__(5464) -const { kConnected, kSize, kRunning, kPending, kQueued, kBusy, kFree, kUrl, kClose, kDestroy, kDispatch } = __nccwpck_require__(8031) -const PoolStats = __nccwpck_require__(8186) +const DispatcherBase = __nccwpck_require__(103) +const FixedQueue = __nccwpck_require__(1034) +const { kConnected, kSize, kRunning, kPending, kQueued, kBusy, kFree, kUrl, kClose, kDestroy, kDispatch } = __nccwpck_require__(3373) +const PoolStats = __nccwpck_require__(7956) const kClients = Symbol('clients') const kNeedDrain = Symbol('needDrain') @@ -8218,10 +8218,10 @@ module.exports = { /***/ }), -/***/ 8186: +/***/ 7956: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kFree, kConnected, kPending, kQueued, kRunning, kSize } = __nccwpck_require__(8031) +const { kFree, kConnected, kPending, kQueued, kRunning, kSize } = __nccwpck_require__(3373) const kPool = Symbol('pool') class PoolStats { @@ -8259,7 +8259,7 @@ module.exports = PoolStats /***/ }), -/***/ 5928: +/***/ 9610: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -8270,14 +8270,14 @@ const { kNeedDrain, kAddClient, kGetDispatcher -} = __nccwpck_require__(7292) -const Client = __nccwpck_require__(1313) +} = __nccwpck_require__(9266) +const Client = __nccwpck_require__(979) const { InvalidArgumentError -} = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { kUrl, kInterceptors } = __nccwpck_require__(8031) -const buildConnector = __nccwpck_require__(1332) +} = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { kUrl, kInterceptors } = __nccwpck_require__(3373) +const buildConnector = __nccwpck_require__(46) const kOptions = Symbol('options') const kConnections = Symbol('connections') @@ -8373,19 +8373,19 @@ module.exports = Pool /***/ }), -/***/ 7508: +/***/ 826: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kProxy, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(8031) +const { kProxy, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(3373) const { URL } = __nccwpck_require__(3136) -const Agent = __nccwpck_require__(1745) -const Pool = __nccwpck_require__(5928) -const DispatcherBase = __nccwpck_require__(1517) -const { InvalidArgumentError, RequestAbortedError, SecureProxyConnectionError } = __nccwpck_require__(3959) -const buildConnector = __nccwpck_require__(1332) -const Client = __nccwpck_require__(1313) +const Agent = __nccwpck_require__(7823) +const Pool = __nccwpck_require__(9610) +const DispatcherBase = __nccwpck_require__(103) +const { InvalidArgumentError, RequestAbortedError, SecureProxyConnectionError } = __nccwpck_require__(5933) +const buildConnector = __nccwpck_require__(46) +const Client = __nccwpck_require__(979) const kAgent = Symbol('proxy agent') const kClient = Symbol('proxy client') @@ -8654,13 +8654,13 @@ module.exports = ProxyAgent /***/ }), -/***/ 334: +/***/ 5308: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const Dispatcher = __nccwpck_require__(3415) -const RetryHandler = __nccwpck_require__(4004) +const Dispatcher = __nccwpck_require__(7029) +const RetryHandler = __nccwpck_require__(1450) class RetryAgent extends Dispatcher { #agent = null @@ -8696,7 +8696,7 @@ module.exports = RetryAgent /***/ }), -/***/ 1481: +/***/ 8707: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -8704,8 +8704,8 @@ module.exports = RetryAgent // We include a version number for the Dispatcher API. In case of breaking changes, // this version number must be increased to avoid conflicts. const globalDispatcher = Symbol.for('undici.globalDispatcher.1') -const { InvalidArgumentError } = __nccwpck_require__(3959) -const Agent = __nccwpck_require__(1745) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const Agent = __nccwpck_require__(7823) if (getGlobalDispatcher() === undefined) { setGlobalDispatcher(new Agent()) @@ -8735,7 +8735,7 @@ module.exports = { /***/ }), -/***/ 9151: +/***/ 801: /***/ ((module) => { @@ -8786,15 +8786,15 @@ module.exports = class DecoratorHandler { /***/ }), -/***/ 7158: +/***/ 1932: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const util = __nccwpck_require__(9500) -const { kBodyUsed } = __nccwpck_require__(8031) +const util = __nccwpck_require__(7662) +const { kBodyUsed } = __nccwpck_require__(3373) const assert = __nccwpck_require__(4589) -const { InvalidArgumentError } = __nccwpck_require__(3959) +const { InvalidArgumentError } = __nccwpck_require__(5933) const EE = __nccwpck_require__(8474) const redirectableStatusCodes = [300, 301, 302, 303, 307, 308] @@ -9025,20 +9025,20 @@ module.exports = RedirectHandler /***/ }), -/***/ 4004: +/***/ 1450: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { kRetryHandlerDefaultRetry } = __nccwpck_require__(8031) -const { RequestRetryError } = __nccwpck_require__(3959) +const { kRetryHandlerDefaultRetry } = __nccwpck_require__(3373) +const { RequestRetryError } = __nccwpck_require__(5933) const { isDisturbed, parseHeaders, parseRangeHeader, wrapRequestBody -} = __nccwpck_require__(9500) +} = __nccwpck_require__(7662) function calculateRetryAfterHeader (retryAfter) { const current = Date.now() @@ -9406,14 +9406,14 @@ module.exports = RetryHandler /***/ }), -/***/ 4287: +/***/ 4289: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { isIP } = __nccwpck_require__(7030) const { lookup } = __nccwpck_require__(610) -const DecoratorHandler = __nccwpck_require__(9151) -const { InvalidArgumentError, InformationalError } = __nccwpck_require__(3959) +const DecoratorHandler = __nccwpck_require__(801) +const { InvalidArgumentError, InformationalError } = __nccwpck_require__(5933) const maxInt = Math.pow(2, 31) - 1 class DNSInstance { @@ -9788,14 +9788,14 @@ module.exports = interceptorOpts => { /***/ }), -/***/ 5376: +/***/ 4166: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const util = __nccwpck_require__(9500) -const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(3959) -const DecoratorHandler = __nccwpck_require__(9151) +const util = __nccwpck_require__(7662) +const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(5933) +const DecoratorHandler = __nccwpck_require__(801) class DumpHandler extends DecoratorHandler { #maxSize = 1024 * 1024 @@ -9918,12 +9918,12 @@ module.exports = createDumpInterceptor /***/ }), -/***/ 1576: +/***/ 7958: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const RedirectHandler = __nccwpck_require__(7158) +const RedirectHandler = __nccwpck_require__(1932) function createRedirectInterceptor ({ maxRedirections: defaultMaxRedirections }) { return (dispatch) => { @@ -9946,11 +9946,11 @@ module.exports = createRedirectInterceptor /***/ }), -/***/ 7734: +/***/ 3184: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const RedirectHandler = __nccwpck_require__(7158) +const RedirectHandler = __nccwpck_require__(1932) module.exports = opts => { const globalMaxRedirections = opts?.maxRedirections @@ -9977,11 +9977,11 @@ module.exports = opts => { /***/ }), -/***/ 5486: +/***/ 5904: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const RetryHandler = __nccwpck_require__(4004) +const RetryHandler = __nccwpck_require__(1450) module.exports = globalOpts => { return dispatch => { @@ -10003,13 +10003,13 @@ module.exports = globalOpts => { /***/ }), -/***/ 748: +/***/ 1214: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.SPECIAL_HEADERS = exports.HEADER_STATE = exports.MINOR = exports.MAJOR = exports.CONNECTION_TOKEN_CHARS = exports.HEADER_CHARS = exports.TOKEN = exports.STRICT_TOKEN = exports.HEX = exports.URL_CHAR = exports.STRICT_URL_CHAR = exports.USERINFO_CHARS = exports.MARK = exports.ALPHANUM = exports.NUM = exports.HEX_MAP = exports.NUM_MAP = exports.ALPHA = exports.FINISH = exports.H_METHOD_MAP = exports.METHOD_MAP = exports.METHODS_RTSP = exports.METHODS_ICE = exports.METHODS_HTTP = exports.METHODS = exports.LENIENT_FLAGS = exports.FLAGS = exports.TYPE = exports.ERROR = void 0; -const utils_1 = __nccwpck_require__(4608); +const utils_1 = __nccwpck_require__(9430); // C headers var ERROR; (function (ERROR) { @@ -10287,7 +10287,7 @@ exports.SPECIAL_HEADERS = { /***/ }), -/***/ 3922: +/***/ 4916: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -10299,7 +10299,7 @@ module.exports = Buffer.from('AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f3 /***/ }), -/***/ 3742: +/***/ 7708: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -10311,7 +10311,7 @@ module.exports = Buffer.from('AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f3 /***/ }), -/***/ 4608: +/***/ 9430: /***/ ((__unused_webpack_module, exports) => { @@ -10332,13 +10332,13 @@ exports.enumToMap = enumToMap; /***/ }), -/***/ 7017: +/***/ 2527: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kClients } = __nccwpck_require__(8031) -const Agent = __nccwpck_require__(1745) +const { kClients } = __nccwpck_require__(3373) +const Agent = __nccwpck_require__(7823) const { kAgent, kMockAgentSet, @@ -10349,14 +10349,14 @@ const { kGetNetConnect, kOptions, kFactory -} = __nccwpck_require__(2305) -const MockClient = __nccwpck_require__(2361) -const MockPool = __nccwpck_require__(6480) -const { matchValue, buildMockOptions } = __nccwpck_require__(3193) -const { InvalidArgumentError, UndiciError } = __nccwpck_require__(3959) -const Dispatcher = __nccwpck_require__(3415) -const Pluralizer = __nccwpck_require__(5773) -const PendingInterceptorsFormatter = __nccwpck_require__(5738) +} = __nccwpck_require__(7351) +const MockClient = __nccwpck_require__(6899) +const MockPool = __nccwpck_require__(7226) +const { matchValue, buildMockOptions } = __nccwpck_require__(987) +const { InvalidArgumentError, UndiciError } = __nccwpck_require__(5933) +const Dispatcher = __nccwpck_require__(7029) +const Pluralizer = __nccwpck_require__(899) +const PendingInterceptorsFormatter = __nccwpck_require__(3576) class MockAgent extends Dispatcher { constructor (opts) { @@ -10499,14 +10499,14 @@ module.exports = MockAgent /***/ }), -/***/ 2361: +/***/ 6899: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { promisify } = __nccwpck_require__(7975) -const Client = __nccwpck_require__(1313) -const { buildMockDispatch } = __nccwpck_require__(3193) +const Client = __nccwpck_require__(979) +const { buildMockDispatch } = __nccwpck_require__(987) const { kDispatches, kMockAgent, @@ -10515,10 +10515,10 @@ const { kOrigin, kOriginalDispatch, kConnected -} = __nccwpck_require__(2305) -const { MockInterceptor } = __nccwpck_require__(5843) -const Symbols = __nccwpck_require__(8031) -const { InvalidArgumentError } = __nccwpck_require__(3959) +} = __nccwpck_require__(7351) +const { MockInterceptor } = __nccwpck_require__(3237) +const Symbols = __nccwpck_require__(3373) +const { InvalidArgumentError } = __nccwpck_require__(5933) /** * MockClient provides an API that extends the Client to influence the mockDispatches. @@ -10565,12 +10565,12 @@ module.exports = MockClient /***/ }), -/***/ 2673: +/***/ 2863: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { UndiciError } = __nccwpck_require__(3959) +const { UndiciError } = __nccwpck_require__(5933) const kMockNotMatchedError = Symbol.for('undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED') @@ -10600,12 +10600,12 @@ module.exports = { /***/ }), -/***/ 5843: +/***/ 3237: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { getResponseData, buildKey, addMockDispatch } = __nccwpck_require__(3193) +const { getResponseData, buildKey, addMockDispatch } = __nccwpck_require__(987) const { kDispatches, kDispatchKey, @@ -10613,9 +10613,9 @@ const { kDefaultTrailers, kContentLength, kMockDispatch -} = __nccwpck_require__(2305) -const { InvalidArgumentError } = __nccwpck_require__(3959) -const { buildURL } = __nccwpck_require__(9500) +} = __nccwpck_require__(7351) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const { buildURL } = __nccwpck_require__(7662) /** * Defines the scope API for an interceptor reply @@ -10814,14 +10814,14 @@ module.exports.MockScope = MockScope /***/ }), -/***/ 6480: +/***/ 7226: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { promisify } = __nccwpck_require__(7975) -const Pool = __nccwpck_require__(5928) -const { buildMockDispatch } = __nccwpck_require__(3193) +const Pool = __nccwpck_require__(9610) +const { buildMockDispatch } = __nccwpck_require__(987) const { kDispatches, kMockAgent, @@ -10830,10 +10830,10 @@ const { kOrigin, kOriginalDispatch, kConnected -} = __nccwpck_require__(2305) -const { MockInterceptor } = __nccwpck_require__(5843) -const Symbols = __nccwpck_require__(8031) -const { InvalidArgumentError } = __nccwpck_require__(3959) +} = __nccwpck_require__(7351) +const { MockInterceptor } = __nccwpck_require__(3237) +const Symbols = __nccwpck_require__(3373) +const { InvalidArgumentError } = __nccwpck_require__(5933) /** * MockPool provides an API that extends the Pool to influence the mockDispatches. @@ -10880,7 +10880,7 @@ module.exports = MockPool /***/ }), -/***/ 2305: +/***/ 7351: /***/ ((module) => { @@ -10910,20 +10910,20 @@ module.exports = { /***/ }), -/***/ 3193: +/***/ 987: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { MockNotMatchedError } = __nccwpck_require__(2673) +const { MockNotMatchedError } = __nccwpck_require__(2863) const { kDispatches, kMockAgent, kOriginalDispatch, kOrigin, kGetNetConnect -} = __nccwpck_require__(2305) -const { buildURL } = __nccwpck_require__(9500) +} = __nccwpck_require__(7351) +const { buildURL } = __nccwpck_require__(7662) const { STATUS_CODES } = __nccwpck_require__(7067) const { types: { @@ -11284,7 +11284,7 @@ module.exports = { /***/ }), -/***/ 5738: +/***/ 3576: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -11334,7 +11334,7 @@ module.exports = class PendingInterceptorsFormatter { /***/ }), -/***/ 5773: +/***/ 899: /***/ ((module) => { @@ -11370,7 +11370,7 @@ module.exports = class Pluralizer { /***/ }), -/***/ 4591: +/***/ 7797: /***/ ((module) => { @@ -11800,20 +11800,20 @@ module.exports = { /***/ }), -/***/ 9918: +/***/ 3416: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kConstruct } = __nccwpck_require__(8329) -const { urlEquals, getFieldValues } = __nccwpck_require__(3762) -const { kEnumerableProperty, isDisturbed } = __nccwpck_require__(9500) -const { webidl } = __nccwpck_require__(4625) -const { Response, cloneResponse, fromInnerResponse } = __nccwpck_require__(7287) -const { Request, fromInnerRequest } = __nccwpck_require__(9683) -const { kState } = __nccwpck_require__(3175) -const { fetching } = __nccwpck_require__(4202) -const { urlIsHttpHttpsScheme, createDeferredPromise, readAllBytes } = __nccwpck_require__(1204) +const { kConstruct } = __nccwpck_require__(7747) +const { urlEquals, getFieldValues } = __nccwpck_require__(9272) +const { kEnumerableProperty, isDisturbed } = __nccwpck_require__(7662) +const { webidl } = __nccwpck_require__(9735) +const { Response, cloneResponse, fromInnerResponse } = __nccwpck_require__(2873) +const { Request, fromInnerRequest } = __nccwpck_require__(557) +const { kState } = __nccwpck_require__(1) +const { fetching } = __nccwpck_require__(224) +const { urlIsHttpHttpsScheme, createDeferredPromise, readAllBytes } = __nccwpck_require__(7722) const assert = __nccwpck_require__(4589) /** @@ -12666,15 +12666,15 @@ module.exports = { /***/ }), -/***/ 6577: +/***/ 4215: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kConstruct } = __nccwpck_require__(8329) -const { Cache } = __nccwpck_require__(9918) -const { webidl } = __nccwpck_require__(4625) -const { kEnumerableProperty } = __nccwpck_require__(9500) +const { kConstruct } = __nccwpck_require__(7747) +const { Cache } = __nccwpck_require__(3416) +const { webidl } = __nccwpck_require__(9735) +const { kEnumerableProperty } = __nccwpck_require__(7662) class CacheStorage { /** @@ -12825,26 +12825,26 @@ module.exports = { /***/ }), -/***/ 8329: +/***/ 7747: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { module.exports = { - kConstruct: (__nccwpck_require__(8031).kConstruct) + kConstruct: (__nccwpck_require__(3373).kConstruct) } /***/ }), -/***/ 3762: +/***/ 9272: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { URLSerializer } = __nccwpck_require__(192) -const { isValidHeaderName } = __nccwpck_require__(1204) +const { URLSerializer } = __nccwpck_require__(8394) +const { isValidHeaderName } = __nccwpck_require__(7722) /** * @see https://url.spec.whatwg.org/#concept-url-equals @@ -12889,7 +12889,7 @@ module.exports = { /***/ }), -/***/ 5848: +/***/ 1574: /***/ ((module) => { @@ -12908,15 +12908,15 @@ module.exports = { /***/ }), -/***/ 7889: +/***/ 8659: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { parseSetCookie } = __nccwpck_require__(1814) -const { stringify } = __nccwpck_require__(185) -const { webidl } = __nccwpck_require__(4625) -const { Headers } = __nccwpck_require__(3408) +const { parseSetCookie } = __nccwpck_require__(3804) +const { stringify } = __nccwpck_require__(3643) +const { webidl } = __nccwpck_require__(9735) +const { Headers } = __nccwpck_require__(8146) /** * @typedef {Object} Cookie @@ -13099,14 +13099,14 @@ module.exports = { /***/ }), -/***/ 1814: +/***/ 3804: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { maxNameValuePairSize, maxAttributeValueSize } = __nccwpck_require__(5848) -const { isCTLExcludingHtab } = __nccwpck_require__(185) -const { collectASequenceOfCodePointsFast } = __nccwpck_require__(192) +const { maxNameValuePairSize, maxAttributeValueSize } = __nccwpck_require__(1574) +const { isCTLExcludingHtab } = __nccwpck_require__(3643) +const { collectASequenceOfCodePointsFast } = __nccwpck_require__(8394) const assert = __nccwpck_require__(4589) /** @@ -13423,7 +13423,7 @@ module.exports = { /***/ }), -/***/ 185: +/***/ 3643: /***/ ((module) => { @@ -13712,12 +13712,12 @@ module.exports = { /***/ }), -/***/ 8819: +/***/ 6521: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Transform } = __nccwpck_require__(7075) -const { isASCIINumber, isValidLastEventId } = __nccwpck_require__(3943) +const { isASCIINumber, isValidLastEventId } = __nccwpck_require__(6293) /** * @type {number[]} BOM @@ -14117,22 +14117,22 @@ module.exports = { /***/ }), -/***/ 7042: +/***/ 3276: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { pipeline } = __nccwpck_require__(7075) -const { fetching } = __nccwpck_require__(4202) -const { makeRequest } = __nccwpck_require__(9683) -const { webidl } = __nccwpck_require__(4625) -const { EventSourceStream } = __nccwpck_require__(8819) -const { parseMIMEType } = __nccwpck_require__(192) -const { createFastMessageEvent } = __nccwpck_require__(6760) -const { isNetworkError } = __nccwpck_require__(7287) -const { delay } = __nccwpck_require__(3943) -const { kEnumerableProperty } = __nccwpck_require__(9500) -const { environmentSettingsObject } = __nccwpck_require__(1204) +const { fetching } = __nccwpck_require__(224) +const { makeRequest } = __nccwpck_require__(557) +const { webidl } = __nccwpck_require__(9735) +const { EventSourceStream } = __nccwpck_require__(6521) +const { parseMIMEType } = __nccwpck_require__(8394) +const { createFastMessageEvent } = __nccwpck_require__(7690) +const { isNetworkError } = __nccwpck_require__(2873) +const { delay } = __nccwpck_require__(6293) +const { kEnumerableProperty } = __nccwpck_require__(7662) +const { environmentSettingsObject } = __nccwpck_require__(7722) let experimentalWarned = false @@ -14604,7 +14604,7 @@ module.exports = { /***/ }), -/***/ 3943: +/***/ 6293: /***/ ((module) => { @@ -14648,12 +14648,12 @@ module.exports = { /***/ }), -/***/ 1448: +/***/ 4086: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const util = __nccwpck_require__(9500) +const util = __nccwpck_require__(7662) const { ReadableStreamFrom, isBlobLike, @@ -14663,16 +14663,16 @@ const { fullyReadBody, extractMimeType, utf8DecodeBytes -} = __nccwpck_require__(1204) -const { FormData } = __nccwpck_require__(3818) -const { kState } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) +} = __nccwpck_require__(7722) +const { FormData } = __nccwpck_require__(8932) +const { kState } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) const { Blob } = __nccwpck_require__(4573) const assert = __nccwpck_require__(4589) const { isErrored, isDisturbed } = __nccwpck_require__(7075) const { isArrayBuffer } = __nccwpck_require__(3429) -const { serializeAMimeType } = __nccwpck_require__(192) -const { multipartFormDataParser } = __nccwpck_require__(8016) +const { serializeAMimeType } = __nccwpck_require__(8394) +const { multipartFormDataParser } = __nccwpck_require__(6442) let random try { @@ -15184,7 +15184,7 @@ module.exports = { /***/ }), -/***/ 4219: +/***/ 1797: /***/ ((module) => { @@ -15315,7 +15315,7 @@ module.exports = { /***/ }), -/***/ 192: +/***/ 8394: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -16066,12 +16066,12 @@ module.exports = { /***/ }), -/***/ 8905: +/***/ 379: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kConnected, kSize } = __nccwpck_require__(8031) +const { kConnected, kSize } = __nccwpck_require__(3373) class CompatWeakRef { constructor (value) { @@ -16119,14 +16119,14 @@ module.exports = function () { /***/ }), -/***/ 3486: +/***/ 2944: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Blob, File } = __nccwpck_require__(4573) -const { kState } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) +const { kState } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) // TODO(@KhafraDev): remove class FileLike { @@ -16252,16 +16252,16 @@ module.exports = { FileLike, isFileLike } /***/ }), -/***/ 8016: +/***/ 6442: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { isUSVString, bufferToLowerCasedHeaderName } = __nccwpck_require__(9500) -const { utf8DecodeBytes } = __nccwpck_require__(1204) -const { HTTP_TOKEN_CODEPOINTS, isomorphicDecode } = __nccwpck_require__(192) -const { isFileLike } = __nccwpck_require__(3486) -const { makeEntry } = __nccwpck_require__(3818) +const { isUSVString, bufferToLowerCasedHeaderName } = __nccwpck_require__(7662) +const { utf8DecodeBytes } = __nccwpck_require__(7722) +const { HTTP_TOKEN_CODEPOINTS, isomorphicDecode } = __nccwpck_require__(8394) +const { isFileLike } = __nccwpck_require__(2944) +const { makeEntry } = __nccwpck_require__(8932) const assert = __nccwpck_require__(4589) const { File: NodeFile } = __nccwpck_require__(4573) @@ -16733,16 +16733,16 @@ module.exports = { /***/ }), -/***/ 3818: +/***/ 8932: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { isBlobLike, iteratorMixin } = __nccwpck_require__(1204) -const { kState } = __nccwpck_require__(3175) -const { kEnumerableProperty } = __nccwpck_require__(9500) -const { FileLike, isFileLike } = __nccwpck_require__(3486) -const { webidl } = __nccwpck_require__(4625) +const { isBlobLike, iteratorMixin } = __nccwpck_require__(7722) +const { kState } = __nccwpck_require__(1) +const { kEnumerableProperty } = __nccwpck_require__(7662) +const { FileLike, isFileLike } = __nccwpck_require__(2944) +const { webidl } = __nccwpck_require__(9735) const { File: NativeFile } = __nccwpck_require__(4573) const nodeUtil = __nccwpck_require__(7975) @@ -16992,7 +16992,7 @@ module.exports = { FormData, makeEntry } /***/ }), -/***/ 5311: +/***/ 777: /***/ ((module) => { @@ -17039,21 +17039,21 @@ module.exports = { /***/ }), -/***/ 3408: +/***/ 8146: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // https://github.com/Ethan-Arrowood/undici-fetch -const { kConstruct } = __nccwpck_require__(8031) -const { kEnumerableProperty } = __nccwpck_require__(9500) +const { kConstruct } = __nccwpck_require__(3373) +const { kEnumerableProperty } = __nccwpck_require__(7662) const { iteratorMixin, isValidHeaderName, isValidHeaderValue -} = __nccwpck_require__(1204) -const { webidl } = __nccwpck_require__(4625) +} = __nccwpck_require__(7722) +const { webidl } = __nccwpck_require__(9735) const assert = __nccwpck_require__(4589) const util = __nccwpck_require__(7975) @@ -17733,7 +17733,7 @@ module.exports = { /***/ }), -/***/ 4202: +/***/ 224: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // https://github.com/Ethan-Arrowood/undici-fetch @@ -17746,9 +17746,9 @@ const { filterResponse, makeResponse, fromInnerResponse -} = __nccwpck_require__(7287) -const { HeadersList } = __nccwpck_require__(3408) -const { Request, cloneRequest } = __nccwpck_require__(9683) +} = __nccwpck_require__(2873) +const { HeadersList } = __nccwpck_require__(8146) +const { Request, cloneRequest } = __nccwpck_require__(557) const zlib = __nccwpck_require__(8522) const { bytesMatch, @@ -17784,23 +17784,23 @@ const { buildContentRange, createInflate, extractMimeType -} = __nccwpck_require__(1204) -const { kState, kDispatcher } = __nccwpck_require__(3175) +} = __nccwpck_require__(7722) +const { kState, kDispatcher } = __nccwpck_require__(1) const assert = __nccwpck_require__(4589) -const { safelyExtractBody, extractBody } = __nccwpck_require__(1448) +const { safelyExtractBody, extractBody } = __nccwpck_require__(4086) const { redirectStatusSet, nullBodyStatus, safeMethodsSet, requestBodyHeader, subresourceSet -} = __nccwpck_require__(4219) +} = __nccwpck_require__(1797) const EE = __nccwpck_require__(8474) const { Readable, pipeline, finished } = __nccwpck_require__(7075) -const { addAbortListener, isErrored, isReadable, bufferToLowerCasedHeaderName } = __nccwpck_require__(9500) -const { dataURLProcessor, serializeAMimeType, minimizeSupportedMimeType } = __nccwpck_require__(192) -const { getGlobalDispatcher } = __nccwpck_require__(1481) -const { webidl } = __nccwpck_require__(4625) +const { addAbortListener, isErrored, isReadable, bufferToLowerCasedHeaderName } = __nccwpck_require__(7662) +const { dataURLProcessor, serializeAMimeType, minimizeSupportedMimeType } = __nccwpck_require__(8394) +const { getGlobalDispatcher } = __nccwpck_require__(8707) +const { webidl } = __nccwpck_require__(9735) const { STATUS_CODES } = __nccwpck_require__(7067) const GET_OR_HEAD = ['GET', 'HEAD'] @@ -20012,23 +20012,23 @@ module.exports = { /***/ }), -/***/ 9683: +/***/ 557: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /* globals AbortController */ -const { extractBody, mixinBody, cloneBody, bodyUnusable } = __nccwpck_require__(1448) -const { Headers, fill: fillHeaders, HeadersList, setHeadersGuard, getHeadersGuard, setHeadersList, getHeadersList } = __nccwpck_require__(3408) -const { FinalizationRegistry } = __nccwpck_require__(8905)() -const util = __nccwpck_require__(9500) +const { extractBody, mixinBody, cloneBody, bodyUnusable } = __nccwpck_require__(4086) +const { Headers, fill: fillHeaders, HeadersList, setHeadersGuard, getHeadersGuard, setHeadersList, getHeadersList } = __nccwpck_require__(8146) +const { FinalizationRegistry } = __nccwpck_require__(379)() +const util = __nccwpck_require__(7662) const nodeUtil = __nccwpck_require__(7975) const { isValidHTTPToken, sameOrigin, environmentSettingsObject -} = __nccwpck_require__(1204) +} = __nccwpck_require__(7722) const { forbiddenMethodsSet, corsSafeListedMethodsSet, @@ -20038,12 +20038,12 @@ const { requestCredentials, requestCache, requestDuplex -} = __nccwpck_require__(4219) +} = __nccwpck_require__(1797) const { kEnumerableProperty, normalizedMethodRecordsBase, normalizedMethodRecords } = util -const { kHeaders, kSignal, kState, kDispatcher } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) -const { URLSerializer } = __nccwpck_require__(192) -const { kConstruct } = __nccwpck_require__(8031) +const { kHeaders, kSignal, kState, kDispatcher } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) +const { URLSerializer } = __nccwpck_require__(8394) +const { kConstruct } = __nccwpck_require__(3373) const assert = __nccwpck_require__(4589) const { getMaxListeners, setMaxListeners, getEventListeners, defaultMaxListeners } = __nccwpck_require__(8474) @@ -21056,14 +21056,14 @@ module.exports = { Request, makeRequest, fromInnerRequest, cloneRequest } /***/ }), -/***/ 7287: +/***/ 2873: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { Headers, HeadersList, fill, getHeadersGuard, setHeadersGuard, setHeadersList } = __nccwpck_require__(3408) -const { extractBody, cloneBody, mixinBody, hasFinalizationRegistry, streamRegistry, bodyUnusable } = __nccwpck_require__(1448) -const util = __nccwpck_require__(9500) +const { Headers, HeadersList, fill, getHeadersGuard, setHeadersGuard, setHeadersList } = __nccwpck_require__(8146) +const { extractBody, cloneBody, mixinBody, hasFinalizationRegistry, streamRegistry, bodyUnusable } = __nccwpck_require__(4086) +const util = __nccwpck_require__(7662) const nodeUtil = __nccwpck_require__(7975) const { kEnumerableProperty } = util const { @@ -21075,16 +21075,16 @@ const { isErrorLike, isomorphicEncode, environmentSettingsObject: relevantRealm -} = __nccwpck_require__(1204) +} = __nccwpck_require__(7722) const { redirectStatusSet, nullBodyStatus -} = __nccwpck_require__(4219) -const { kState, kHeaders } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) -const { FormData } = __nccwpck_require__(3818) -const { URLSerializer } = __nccwpck_require__(192) -const { kConstruct } = __nccwpck_require__(8031) +} = __nccwpck_require__(1797) +const { kState, kHeaders } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) +const { FormData } = __nccwpck_require__(8932) +const { URLSerializer } = __nccwpck_require__(8394) +const { kConstruct } = __nccwpck_require__(3373) const assert = __nccwpck_require__(4589) const { types } = __nccwpck_require__(7975) @@ -21673,7 +21673,7 @@ module.exports = { /***/ }), -/***/ 3175: +/***/ 1: /***/ ((module) => { @@ -21689,21 +21689,21 @@ module.exports = { /***/ }), -/***/ 1204: +/***/ 7722: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Transform } = __nccwpck_require__(7075) const zlib = __nccwpck_require__(8522) -const { redirectStatusSet, referrerPolicySet: referrerPolicyTokens, badPortsSet } = __nccwpck_require__(4219) -const { getGlobalOrigin } = __nccwpck_require__(5311) -const { collectASequenceOfCodePoints, collectAnHTTPQuotedString, removeChars, parseMIMEType } = __nccwpck_require__(192) +const { redirectStatusSet, referrerPolicySet: referrerPolicyTokens, badPortsSet } = __nccwpck_require__(1797) +const { getGlobalOrigin } = __nccwpck_require__(777) +const { collectASequenceOfCodePoints, collectAnHTTPQuotedString, removeChars, parseMIMEType } = __nccwpck_require__(8394) const { performance } = __nccwpck_require__(643) -const { isBlobLike, ReadableStreamFrom, isValidHTTPToken, normalizedMethodRecordsBase } = __nccwpck_require__(9500) +const { isBlobLike, ReadableStreamFrom, isValidHTTPToken, normalizedMethodRecordsBase } = __nccwpck_require__(7662) const assert = __nccwpck_require__(4589) const { isUint8Array } = __nccwpck_require__(3429) -const { webidl } = __nccwpck_require__(4625) +const { webidl } = __nccwpck_require__(9735) let supportedHashes = [] @@ -23328,14 +23328,14 @@ module.exports = { /***/ }), -/***/ 4625: +/***/ 9735: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { types, inspect } = __nccwpck_require__(7975) const { markAsUncloneable } = __nccwpck_require__(5919) -const { toUSVString } = __nccwpck_require__(9500) +const { toUSVString } = __nccwpck_require__(7662) /** @type {import('../../../types/webidl').Webidl} */ const webidl = {} @@ -24030,7 +24030,7 @@ module.exports = { /***/ }), -/***/ 1691: +/***/ 2705: /***/ ((module) => { @@ -24327,7 +24327,7 @@ module.exports = { /***/ }), -/***/ 6575: +/***/ 7669: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -24336,16 +24336,16 @@ const { staticPropertyDescriptors, readOperation, fireAProgressEvent -} = __nccwpck_require__(6014) +} = __nccwpck_require__(8912) const { kState, kError, kResult, kEvents, kAborted -} = __nccwpck_require__(8445) -const { webidl } = __nccwpck_require__(4625) -const { kEnumerableProperty } = __nccwpck_require__(9500) +} = __nccwpck_require__(6107) +const { webidl } = __nccwpck_require__(9735) +const { kEnumerableProperty } = __nccwpck_require__(7662) class FileReader extends EventTarget { constructor () { @@ -24678,12 +24678,12 @@ module.exports = { /***/ }), -/***/ 9393: +/***/ 1367: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { webidl } = __nccwpck_require__(4625) +const { webidl } = __nccwpck_require__(9735) const kState = Symbol('ProgressEvent state') @@ -24763,7 +24763,7 @@ module.exports = { /***/ }), -/***/ 8445: +/***/ 6107: /***/ ((module) => { @@ -24780,7 +24780,7 @@ module.exports = { /***/ }), -/***/ 6014: +/***/ 8912: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -24791,12 +24791,12 @@ const { kResult, kAborted, kLastProgressEventFired -} = __nccwpck_require__(8445) -const { ProgressEvent } = __nccwpck_require__(9393) -const { getEncoding } = __nccwpck_require__(1691) -const { serializeAMimeType, parseMIMEType } = __nccwpck_require__(192) +} = __nccwpck_require__(6107) +const { ProgressEvent } = __nccwpck_require__(1367) +const { getEncoding } = __nccwpck_require__(2705) +const { serializeAMimeType, parseMIMEType } = __nccwpck_require__(8394) const { types } = __nccwpck_require__(7975) -const { StringDecoder } = __nccwpck_require__(5574) +const { StringDecoder } = __nccwpck_require__(3193) const { btoa } = __nccwpck_require__(4573) /** @type {PropertyDescriptor} */ @@ -25178,27 +25178,27 @@ module.exports = { /***/ }), -/***/ 773: +/***/ 9431: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { uid, states, sentCloseFrameState, emptyBuffer, opcodes } = __nccwpck_require__(7119) +const { uid, states, sentCloseFrameState, emptyBuffer, opcodes } = __nccwpck_require__(5214) const { kReadyState, kSentClose, kByteParser, kReceivedClose, kResponse -} = __nccwpck_require__(4911) -const { fireEvent, failWebsocketConnection, isClosing, isClosed, isEstablished, parseExtensions } = __nccwpck_require__(965) -const { channels } = __nccwpck_require__(5458) -const { CloseEvent } = __nccwpck_require__(6760) -const { makeRequest } = __nccwpck_require__(9683) -const { fetching } = __nccwpck_require__(4202) -const { Headers, getHeadersList } = __nccwpck_require__(3408) -const { getDecodeSplit } = __nccwpck_require__(1204) -const { WebsocketFrameSend } = __nccwpck_require__(9676) +} = __nccwpck_require__(1150) +const { fireEvent, failWebsocketConnection, isClosing, isClosed, isEstablished, parseExtensions } = __nccwpck_require__(3155) +const { channels } = __nccwpck_require__(8560) +const { CloseEvent } = __nccwpck_require__(7690) +const { makeRequest } = __nccwpck_require__(557) +const { fetching } = __nccwpck_require__(224) +const { Headers, getHeadersList } = __nccwpck_require__(8146) +const { getDecodeSplit } = __nccwpck_require__(7722) +const { WebsocketFrameSend } = __nccwpck_require__(2438) /** @type {import('crypto')} */ let crypto @@ -25556,7 +25556,7 @@ module.exports = { /***/ }), -/***/ 7119: +/***/ 5214: /***/ ((module) => { @@ -25629,14 +25629,14 @@ module.exports = { /***/ }), -/***/ 6760: +/***/ 7690: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { webidl } = __nccwpck_require__(4625) -const { kEnumerableProperty } = __nccwpck_require__(9500) -const { kConstruct } = __nccwpck_require__(8031) +const { webidl } = __nccwpck_require__(9735) +const { kEnumerableProperty } = __nccwpck_require__(7662) +const { kConstruct } = __nccwpck_require__(3373) const { MessagePort } = __nccwpck_require__(5919) /** @@ -25965,12 +25965,12 @@ module.exports = { /***/ }), -/***/ 9676: +/***/ 2438: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { maxUnsigned16Bit } = __nccwpck_require__(7119) +const { maxUnsigned16Bit } = __nccwpck_require__(5214) const BUFFER_SIZE = 16386 @@ -26068,14 +26068,14 @@ module.exports = { /***/ }), -/***/ 4841: +/***/ 4739: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { createInflateRaw, Z_DEFAULT_WINDOWBITS } = __nccwpck_require__(8522) -const { isValidClientWindowBits } = __nccwpck_require__(965) -const { MessageSizeExceededError } = __nccwpck_require__(3959) +const { isValidClientWindowBits } = __nccwpck_require__(3155) +const { MessageSizeExceededError } = __nccwpck_require__(5933) const tail = Buffer.from([0x00, 0x00, 0xff, 0xff]) const kBuffer = Symbol('kBuffer') @@ -26193,16 +26193,16 @@ module.exports = { PerMessageDeflate } /***/ }), -/***/ 1872: +/***/ 2502: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Writable } = __nccwpck_require__(7075) const assert = __nccwpck_require__(4589) -const { parserStates, opcodes, states, emptyBuffer, sentCloseFrameState } = __nccwpck_require__(7119) -const { kReadyState, kSentClose, kResponse, kReceivedClose } = __nccwpck_require__(4911) -const { channels } = __nccwpck_require__(5458) +const { parserStates, opcodes, states, emptyBuffer, sentCloseFrameState } = __nccwpck_require__(5214) +const { kReadyState, kSentClose, kResponse, kReceivedClose } = __nccwpck_require__(1150) +const { channels } = __nccwpck_require__(8560) const { isValidStatusCode, isValidOpcode, @@ -26212,10 +26212,10 @@ const { isControlFrame, isTextBinaryFrame, isContinuationFrame -} = __nccwpck_require__(965) -const { WebsocketFrameSend } = __nccwpck_require__(9676) -const { closeWebSocketConnection } = __nccwpck_require__(773) -const { PerMessageDeflate } = __nccwpck_require__(4841) +} = __nccwpck_require__(3155) +const { WebsocketFrameSend } = __nccwpck_require__(2438) +const { closeWebSocketConnection } = __nccwpck_require__(9431) +const { PerMessageDeflate } = __nccwpck_require__(4739) // This code was influenced by ws released under the MIT license. // Copyright (c) 2011 Einar Otto Stangvik @@ -26627,14 +26627,14 @@ module.exports = { /***/ }), -/***/ 504: +/***/ 7562: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { WebsocketFrameSend } = __nccwpck_require__(9676) -const { opcodes, sendHints } = __nccwpck_require__(7119) -const FixedQueue = __nccwpck_require__(5464) +const { WebsocketFrameSend } = __nccwpck_require__(2438) +const { opcodes, sendHints } = __nccwpck_require__(5214) +const FixedQueue = __nccwpck_require__(1034) /** @type {typeof Uint8Array} */ const FastBuffer = Buffer[Symbol.species] @@ -26738,7 +26738,7 @@ module.exports = { SendQueue } /***/ }), -/***/ 4911: +/***/ 1150: /***/ ((module) => { @@ -26757,16 +26757,16 @@ module.exports = { /***/ }), -/***/ 965: +/***/ 3155: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kReadyState, kController, kResponse, kBinaryType, kWebSocketURL } = __nccwpck_require__(4911) -const { states, opcodes } = __nccwpck_require__(7119) -const { ErrorEvent, createFastMessageEvent } = __nccwpck_require__(6760) +const { kReadyState, kController, kResponse, kBinaryType, kWebSocketURL } = __nccwpck_require__(1150) +const { states, opcodes } = __nccwpck_require__(5214) +const { ErrorEvent, createFastMessageEvent } = __nccwpck_require__(7690) const { isUtf8 } = __nccwpck_require__(4573) -const { collectASequenceOfCodePointsFast, removeHTTPWhitespace } = __nccwpck_require__(192) +const { collectASequenceOfCodePointsFast, removeHTTPWhitespace } = __nccwpck_require__(8394) /* globals Blob */ @@ -27086,15 +27086,15 @@ module.exports = { /***/ }), -/***/ 2522: +/***/ 7836: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { webidl } = __nccwpck_require__(4625) -const { URLSerializer } = __nccwpck_require__(192) -const { environmentSettingsObject } = __nccwpck_require__(1204) -const { staticPropertyDescriptors, states, sentCloseFrameState, sendHints } = __nccwpck_require__(7119) +const { webidl } = __nccwpck_require__(9735) +const { URLSerializer } = __nccwpck_require__(8394) +const { environmentSettingsObject } = __nccwpck_require__(7722) +const { staticPropertyDescriptors, states, sentCloseFrameState, sendHints } = __nccwpck_require__(5214) const { kWebSocketURL, kReadyState, @@ -27103,21 +27103,21 @@ const { kResponse, kSentClose, kByteParser -} = __nccwpck_require__(4911) +} = __nccwpck_require__(1150) const { isConnecting, isEstablished, isClosing, isValidSubprotocol, fireEvent -} = __nccwpck_require__(965) -const { establishWebSocketConnection, closeWebSocketConnection } = __nccwpck_require__(773) -const { ByteParser } = __nccwpck_require__(1872) -const { kEnumerableProperty, isBlobLike } = __nccwpck_require__(9500) -const { getGlobalDispatcher } = __nccwpck_require__(1481) +} = __nccwpck_require__(3155) +const { establishWebSocketConnection, closeWebSocketConnection } = __nccwpck_require__(9431) +const { ByteParser } = __nccwpck_require__(2502) +const { kEnumerableProperty, isBlobLike } = __nccwpck_require__(7662) +const { getGlobalDispatcher } = __nccwpck_require__(8707) const { types } = __nccwpck_require__(7975) -const { ErrorEvent, CloseEvent } = __nccwpck_require__(6760) -const { SendQueue } = __nccwpck_require__(504) +const { ErrorEvent, CloseEvent } = __nccwpck_require__(7690) +const { SendQueue } = __nccwpck_require__(7562) // https://websockets.spec.whatwg.org/#interface-definition class WebSocket extends EventTarget { @@ -27856,7 +27856,7 @@ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:zlib"); /***/ }), -/***/ 5574: +/***/ 3193: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("string_decoder"); @@ -27923,7 +27923,7 @@ const external_node_fs_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import const promises_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:fs/promises"); ;// CONCATENATED MODULE: external "os" const external_os_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("os"); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/utils.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/utils.js // We use any as a valid input type /* eslint-disable @typescript-eslint/no-explicit-any */ /** @@ -27959,7 +27959,7 @@ function utils_toCommandProperties(annotationProperties) { }; } //# sourceMappingURL=utils.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/command.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/command.js /** @@ -28055,7 +28055,7 @@ function escapeProperty(s) { const external_crypto_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("crypto"); ;// CONCATENATED MODULE: external "fs" const external_fs_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("fs"); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/file-command.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/file-command.js // For internal use, subject to change. // We use any as a valid input type /* eslint-disable @typescript-eslint/no-explicit-any */ @@ -28096,7 +28096,7 @@ const external_path_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.me var external_http_ = __nccwpck_require__(8611); // EXTERNAL MODULE: external "https" var external_https_ = __nccwpck_require__(5692); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/node_modules/@actions/http-client/lib/proxy.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+http-client@4.0.0/node_modules/@actions/http-client/lib/proxy.js function getProxyUrl(reqUrl) { const usingSsl = reqUrl.protocol === 'https:'; if (checkBypass(reqUrl)) { @@ -28187,11 +28187,11 @@ class DecodedURL extends URL { } } //# sourceMappingURL=proxy.js.map -// EXTERNAL MODULE: ../../node_modules/tunnel/index.js -var node_modules_tunnel = __nccwpck_require__(5070); -// EXTERNAL MODULE: ../../node_modules/undici/index.js -var undici = __nccwpck_require__(1684); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/node_modules/@actions/http-client/lib/index.js +// EXTERNAL MODULE: ../../node_modules/.pnpm/tunnel@0.0.6/node_modules/tunnel/index.js +var node_modules_tunnel = __nccwpck_require__(7285); +// EXTERNAL MODULE: ../../node_modules/.pnpm/undici@6.24.1/node_modules/undici/index.js +var undici = __nccwpck_require__(4906); +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+http-client@4.0.0/node_modules/@actions/http-client/lib/index.js /* eslint-disable @typescript-eslint/no-explicit-any */ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } @@ -28888,7 +28888,7 @@ class lib_HttpClient { } const lowercaseKeys = (obj) => Object.keys(obj).reduce((c, k) => ((c[k.toLowerCase()] = obj[k]), c), {}); //# sourceMappingURL=index.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/node_modules/@actions/http-client/lib/auth.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+http-client@4.0.0/node_modules/@actions/http-client/lib/auth.js var auth_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -28964,7 +28964,7 @@ class PersonalAccessTokenCredentialHandler { } } //# sourceMappingURL=auth.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/oidc-utils.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/oidc-utils.js var oidc_utils_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -29038,7 +29038,7 @@ class oidc_utils_OidcClient { } } //# sourceMappingURL=oidc-utils.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/summary.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/summary.js var summary_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -29319,7 +29319,7 @@ const _summary = new Summary(); const markdownSummary = (/* unused pure expression or super */ null && (_summary)); const summary = (/* unused pure expression or super */ null && (_summary)); //# sourceMappingURL=summary.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/path-utils.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/path-utils.js /** * toPosixPath converts the given path to the posix form. On Windows, \\ will be @@ -29354,14 +29354,14 @@ function toPlatformPath(pth) { } //# sourceMappingURL=path-utils.js.map // EXTERNAL MODULE: external "string_decoder" -var external_string_decoder_ = __nccwpck_require__(5574); +var external_string_decoder_ = __nccwpck_require__(3193); // EXTERNAL MODULE: external "events" var external_events_ = __nccwpck_require__(4434); ;// CONCATENATED MODULE: external "child_process" const external_child_process_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("child_process"); // EXTERNAL MODULE: external "assert" var external_assert_ = __nccwpck_require__(2613); -;// CONCATENATED MODULE: ../../node_modules/@actions/io/lib/io-util.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+io@3.0.2/node_modules/@actions/io/lib/io-util.js var io_util_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -29541,7 +29541,7 @@ function getCmdPath() { return (_a = process.env['COMSPEC']) !== null && _a !== void 0 ? _a : `cmd.exe`; } //# sourceMappingURL=io-util.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/io/lib/io.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+io@3.0.2/node_modules/@actions/io/lib/io.js var io_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -29815,7 +29815,7 @@ function io_copyFile(srcFile, destFile, force) { //# sourceMappingURL=io.js.map ;// CONCATENATED MODULE: external "timers" const external_timers_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("timers"); -;// CONCATENATED MODULE: ../../node_modules/@actions/exec/lib/toolrunner.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+exec@3.0.0/node_modules/@actions/exec/lib/toolrunner.js var toolrunner_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -30403,7 +30403,7 @@ class ExecState extends external_events_.EventEmitter { } } //# sourceMappingURL=toolrunner.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/exec/lib/exec.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+exec@3.0.0/node_modules/@actions/exec/lib/exec.js var exec_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -30483,7 +30483,7 @@ function getExecOutput(commandLine, args, options) { }); } //# sourceMappingURL=exec.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/platform.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/platform.js var platform_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -30548,7 +30548,7 @@ function getDetails() { }); } //# sourceMappingURL=platform.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/core.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/core.js var core_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { diff --git a/.github/actions/merge-and-write-changelogs/index.js b/.github/actions/merge-and-write-changelogs/index.js index 2bf7136b21..595b19c7dc 100644 --- a/.github/actions/merge-and-write-changelogs/index.js +++ b/.github/actions/merge-and-write-changelogs/index.js @@ -1,7 +1,7 @@ import { createRequire as __WEBPACK_EXTERNAL_createRequire } from "module"; /******/ var __webpack_modules__ = ({ -/***/ 7543: +/***/ 9286: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -11,7 +11,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true })); var path = __nccwpck_require__(6928); var fs = __nccwpck_require__(9896); var fsp = __nccwpck_require__(1943); -var tools = __nccwpck_require__(9341); +var tools = __nccwpck_require__(807); function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } @@ -175,21 +175,21 @@ exports.findRootSync = findRootSync; /***/ }), -/***/ 7014: +/***/ 1307: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { if (process.env.NODE_ENV === "production") { - module.exports = __nccwpck_require__(1071); + module.exports = __nccwpck_require__(7544); } else { - module.exports = __nccwpck_require__(7543); + module.exports = __nccwpck_require__(9286); } /***/ }), -/***/ 1071: +/***/ 7544: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -199,7 +199,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true })); var path = __nccwpck_require__(6928); var fs = __nccwpck_require__(9896); var fsp = __nccwpck_require__(1943); -var tools = __nccwpck_require__(9341); +var tools = __nccwpck_require__(807); function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } @@ -363,7 +363,7 @@ exports.findRootSync = findRootSync; /***/ }), -/***/ 7959: +/***/ 9425: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { var __webpack_unused_export__; @@ -372,7 +372,7 @@ var __webpack_unused_export__; __webpack_unused_export__ = ({ value: true }); var path = __nccwpck_require__(6928); -var findRoot = __nccwpck_require__(7014); +var findRoot = __nccwpck_require__(1307); function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } @@ -434,21 +434,21 @@ __webpack_unused_export__ = getPackagesSync; /***/ }), -/***/ 886: +/***/ 4344: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { if (process.env.NODE_ENV === "production") { - module.exports = __nccwpck_require__(8095); + module.exports = __nccwpck_require__(2313); } else { - module.exports = __nccwpck_require__(7959); + module.exports = __nccwpck_require__(9425); } /***/ }), -/***/ 8095: +/***/ 2313: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { var __webpack_unused_export__; @@ -457,7 +457,7 @@ var __webpack_unused_export__; __webpack_unused_export__ = ({ value: true }); var path = __nccwpck_require__(6928); -var findRoot = __nccwpck_require__(7014); +var findRoot = __nccwpck_require__(1307); function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } @@ -519,7 +519,7 @@ __webpack_unused_export__ = getPackagesSync; /***/ }), -/***/ 2792: +/***/ 229: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -528,10 +528,10 @@ Object.defineProperty(exports, "__esModule", ({ value: true })); var path = __nccwpck_require__(6928); var fsp = __nccwpck_require__(1943); -var glob = __nccwpck_require__(484); +var glob = __nccwpck_require__(2457); var fs = __nccwpck_require__(9896); -var yaml = __nccwpck_require__(677); -var jju = __nccwpck_require__(1871); +var yaml = __nccwpck_require__(5309); +var jju = __nccwpck_require__(9656); function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } @@ -1121,21 +1121,21 @@ exports.YarnTool = YarnTool; /***/ }), -/***/ 9341: +/***/ 807: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { if (process.env.NODE_ENV === "production") { - module.exports = __nccwpck_require__(4962); + module.exports = __nccwpck_require__(4452); } else { - module.exports = __nccwpck_require__(2792); + module.exports = __nccwpck_require__(229); } /***/ }), -/***/ 4962: +/***/ 4452: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -1144,10 +1144,10 @@ Object.defineProperty(exports, "__esModule", ({ value: true })); var path = __nccwpck_require__(6928); var fsp = __nccwpck_require__(1943); -var glob = __nccwpck_require__(484); +var glob = __nccwpck_require__(2457); var fs = __nccwpck_require__(9896); -var yaml = __nccwpck_require__(677); -var jju = __nccwpck_require__(1871); +var yaml = __nccwpck_require__(5309); +var jju = __nccwpck_require__(9656); function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; } @@ -1737,7 +1737,7 @@ exports.YarnTool = YarnTool; /***/ }), -/***/ 9988: +/***/ 5254: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -1763,7 +1763,7 @@ exports.createFileSystemAdapter = createFileSystemAdapter; /***/ }), -/***/ 9459: +/***/ 1121: /***/ ((__unused_webpack_module, exports) => { @@ -1787,15 +1787,15 @@ exports.IS_SUPPORT_READDIR_WITH_FILE_TYPES = IS_MATCHED_BY_MAJOR || IS_MATCHED_B /***/ }), -/***/ 4482: +/***/ 1484: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.Settings = exports.scandirSync = exports.scandir = void 0; -const async = __nccwpck_require__(9359); -const sync = __nccwpck_require__(9588); -const settings_1 = __nccwpck_require__(2321); +const async = __nccwpck_require__(9977); +const sync = __nccwpck_require__(5554); +const settings_1 = __nccwpck_require__(595); exports.Settings = settings_1.default; function scandir(path, optionsOrSettingsOrCallback, callback) { if (typeof optionsOrSettingsOrCallback === 'function') { @@ -1820,17 +1820,17 @@ function getSettings(settingsOrOptions = {}) { /***/ }), -/***/ 9359: +/***/ 9977: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.readdir = exports.readdirWithFileTypes = exports.read = void 0; -const fsStat = __nccwpck_require__(794); -const rpl = __nccwpck_require__(347); -const constants_1 = __nccwpck_require__(9459); -const utils = __nccwpck_require__(6556); -const common = __nccwpck_require__(7254); +const fsStat = __nccwpck_require__(1309); +const rpl = __nccwpck_require__(7906); +const constants_1 = __nccwpck_require__(1121); +const utils = __nccwpck_require__(2046); +const common = __nccwpck_require__(9392); function read(directory, settings, callback) { if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) { readdirWithFileTypes(directory, settings, callback); @@ -1931,7 +1931,7 @@ function callSuccessCallback(callback, result) { /***/ }), -/***/ 7254: +/***/ 9392: /***/ ((__unused_webpack_module, exports) => { @@ -1951,16 +1951,16 @@ exports.joinPathSegments = joinPathSegments; /***/ }), -/***/ 9588: +/***/ 5554: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.readdir = exports.readdirWithFileTypes = exports.read = void 0; -const fsStat = __nccwpck_require__(794); -const constants_1 = __nccwpck_require__(9459); -const utils = __nccwpck_require__(6556); -const common = __nccwpck_require__(7254); +const fsStat = __nccwpck_require__(1309); +const constants_1 = __nccwpck_require__(1121); +const utils = __nccwpck_require__(2046); +const common = __nccwpck_require__(9392); function read(directory, settings) { if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) { return readdirWithFileTypes(directory, settings); @@ -2012,14 +2012,14 @@ exports.readdir = readdir; /***/ }), -/***/ 2321: +/***/ 595: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); const path = __nccwpck_require__(6928); -const fsStat = __nccwpck_require__(794); -const fs = __nccwpck_require__(9988); +const fsStat = __nccwpck_require__(1309); +const fs = __nccwpck_require__(5254); class Settings { constructor(_options = {}) { this._options = _options; @@ -2043,7 +2043,7 @@ exports["default"] = Settings; /***/ }), -/***/ 2789: +/***/ 2535: /***/ ((__unused_webpack_module, exports) => { @@ -2069,19 +2069,19 @@ exports.createDirentFromStats = createDirentFromStats; /***/ }), -/***/ 6556: +/***/ 2046: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.fs = void 0; -const fs = __nccwpck_require__(2789); +const fs = __nccwpck_require__(2535); exports.fs = fs; /***/ }), -/***/ 4076: +/***/ 5375: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -2105,15 +2105,15 @@ exports.createFileSystemAdapter = createFileSystemAdapter; /***/ }), -/***/ 794: +/***/ 1309: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.statSync = exports.stat = exports.Settings = void 0; -const async = __nccwpck_require__(6103); -const sync = __nccwpck_require__(652); -const settings_1 = __nccwpck_require__(5897); +const async = __nccwpck_require__(9100); +const sync = __nccwpck_require__(4421); +const settings_1 = __nccwpck_require__(8448); exports.Settings = settings_1.default; function stat(path, optionsOrSettingsOrCallback, callback) { if (typeof optionsOrSettingsOrCallback === 'function') { @@ -2138,7 +2138,7 @@ function getSettings(settingsOrOptions = {}) { /***/ }), -/***/ 6103: +/***/ 9100: /***/ ((__unused_webpack_module, exports) => { @@ -2181,7 +2181,7 @@ function callSuccessCallback(callback, result) { /***/ }), -/***/ 652: +/***/ 4421: /***/ ((__unused_webpack_module, exports) => { @@ -2211,12 +2211,12 @@ exports.read = read; /***/ }), -/***/ 5897: +/***/ 8448: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const fs = __nccwpck_require__(4076); +const fs = __nccwpck_require__(5375); class Settings { constructor(_options = {}) { this._options = _options; @@ -2234,16 +2234,16 @@ exports["default"] = Settings; /***/ }), -/***/ 3989: +/***/ 8734: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.Settings = exports.walkStream = exports.walkSync = exports.walk = void 0; -const async_1 = __nccwpck_require__(1316); -const stream_1 = __nccwpck_require__(390); -const sync_1 = __nccwpck_require__(7405); -const settings_1 = __nccwpck_require__(4520); +const async_1 = __nccwpck_require__(6200); +const stream_1 = __nccwpck_require__(2); +const sync_1 = __nccwpck_require__(6345); +const settings_1 = __nccwpck_require__(4668); exports.Settings = settings_1.default; function walk(directory, optionsOrSettingsOrCallback, callback) { if (typeof optionsOrSettingsOrCallback === 'function') { @@ -2275,12 +2275,12 @@ function getSettings(settingsOrOptions = {}) { /***/ }), -/***/ 1316: +/***/ 6200: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const async_1 = __nccwpck_require__(9134); +const async_1 = __nccwpck_require__(8445); class AsyncProvider { constructor(_root, _settings) { this._root = _root; @@ -2312,13 +2312,13 @@ function callSuccessCallback(callback, entries) { /***/ }), -/***/ 390: +/***/ 2: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); const stream_1 = __nccwpck_require__(2203); -const async_1 = __nccwpck_require__(9134); +const async_1 = __nccwpck_require__(8445); class StreamProvider { constructor(_root, _settings) { this._root = _root; @@ -2353,12 +2353,12 @@ exports["default"] = StreamProvider; /***/ }), -/***/ 7405: +/***/ 6345: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const sync_1 = __nccwpck_require__(3339); +const sync_1 = __nccwpck_require__(127); class SyncProvider { constructor(_root, _settings) { this._root = _root; @@ -2374,16 +2374,16 @@ exports["default"] = SyncProvider; /***/ }), -/***/ 9134: +/***/ 8445: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); const events_1 = __nccwpck_require__(4434); -const fsScandir = __nccwpck_require__(4482); -const fastq = __nccwpck_require__(4898); -const common = __nccwpck_require__(757); -const reader_1 = __nccwpck_require__(4739); +const fsScandir = __nccwpck_require__(1484); +const fastq = __nccwpck_require__(885); +const common = __nccwpck_require__(5305); +const reader_1 = __nccwpck_require__(2983); class AsyncReader extends reader_1.default { constructor(_root, _settings) { super(_root, _settings); @@ -2478,7 +2478,7 @@ exports["default"] = AsyncReader; /***/ }), -/***/ 757: +/***/ 5305: /***/ ((__unused_webpack_module, exports) => { @@ -2516,12 +2516,12 @@ exports.joinPathSegments = joinPathSegments; /***/ }), -/***/ 4739: +/***/ 2983: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const common = __nccwpck_require__(757); +const common = __nccwpck_require__(5305); class Reader { constructor(_root, _settings) { this._root = _root; @@ -2534,14 +2534,14 @@ exports["default"] = Reader; /***/ }), -/***/ 3339: +/***/ 127: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const fsScandir = __nccwpck_require__(4482); -const common = __nccwpck_require__(757); -const reader_1 = __nccwpck_require__(4739); +const fsScandir = __nccwpck_require__(1484); +const common = __nccwpck_require__(5305); +const reader_1 = __nccwpck_require__(2983); class SyncReader extends reader_1.default { constructor() { super(...arguments); @@ -2600,13 +2600,13 @@ exports["default"] = SyncReader; /***/ }), -/***/ 4520: +/***/ 4668: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); const path = __nccwpck_require__(6928); -const fsScandir = __nccwpck_require__(4482); +const fsScandir = __nccwpck_require__(1484); class Settings { constructor(_options = {}) { this._options = _options; @@ -2633,15 +2633,15 @@ exports["default"] = Settings; /***/ }), -/***/ 7120: +/***/ 8671: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const stringify = __nccwpck_require__(641); -const compile = __nccwpck_require__(6453); -const expand = __nccwpck_require__(6374); -const parse = __nccwpck_require__(5583); +const stringify = __nccwpck_require__(3062); +const compile = __nccwpck_require__(4898); +const expand = __nccwpck_require__(5331); +const parse = __nccwpck_require__(168); /** * Expand the given pattern or create a regex-compatible string. @@ -2810,13 +2810,13 @@ module.exports = braces; /***/ }), -/***/ 6453: +/***/ 4898: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const fill = __nccwpck_require__(9073); -const utils = __nccwpck_require__(837); +const fill = __nccwpck_require__(9730); +const utils = __nccwpck_require__(2474); const compile = (ast, options = {}) => { const walk = (node, parent = {}) => { @@ -2877,7 +2877,7 @@ module.exports = compile; /***/ }), -/***/ 7201: +/***/ 1778: /***/ ((module) => { @@ -2941,14 +2941,14 @@ module.exports = { /***/ }), -/***/ 6374: +/***/ 5331: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const fill = __nccwpck_require__(9073); -const stringify = __nccwpck_require__(641); -const utils = __nccwpck_require__(837); +const fill = __nccwpck_require__(9730); +const stringify = __nccwpck_require__(3062); +const utils = __nccwpck_require__(2474); const append = (queue = '', stash = '', enclose = false) => { const result = []; @@ -3061,12 +3061,12 @@ module.exports = expand; /***/ }), -/***/ 5583: +/***/ 168: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const stringify = __nccwpck_require__(641); +const stringify = __nccwpck_require__(3062); /** * Constants @@ -3088,7 +3088,7 @@ const { CHAR_SINGLE_QUOTE, /* ' */ CHAR_NO_BREAK_SPACE, CHAR_ZERO_WIDTH_NOBREAK_SPACE -} = __nccwpck_require__(7201); +} = __nccwpck_require__(1778); /** * parse @@ -3399,12 +3399,12 @@ module.exports = parse; /***/ }), -/***/ 641: +/***/ 3062: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const utils = __nccwpck_require__(837); +const utils = __nccwpck_require__(2474); module.exports = (ast, options = {}) => { const stringify = (node, parent = {}) => { @@ -3438,7 +3438,7 @@ module.exports = (ast, options = {}) => { /***/ }), -/***/ 837: +/***/ 2474: /***/ ((__unused_webpack_module, exports) => { @@ -3567,16 +3567,16 @@ exports.flatten = (...args) => { /***/ }), -/***/ 484: +/***/ 2457: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const taskManager = __nccwpck_require__(2123); -const async_1 = __nccwpck_require__(5649); -const stream_1 = __nccwpck_require__(613); -const sync_1 = __nccwpck_require__(1850); -const settings_1 = __nccwpck_require__(4763); -const utils = __nccwpck_require__(1062); +const taskManager = __nccwpck_require__(6160); +const async_1 = __nccwpck_require__(3616); +const stream_1 = __nccwpck_require__(2410); +const sync_1 = __nccwpck_require__(3473); +const settings_1 = __nccwpck_require__(948); +const utils = __nccwpck_require__(123); async function FastGlob(source, options) { assertPatternsInput(source); const works = getWorks(source, async_1.default, options); @@ -3676,13 +3676,13 @@ module.exports = FastGlob; /***/ }), -/***/ 2123: +/***/ 6160: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.convertPatternGroupToTask = exports.convertPatternGroupsToTasks = exports.groupPatternsByBaseDirectory = exports.getNegativePatternsAsPositive = exports.getPositivePatterns = exports.convertPatternsToTasks = exports.generate = void 0; -const utils = __nccwpck_require__(1062); +const utils = __nccwpck_require__(123); function generate(input, settings) { const patterns = processPatterns(input, settings); const ignore = processPatterns(settings.ignore, settings); @@ -3793,13 +3793,13 @@ exports.convertPatternGroupToTask = convertPatternGroupToTask; /***/ }), -/***/ 5649: +/***/ 3616: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const async_1 = __nccwpck_require__(9439); -const provider_1 = __nccwpck_require__(5420); +const async_1 = __nccwpck_require__(6866); +const provider_1 = __nccwpck_require__(3815); class ProviderAsync extends provider_1.default { constructor() { super(...arguments); @@ -3823,13 +3823,13 @@ exports["default"] = ProviderAsync; /***/ }), -/***/ 6595: +/***/ 4084: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const utils = __nccwpck_require__(1062); -const partial_1 = __nccwpck_require__(2600); +const utils = __nccwpck_require__(123); +const partial_1 = __nccwpck_require__(3147); class DeepFilter { constructor(_settings, _micromatchOptions) { this._settings = _settings; @@ -3892,12 +3892,12 @@ exports["default"] = DeepFilter; /***/ }), -/***/ 4193: +/***/ 2552: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const utils = __nccwpck_require__(1062); +const utils = __nccwpck_require__(123); class EntryFilter { constructor(_settings, _micromatchOptions) { this._settings = _settings; @@ -3984,12 +3984,12 @@ exports["default"] = EntryFilter; /***/ }), -/***/ 6972: +/***/ 5042: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const utils = __nccwpck_require__(1062); +const utils = __nccwpck_require__(123); class ErrorFilter { constructor(_settings) { this._settings = _settings; @@ -4006,12 +4006,12 @@ exports["default"] = ErrorFilter; /***/ }), -/***/ 1703: +/***/ 5828: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const utils = __nccwpck_require__(1062); +const utils = __nccwpck_require__(123); class Matcher { constructor(_patterns, _settings, _micromatchOptions) { this._patterns = _patterns; @@ -4058,12 +4058,12 @@ exports["default"] = Matcher; /***/ }), -/***/ 2600: +/***/ 3147: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const matcher_1 = __nccwpck_require__(1703); +const matcher_1 = __nccwpck_require__(5828); class PartialMatcher extends matcher_1.default { match(filepath) { const parts = filepath.split('/'); @@ -4103,16 +4103,16 @@ exports["default"] = PartialMatcher; /***/ }), -/***/ 5420: +/***/ 3815: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); const path = __nccwpck_require__(6928); -const deep_1 = __nccwpck_require__(6595); -const entry_1 = __nccwpck_require__(4193); -const error_1 = __nccwpck_require__(6972); -const entry_2 = __nccwpck_require__(3826); +const deep_1 = __nccwpck_require__(4084); +const entry_1 = __nccwpck_require__(2552); +const error_1 = __nccwpck_require__(5042); +const entry_2 = __nccwpck_require__(825); class Provider { constructor(_settings) { this._settings = _settings; @@ -4158,14 +4158,14 @@ exports["default"] = Provider; /***/ }), -/***/ 613: +/***/ 2410: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); const stream_1 = __nccwpck_require__(2203); -const stream_2 = __nccwpck_require__(9491); -const provider_1 = __nccwpck_require__(5420); +const stream_2 = __nccwpck_require__(1980); +const provider_1 = __nccwpck_require__(3815); class ProviderStream extends provider_1.default { constructor() { super(...arguments); @@ -4196,13 +4196,13 @@ exports["default"] = ProviderStream; /***/ }), -/***/ 1850: +/***/ 3473: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const sync_1 = __nccwpck_require__(5908); -const provider_1 = __nccwpck_require__(5420); +const sync_1 = __nccwpck_require__(967); +const provider_1 = __nccwpck_require__(3815); class ProviderSync extends provider_1.default { constructor() { super(...arguments); @@ -4226,12 +4226,12 @@ exports["default"] = ProviderSync; /***/ }), -/***/ 3826: +/***/ 825: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const utils = __nccwpck_require__(1062); +const utils = __nccwpck_require__(123); class EntryTransformer { constructor(_settings) { this._settings = _settings; @@ -4259,14 +4259,14 @@ exports["default"] = EntryTransformer; /***/ }), -/***/ 9439: +/***/ 6866: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const fsWalk = __nccwpck_require__(3989); -const reader_1 = __nccwpck_require__(9692); -const stream_1 = __nccwpck_require__(9491); +const fsWalk = __nccwpck_require__(8734); +const reader_1 = __nccwpck_require__(6703); +const stream_1 = __nccwpck_require__(1980); class ReaderAsync extends reader_1.default { constructor() { super(...arguments); @@ -4301,14 +4301,14 @@ exports["default"] = ReaderAsync; /***/ }), -/***/ 9692: +/***/ 6703: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); const path = __nccwpck_require__(6928); -const fsStat = __nccwpck_require__(794); -const utils = __nccwpck_require__(1062); +const fsStat = __nccwpck_require__(1309); +const utils = __nccwpck_require__(123); class Reader { constructor(_settings) { this._settings = _settings; @@ -4341,15 +4341,15 @@ exports["default"] = Reader; /***/ }), -/***/ 9491: +/***/ 1980: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); const stream_1 = __nccwpck_require__(2203); -const fsStat = __nccwpck_require__(794); -const fsWalk = __nccwpck_require__(3989); -const reader_1 = __nccwpck_require__(9692); +const fsStat = __nccwpck_require__(1309); +const fsWalk = __nccwpck_require__(8734); +const reader_1 = __nccwpck_require__(6703); class ReaderStream extends reader_1.default { constructor() { super(...arguments); @@ -4403,14 +4403,14 @@ exports["default"] = ReaderStream; /***/ }), -/***/ 5908: +/***/ 967: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); -const fsStat = __nccwpck_require__(794); -const fsWalk = __nccwpck_require__(3989); -const reader_1 = __nccwpck_require__(9692); +const fsStat = __nccwpck_require__(1309); +const fsWalk = __nccwpck_require__(8734); +const reader_1 = __nccwpck_require__(6703); class ReaderSync extends reader_1.default { constructor() { super(...arguments); @@ -4453,7 +4453,7 @@ exports["default"] = ReaderSync; /***/ }), -/***/ 4763: +/***/ 948: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -4519,7 +4519,7 @@ exports["default"] = Settings; /***/ }), -/***/ 4811: +/***/ 3614: /***/ ((__unused_webpack_module, exports) => { @@ -4548,7 +4548,7 @@ exports.splitWhen = splitWhen; /***/ }), -/***/ 9738: +/***/ 163: /***/ ((__unused_webpack_module, exports) => { @@ -4562,7 +4562,7 @@ exports.isEnoentCodeError = isEnoentCodeError; /***/ }), -/***/ 271: +/***/ 9416: /***/ ((__unused_webpack_module, exports) => { @@ -4588,31 +4588,31 @@ exports.createDirentFromStats = createDirentFromStats; /***/ }), -/***/ 1062: +/***/ 123: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.string = exports.stream = exports.pattern = exports.path = exports.fs = exports.errno = exports.array = void 0; -const array = __nccwpck_require__(4811); +const array = __nccwpck_require__(3614); exports.array = array; -const errno = __nccwpck_require__(9738); +const errno = __nccwpck_require__(163); exports.errno = errno; -const fs = __nccwpck_require__(271); +const fs = __nccwpck_require__(9416); exports.fs = fs; -const path = __nccwpck_require__(9519); +const path = __nccwpck_require__(8692); exports.path = path; -const pattern = __nccwpck_require__(7044); +const pattern = __nccwpck_require__(5869); exports.pattern = pattern; -const stream = __nccwpck_require__(3732); +const stream = __nccwpck_require__(9103); exports.stream = stream; -const string = __nccwpck_require__(5589); +const string = __nccwpck_require__(3682); exports.string = string; /***/ }), -/***/ 9519: +/***/ 8692: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -4687,15 +4687,15 @@ exports.convertPosixPathToPattern = convertPosixPathToPattern; /***/ }), -/***/ 7044: +/***/ 5869: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.isAbsolute = exports.partitionAbsoluteAndRelative = exports.removeDuplicateSlashes = exports.matchAny = exports.convertPatternsToRe = exports.makeRe = exports.getPatternParts = exports.expandBraceExpansion = exports.expandPatternsWithBraceExpansion = exports.isAffectDepthOfReadingPattern = exports.endsWithSlashGlobStar = exports.hasGlobStar = exports.getBaseDirectory = exports.isPatternRelatedToParentDirectory = exports.getPatternsOutsideCurrentDirectory = exports.getPatternsInsideCurrentDirectory = exports.getPositivePatterns = exports.getNegativePatterns = exports.isPositivePattern = exports.isNegativePattern = exports.convertToNegativePattern = exports.convertToPositivePattern = exports.isDynamicPattern = exports.isStaticPattern = void 0; const path = __nccwpck_require__(6928); -const globParent = __nccwpck_require__(2437); -const micromatch = __nccwpck_require__(7805); +const globParent = __nccwpck_require__(2435); +const micromatch = __nccwpck_require__(9555); const GLOBSTAR = '**'; const ESCAPE_SYMBOL = '\\'; const COMMON_GLOB_SYMBOLS_RE = /[*?]|^!/; @@ -4900,13 +4900,13 @@ exports.isAbsolute = isAbsolute; /***/ }), -/***/ 3732: +/***/ 9103: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.merge = void 0; -const merge2 = __nccwpck_require__(6606); +const merge2 = __nccwpck_require__(4031); function merge(streams) { const mergedStream = merge2(streams); streams.forEach((stream) => { @@ -4924,7 +4924,7 @@ function propagateCloseEventToSources(streams) { /***/ }), -/***/ 5589: +/***/ 3682: /***/ ((__unused_webpack_module, exports) => { @@ -4942,325 +4942,7 @@ exports.isEmpty = isEmpty; /***/ }), -/***/ 4898: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - - -/* eslint-disable no-var */ - -var reusify = __nccwpck_require__(4088) - -function fastqueue (context, worker, _concurrency) { - if (typeof context === 'function') { - _concurrency = worker - worker = context - context = null - } - - if (!(_concurrency >= 1)) { - throw new Error('fastqueue concurrency must be equal to or greater than 1') - } - - var cache = reusify(Task) - var queueHead = null - var queueTail = null - var _running = 0 - var errorHandler = null - - var self = { - push: push, - drain: noop, - saturated: noop, - pause: pause, - paused: false, - - get concurrency () { - return _concurrency - }, - set concurrency (value) { - if (!(value >= 1)) { - throw new Error('fastqueue concurrency must be equal to or greater than 1') - } - _concurrency = value - - if (self.paused) return - for (; queueHead && _running < _concurrency;) { - _running++ - release() - } - }, - - running: running, - resume: resume, - idle: idle, - length: length, - getQueue: getQueue, - unshift: unshift, - empty: noop, - kill: kill, - killAndDrain: killAndDrain, - error: error - } - - return self - - function running () { - return _running - } - - function pause () { - self.paused = true - } - - function length () { - var current = queueHead - var counter = 0 - - while (current) { - current = current.next - counter++ - } - - return counter - } - - function getQueue () { - var current = queueHead - var tasks = [] - - while (current) { - tasks.push(current.value) - current = current.next - } - - return tasks - } - - function resume () { - if (!self.paused) return - self.paused = false - if (queueHead === null) { - _running++ - release() - return - } - for (; queueHead && _running < _concurrency;) { - _running++ - release() - } - } - - function idle () { - return _running === 0 && self.length() === 0 - } - - function push (value, done) { - var current = cache.get() - - current.context = context - current.release = release - current.value = value - current.callback = done || noop - current.errorHandler = errorHandler - - if (_running >= _concurrency || self.paused) { - if (queueTail) { - queueTail.next = current - queueTail = current - } else { - queueHead = current - queueTail = current - self.saturated() - } - } else { - _running++ - worker.call(context, current.value, current.worked) - } - } - - function unshift (value, done) { - var current = cache.get() - - current.context = context - current.release = release - current.value = value - current.callback = done || noop - current.errorHandler = errorHandler - - if (_running >= _concurrency || self.paused) { - if (queueHead) { - current.next = queueHead - queueHead = current - } else { - queueHead = current - queueTail = current - self.saturated() - } - } else { - _running++ - worker.call(context, current.value, current.worked) - } - } - - function release (holder) { - if (holder) { - cache.release(holder) - } - var next = queueHead - if (next && _running <= _concurrency) { - if (!self.paused) { - if (queueTail === queueHead) { - queueTail = null - } - queueHead = next.next - next.next = null - worker.call(context, next.value, next.worked) - if (queueTail === null) { - self.empty() - } - } else { - _running-- - } - } else if (--_running === 0) { - self.drain() - } - } - - function kill () { - queueHead = null - queueTail = null - self.drain = noop - } - - function killAndDrain () { - queueHead = null - queueTail = null - self.drain() - self.drain = noop - } - - function error (handler) { - errorHandler = handler - } -} - -function noop () {} - -function Task () { - this.value = null - this.callback = noop - this.next = null - this.release = noop - this.context = null - this.errorHandler = null - - var self = this - - this.worked = function worked (err, result) { - var callback = self.callback - var errorHandler = self.errorHandler - var val = self.value - self.value = null - self.callback = noop - if (self.errorHandler) { - errorHandler(err, val) - } - callback.call(self.context, err, result) - self.release(self) - } -} - -function queueAsPromised (context, worker, _concurrency) { - if (typeof context === 'function') { - _concurrency = worker - worker = context - context = null - } - - function asyncWrapper (arg, cb) { - worker.call(this, arg) - .then(function (res) { - cb(null, res) - }, cb) - } - - var queue = fastqueue(context, asyncWrapper, _concurrency) - - var pushCb = queue.push - var unshiftCb = queue.unshift - - queue.push = push - queue.unshift = unshift - queue.drained = drained - - return queue - - function push (value) { - var p = new Promise(function (resolve, reject) { - pushCb(value, function (err, result) { - if (err) { - reject(err) - return - } - resolve(result) - }) - }) - - // Let's fork the promise chain to - // make the error bubble up to the user but - // not lead to a unhandledRejection - p.catch(noop) - - return p - } - - function unshift (value) { - var p = new Promise(function (resolve, reject) { - unshiftCb(value, function (err, result) { - if (err) { - reject(err) - return - } - resolve(result) - }) - }) - - // Let's fork the promise chain to - // make the error bubble up to the user but - // not lead to a unhandledRejection - p.catch(noop) - - return p - } - - function drained () { - var p = new Promise(function (resolve) { - process.nextTick(function () { - if (queue.idle()) { - resolve() - } else { - var previousDrain = queue.drain - queue.drain = function () { - if (typeof previousDrain === 'function') previousDrain() - resolve() - queue.drain = previousDrain - } - } - }) - }) - - return p - } -} - -module.exports = fastqueue -module.exports.promise = queueAsPromised - - -/***/ }), - -/***/ 9073: +/***/ 9730: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*! @@ -5273,7 +4955,7 @@ module.exports.promise = queueAsPromised const util = __nccwpck_require__(9023); -const toRegexRange = __nccwpck_require__(4395); +const toRegexRange = __nccwpck_require__(743); const isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val); @@ -5515,12 +5197,12 @@ module.exports = fill; /***/ }), -/***/ 2437: +/***/ 2435: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var isGlob = __nccwpck_require__(1753); +var isGlob = __nccwpck_require__(686); var pathPosixDirname = (__nccwpck_require__(6928).posix).dirname; var isWin32 = (__nccwpck_require__(857).platform)() === 'win32'; @@ -5564,7 +5246,7 @@ module.exports = function globParent(str, opts) { /***/ }), -/***/ 7280: +/***/ 9825: /***/ ((module) => { /*! @@ -5591,7 +5273,7 @@ module.exports = function isExtglob(str) { /***/ }), -/***/ 1753: +/***/ 686: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*! @@ -5601,7 +5283,7 @@ module.exports = function isExtglob(str) { * Released under the MIT License. */ -var isExtglob = __nccwpck_require__(7280); +var isExtglob = __nccwpck_require__(9825); var chars = { '{': '}', '(': ')', '[': ']'}; var strictCheck = function(str) { if (str[0] === '!') { @@ -5748,7 +5430,7 @@ module.exports = function isGlob(str, options) { /***/ }), -/***/ 7850: +/***/ 952: /***/ ((module) => { /*! @@ -5773,32 +5455,32 @@ module.exports = function(num) { /***/ }), -/***/ 1871: +/***/ 9656: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { module.exports.__defineGetter__('parse', function() { - return (__nccwpck_require__(8472).parse) + return (__nccwpck_require__(1079).parse) }) module.exports.__defineGetter__('stringify', function() { - return (__nccwpck_require__(2438)/* .stringify */ .A) + return (__nccwpck_require__(8585)/* .stringify */ .A) }) module.exports.__defineGetter__('tokenize', function() { - return (__nccwpck_require__(8472).tokenize) + return (__nccwpck_require__(1079).tokenize) }) module.exports.__defineGetter__('update', function() { - return (__nccwpck_require__(8110)/* .update */ .f) + return (__nccwpck_require__(4175)/* .update */ .f) }) module.exports.__defineGetter__('analyze', function() { - return (__nccwpck_require__(4167)/* .analyze */ .n) + return (__nccwpck_require__(636)/* .analyze */ .n) }) module.exports.__defineGetter__('utils', function() { - return __nccwpck_require__(8074) + return __nccwpck_require__(7629) }) /**package @@ -5812,11 +5494,11 @@ module.exports.__defineGetter__('utils', function() { /***/ }), -/***/ 4167: +/***/ 636: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var tokenize = (__nccwpck_require__(8472).tokenize) +var tokenize = (__nccwpck_require__(1079).tokenize) module.exports.n = function analyzeJSON(input, options) { if (options == null) options = {} @@ -5906,15 +5588,15 @@ module.exports.n = function analyzeJSON(input, options) { /***/ }), -/***/ 8110: +/***/ 4175: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { var __webpack_unused_export__; var assert = __nccwpck_require__(2613) -var tokenize = (__nccwpck_require__(8472).tokenize) -var stringify = (__nccwpck_require__(2438)/* .stringify */ .A) -var analyze = (__nccwpck_require__(4167)/* .analyze */ .n) +var tokenize = (__nccwpck_require__(1079).tokenize) +var stringify = (__nccwpck_require__(8585)/* .stringify */ .A) +var analyze = (__nccwpck_require__(636)/* .analyze */ .n) function isObject(x) { return typeof(x) === 'object' && x !== null @@ -6394,13 +6076,13 @@ module.exports.f = function updateJSON(source, new_value, options) { /***/ }), -/***/ 8472: +/***/ 1079: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // RTFM: http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf -var Uni = __nccwpck_require__(6532) +var Uni = __nccwpck_require__(3667) function isHexDigit(x) { return (x >= '0' && x <= '9') @@ -7161,11 +6843,11 @@ module.exports.tokenize = function tokenizeJSON(input, options) { /***/ }), -/***/ 2438: +/***/ 8585: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Uni = __nccwpck_require__(6532) +var Uni = __nccwpck_require__(3667) // Fix Function#name on browsers that do not support it (IE) // http://stackoverflow.com/questions/6903762/function-name-not-supported-in-ie @@ -7546,7 +7228,7 @@ module.exports.A = function stringifyJSON(object, options, _space) { /***/ }), -/***/ 6532: +/***/ 3667: /***/ ((module) => { @@ -7623,11 +7305,11 @@ module.exports.NonAsciiIdentifierPart = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u0 /***/ }), -/***/ 8074: +/***/ 7629: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { var FS = __nccwpck_require__(9896) -var jju = __nccwpck_require__(1871) +var jju = __nccwpck_require__(9656) // this function registers json5 extension, so you // can do `require("./config.json5")` kind of thing @@ -7649,7 +7331,7 @@ module.exports.patch_JSON_parse = function() { return _parse(text, rev) } catch(err) { // this call should always throw - (__nccwpck_require__(1871).parse)(text, { + (__nccwpck_require__(9656).parse)(text, { mode: 'json', legacy: true, reviver: rev, @@ -7676,14 +7358,14 @@ module.exports.middleware = function() { /***/ }), -/***/ 677: +/***/ 5309: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var loader = __nccwpck_require__(586); -var dumper = __nccwpck_require__(6904); +var loader = __nccwpck_require__(4802); +var dumper = __nccwpck_require__(2208); function renamed(from, to) { @@ -7694,32 +7376,32 @@ function renamed(from, to) { } -module.exports.Type = __nccwpck_require__(1089); -module.exports.Schema = __nccwpck_require__(9610); -module.exports.FAILSAFE_SCHEMA = __nccwpck_require__(2420); -module.exports.JSON_SCHEMA = __nccwpck_require__(8971); -module.exports.CORE_SCHEMA = __nccwpck_require__(2254); -module.exports.DEFAULT_SCHEMA = __nccwpck_require__(7436); +module.exports.Type = __nccwpck_require__(4313); +module.exports.Schema = __nccwpck_require__(706); +module.exports.FAILSAFE_SCHEMA = __nccwpck_require__(1068); +module.exports.JSON_SCHEMA = __nccwpck_require__(9875); +module.exports.CORE_SCHEMA = __nccwpck_require__(2454); +module.exports.DEFAULT_SCHEMA = __nccwpck_require__(4260); module.exports.load = loader.load; module.exports.loadAll = loader.loadAll; module.exports.dump = dumper.dump; -module.exports.YAMLException = __nccwpck_require__(2828); +module.exports.YAMLException = __nccwpck_require__(3716); // Re-export all types in case user wants to create custom schema module.exports.types = { - binary: __nccwpck_require__(1113), - float: __nccwpck_require__(3492), - map: __nccwpck_require__(8432), - null: __nccwpck_require__(7177), - pairs: __nccwpck_require__(1503), - set: __nccwpck_require__(5098), - timestamp: __nccwpck_require__(5298), - bool: __nccwpck_require__(7300), - int: __nccwpck_require__(4729), - merge: __nccwpck_require__(954), - omap: __nccwpck_require__(8677), - seq: __nccwpck_require__(3733), - str: __nccwpck_require__(1845) + binary: __nccwpck_require__(4497), + float: __nccwpck_require__(9980), + map: __nccwpck_require__(4952), + null: __nccwpck_require__(9697), + pairs: __nccwpck_require__(7399), + set: __nccwpck_require__(2610), + timestamp: __nccwpck_require__(7098), + bool: __nccwpck_require__(4204), + int: __nccwpck_require__(5707), + merge: __nccwpck_require__(8546), + omap: __nccwpck_require__(1005), + seq: __nccwpck_require__(2941), + str: __nccwpck_require__(3501) }; // Removed functions from JS-YAML 3.0.x @@ -7730,7 +7412,7 @@ module.exports.safeDump = renamed('safeDump', 'dump'); /***/ }), -/***/ 3324: +/***/ 20: /***/ ((module) => { @@ -7796,16 +7478,16 @@ module.exports.extend = extend; /***/ }), -/***/ 6904: +/***/ 2208: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*eslint-disable no-use-before-define*/ -var common = __nccwpck_require__(3324); -var YAMLException = __nccwpck_require__(2828); -var DEFAULT_SCHEMA = __nccwpck_require__(7436); +var common = __nccwpck_require__(20); +var YAMLException = __nccwpck_require__(3716); +var DEFAULT_SCHEMA = __nccwpck_require__(4260); var _toString = Object.prototype.toString; var _hasOwnProperty = Object.prototype.hasOwnProperty; @@ -8768,7 +8450,7 @@ module.exports.dump = dump; /***/ }), -/***/ 2828: +/***/ 3716: /***/ ((module) => { // YAML error class. http://stackoverflow.com/questions/8458984 @@ -8830,17 +8512,17 @@ module.exports = YAMLException; /***/ }), -/***/ 586: +/***/ 4802: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*eslint-disable max-len,no-use-before-define*/ -var common = __nccwpck_require__(3324); -var YAMLException = __nccwpck_require__(2828); -var makeSnippet = __nccwpck_require__(732); -var DEFAULT_SCHEMA = __nccwpck_require__(7436); +var common = __nccwpck_require__(20); +var YAMLException = __nccwpck_require__(3716); +var makeSnippet = __nccwpck_require__(8148); +var DEFAULT_SCHEMA = __nccwpck_require__(4260); var _hasOwnProperty = Object.prototype.hasOwnProperty; @@ -10570,15 +10252,15 @@ module.exports.load = load; /***/ }), -/***/ 9610: +/***/ 706: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*eslint-disable max-len*/ -var YAMLException = __nccwpck_require__(2828); -var Type = __nccwpck_require__(1089); +var YAMLException = __nccwpck_require__(3716); +var Type = __nccwpck_require__(4313); function compileList(schema, name) { @@ -10698,7 +10380,7 @@ module.exports = Schema; /***/ }), -/***/ 2254: +/***/ 2454: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Standard YAML's Core schema. @@ -10711,12 +10393,12 @@ module.exports = Schema; -module.exports = __nccwpck_require__(8971); +module.exports = __nccwpck_require__(9875); /***/ }), -/***/ 7436: +/***/ 4260: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // JS-YAML's default schema for `safeLoad` function. @@ -10729,23 +10411,23 @@ module.exports = __nccwpck_require__(8971); -module.exports = (__nccwpck_require__(2254).extend)({ +module.exports = (__nccwpck_require__(2454).extend)({ implicit: [ - __nccwpck_require__(5298), - __nccwpck_require__(954) + __nccwpck_require__(7098), + __nccwpck_require__(8546) ], explicit: [ - __nccwpck_require__(1113), - __nccwpck_require__(8677), - __nccwpck_require__(1503), - __nccwpck_require__(5098) + __nccwpck_require__(4497), + __nccwpck_require__(1005), + __nccwpck_require__(7399), + __nccwpck_require__(2610) ] }); /***/ }), -/***/ 2420: +/***/ 1068: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Standard YAML's Failsafe schema. @@ -10755,21 +10437,21 @@ module.exports = (__nccwpck_require__(2254).extend)({ -var Schema = __nccwpck_require__(9610); +var Schema = __nccwpck_require__(706); module.exports = new Schema({ explicit: [ - __nccwpck_require__(1845), - __nccwpck_require__(3733), - __nccwpck_require__(8432) + __nccwpck_require__(3501), + __nccwpck_require__(2941), + __nccwpck_require__(4952) ] }); /***/ }), -/***/ 8971: +/***/ 9875: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Standard YAML's JSON schema. @@ -10783,25 +10465,25 @@ module.exports = new Schema({ -module.exports = (__nccwpck_require__(2420).extend)({ +module.exports = (__nccwpck_require__(1068).extend)({ implicit: [ - __nccwpck_require__(7177), - __nccwpck_require__(7300), - __nccwpck_require__(4729), - __nccwpck_require__(3492) + __nccwpck_require__(9697), + __nccwpck_require__(4204), + __nccwpck_require__(5707), + __nccwpck_require__(9980) ] }); /***/ }), -/***/ 732: +/***/ 8148: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var common = __nccwpck_require__(3324); +var common = __nccwpck_require__(20); // get snippet for a single line, respecting maxLength @@ -10903,12 +10585,12 @@ module.exports = makeSnippet; /***/ }), -/***/ 1089: +/***/ 4313: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var YAMLException = __nccwpck_require__(2828); +var YAMLException = __nccwpck_require__(3716); var TYPE_CONSTRUCTOR_OPTIONS = [ 'kind', @@ -10976,7 +10658,7 @@ module.exports = Type; /***/ }), -/***/ 1113: +/***/ 4497: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -10984,7 +10666,7 @@ module.exports = Type; /*eslint-disable no-bitwise*/ -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); // [ 64, 65, 66 ] -> [ padding, CR, LF ] @@ -11108,12 +10790,12 @@ module.exports = new Type('tag:yaml.org,2002:binary', { /***/ }), -/***/ 7300: +/***/ 4204: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); function resolveYamlBoolean(data) { if (data === null) return false; @@ -11150,13 +10832,13 @@ module.exports = new Type('tag:yaml.org,2002:bool', { /***/ }), -/***/ 3492: +/***/ 9980: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var common = __nccwpck_require__(3324); -var Type = __nccwpck_require__(1089); +var common = __nccwpck_require__(20); +var Type = __nccwpck_require__(4313); var YAML_FLOAT_PATTERN = new RegExp( // 2.5e4, 2.5 and integers @@ -11254,13 +10936,13 @@ module.exports = new Type('tag:yaml.org,2002:float', { /***/ }), -/***/ 4729: +/***/ 5707: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var common = __nccwpck_require__(3324); -var Type = __nccwpck_require__(1089); +var common = __nccwpck_require__(20); +var Type = __nccwpck_require__(4313); function isHexCode(c) { return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) || @@ -11417,12 +11099,12 @@ module.exports = new Type('tag:yaml.org,2002:int', { /***/ }), -/***/ 8432: +/***/ 4952: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); module.exports = new Type('tag:yaml.org,2002:map', { kind: 'mapping', @@ -11432,12 +11114,12 @@ module.exports = new Type('tag:yaml.org,2002:map', { /***/ }), -/***/ 954: +/***/ 8546: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); function resolveYamlMerge(data) { return data === '<<' || data === null; @@ -11451,12 +11133,12 @@ module.exports = new Type('tag:yaml.org,2002:merge', { /***/ }), -/***/ 7177: +/***/ 9697: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); function resolveYamlNull(data) { if (data === null) return true; @@ -11493,12 +11175,12 @@ module.exports = new Type('tag:yaml.org,2002:null', { /***/ }), -/***/ 8677: +/***/ 1005: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); var _hasOwnProperty = Object.prototype.hasOwnProperty; var _toString = Object.prototype.toString; @@ -11544,12 +11226,12 @@ module.exports = new Type('tag:yaml.org,2002:omap', { /***/ }), -/***/ 1503: +/***/ 7399: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); var _toString = Object.prototype.toString; @@ -11604,12 +11286,12 @@ module.exports = new Type('tag:yaml.org,2002:pairs', { /***/ }), -/***/ 3733: +/***/ 2941: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); module.exports = new Type('tag:yaml.org,2002:seq', { kind: 'sequence', @@ -11619,12 +11301,12 @@ module.exports = new Type('tag:yaml.org,2002:seq', { /***/ }), -/***/ 5098: +/***/ 2610: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); var _hasOwnProperty = Object.prototype.hasOwnProperty; @@ -11655,12 +11337,12 @@ module.exports = new Type('tag:yaml.org,2002:set', { /***/ }), -/***/ 1845: +/***/ 3501: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); module.exports = new Type('tag:yaml.org,2002:str', { kind: 'scalar', @@ -11670,12 +11352,12 @@ module.exports = new Type('tag:yaml.org,2002:str', { /***/ }), -/***/ 5298: +/***/ 7098: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -var Type = __nccwpck_require__(1089); +var Type = __nccwpck_require__(4313); var YAML_DATE_REGEXP = new RegExp( '^([0-9][0-9][0-9][0-9])' + // [1] year @@ -11765,7 +11447,7 @@ module.exports = new Type('tag:yaml.org,2002:timestamp', { /***/ }), -/***/ 6606: +/***/ 4031: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -11916,15 +11598,15 @@ function pauseStreams (streams, options) { /***/ }), -/***/ 7805: +/***/ 9555: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const util = __nccwpck_require__(9023); -const braces = __nccwpck_require__(7120); -const picomatch = __nccwpck_require__(9853); -const utils = __nccwpck_require__(6784); +const braces = __nccwpck_require__(8671); +const picomatch = __nccwpck_require__(3268); +const utils = __nccwpck_require__(3753); const isEmptyString = v => v === '' || v === './'; const hasBraces = v => { @@ -12397,17 +12079,17 @@ module.exports = micromatch; /***/ }), -/***/ 9853: +/***/ 3268: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -module.exports = __nccwpck_require__(9448); +module.exports = __nccwpck_require__(1614); /***/ }), -/***/ 332: +/***/ 1237: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -12416,6 +12098,8 @@ const path = __nccwpck_require__(6928); const WIN_SLASH = '\\\\/'; const WIN_NO_SLASH = `[^${WIN_SLASH}]`; +const DEFAULT_MAX_EXTGLOB_RECURSION = 0; + /** * Posix glob regex */ @@ -12479,6 +12163,7 @@ const WINDOWS_CHARS = { */ const POSIX_REGEX_SOURCE = { + __proto__: null, alnum: 'a-zA-Z0-9', alpha: 'a-zA-Z', ascii: '\\x00-\\x7F', @@ -12496,6 +12181,7 @@ const POSIX_REGEX_SOURCE = { }; module.exports = { + DEFAULT_MAX_EXTGLOB_RECURSION, MAX_LENGTH: 1024 * 64, POSIX_REGEX_SOURCE, @@ -12509,6 +12195,7 @@ module.exports = { // Replace globs with equivalent patterns to reduce parsing time. REPLACEMENTS: { + __proto__: null, '***': '*', '**/**': '**', '**/**/**': '**' @@ -12593,13 +12280,13 @@ module.exports = { /***/ }), -/***/ 7898: +/***/ 51: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const constants = __nccwpck_require__(332); -const utils = __nccwpck_require__(6784); +const constants = __nccwpck_require__(1237); +const utils = __nccwpck_require__(3753); /** * Constants @@ -12643,6 +12330,277 @@ const syntaxError = (type, char) => { return `Missing ${type}: "${char}" - use "\\\\${char}" to match literal characters`; }; +const splitTopLevel = input => { + const parts = []; + let bracket = 0; + let paren = 0; + let quote = 0; + let value = ''; + let escaped = false; + + for (const ch of input) { + if (escaped === true) { + value += ch; + escaped = false; + continue; + } + + if (ch === '\\') { + value += ch; + escaped = true; + continue; + } + + if (ch === '"') { + quote = quote === 1 ? 0 : 1; + value += ch; + continue; + } + + if (quote === 0) { + if (ch === '[') { + bracket++; + } else if (ch === ']' && bracket > 0) { + bracket--; + } else if (bracket === 0) { + if (ch === '(') { + paren++; + } else if (ch === ')' && paren > 0) { + paren--; + } else if (ch === '|' && paren === 0) { + parts.push(value); + value = ''; + continue; + } + } + } + + value += ch; + } + + parts.push(value); + return parts; +}; + +const isPlainBranch = branch => { + let escaped = false; + + for (const ch of branch) { + if (escaped === true) { + escaped = false; + continue; + } + + if (ch === '\\') { + escaped = true; + continue; + } + + if (/[?*+@!()[\]{}]/.test(ch)) { + return false; + } + } + + return true; +}; + +const normalizeSimpleBranch = branch => { + let value = branch.trim(); + let changed = true; + + while (changed === true) { + changed = false; + + if (/^@\([^\\()[\]{}|]+\)$/.test(value)) { + value = value.slice(2, -1); + changed = true; + } + } + + if (!isPlainBranch(value)) { + return; + } + + return value.replace(/\\(.)/g, '$1'); +}; + +const hasRepeatedCharPrefixOverlap = branches => { + const values = branches.map(normalizeSimpleBranch).filter(Boolean); + + for (let i = 0; i < values.length; i++) { + for (let j = i + 1; j < values.length; j++) { + const a = values[i]; + const b = values[j]; + const char = a[0]; + + if (!char || a !== char.repeat(a.length) || b !== char.repeat(b.length)) { + continue; + } + + if (a === b || a.startsWith(b) || b.startsWith(a)) { + return true; + } + } + } + + return false; +}; + +const parseRepeatedExtglob = (pattern, requireEnd = true) => { + if ((pattern[0] !== '+' && pattern[0] !== '*') || pattern[1] !== '(') { + return; + } + + let bracket = 0; + let paren = 0; + let quote = 0; + let escaped = false; + + for (let i = 1; i < pattern.length; i++) { + const ch = pattern[i]; + + if (escaped === true) { + escaped = false; + continue; + } + + if (ch === '\\') { + escaped = true; + continue; + } + + if (ch === '"') { + quote = quote === 1 ? 0 : 1; + continue; + } + + if (quote === 1) { + continue; + } + + if (ch === '[') { + bracket++; + continue; + } + + if (ch === ']' && bracket > 0) { + bracket--; + continue; + } + + if (bracket > 0) { + continue; + } + + if (ch === '(') { + paren++; + continue; + } + + if (ch === ')') { + paren--; + + if (paren === 0) { + if (requireEnd === true && i !== pattern.length - 1) { + return; + } + + return { + type: pattern[0], + body: pattern.slice(2, i), + end: i + }; + } + } + } +}; + +const getStarExtglobSequenceOutput = pattern => { + let index = 0; + const chars = []; + + while (index < pattern.length) { + const match = parseRepeatedExtglob(pattern.slice(index), false); + + if (!match || match.type !== '*') { + return; + } + + const branches = splitTopLevel(match.body).map(branch => branch.trim()); + if (branches.length !== 1) { + return; + } + + const branch = normalizeSimpleBranch(branches[0]); + if (!branch || branch.length !== 1) { + return; + } + + chars.push(branch); + index += match.end + 1; + } + + if (chars.length < 1) { + return; + } + + const source = chars.length === 1 + ? utils.escapeRegex(chars[0]) + : `[${chars.map(ch => utils.escapeRegex(ch)).join('')}]`; + + return `${source}*`; +}; + +const repeatedExtglobRecursion = pattern => { + let depth = 0; + let value = pattern.trim(); + let match = parseRepeatedExtglob(value); + + while (match) { + depth++; + value = match.body.trim(); + match = parseRepeatedExtglob(value); + } + + return depth; +}; + +const analyzeRepeatedExtglob = (body, options) => { + if (options.maxExtglobRecursion === false) { + return { risky: false }; + } + + const max = + typeof options.maxExtglobRecursion === 'number' + ? options.maxExtglobRecursion + : constants.DEFAULT_MAX_EXTGLOB_RECURSION; + + const branches = splitTopLevel(body).map(branch => branch.trim()); + + if (branches.length > 1) { + if ( + branches.some(branch => branch === '') || + branches.some(branch => /^[*?]+$/.test(branch)) || + hasRepeatedCharPrefixOverlap(branches) + ) { + return { risky: true }; + } + } + + for (const branch of branches) { + const safeOutput = getStarExtglobSequenceOutput(branch); + if (safeOutput) { + return { risky: true, safeOutput }; + } + + if (repeatedExtglobRecursion(branch) > max) { + return { risky: true }; + } + } + + return { risky: false }; +}; + /** * Parse the given input string. * @param {String} input @@ -12824,6 +12782,8 @@ const parse = (input, options) => { token.prev = prev; token.parens = state.parens; token.output = state.output; + token.startIndex = state.index; + token.tokensIndex = tokens.length; const output = (opts.capture ? '(' : '') + token.open; increment('parens'); @@ -12833,6 +12793,34 @@ const parse = (input, options) => { }; const extglobClose = token => { + const literal = input.slice(token.startIndex, state.index + 1); + const body = input.slice(token.startIndex + 2, state.index); + const analysis = analyzeRepeatedExtglob(body, opts); + + if ((token.type === 'plus' || token.type === 'star') && analysis.risky) { + const safeOutput = analysis.safeOutput + ? (token.output ? '' : ONE_CHAR) + (opts.capture ? `(${analysis.safeOutput})` : analysis.safeOutput) + : undefined; + const open = tokens[token.tokensIndex]; + + open.type = 'text'; + open.value = literal; + open.output = safeOutput || utils.escapeRegex(literal); + + for (let i = token.tokensIndex + 1; i < tokens.length; i++) { + tokens[i].value = ''; + tokens[i].output = ''; + delete tokens[i].suffix; + } + + state.output = token.output + open.output; + state.backtrack = true; + + push({ type: 'paren', extglob: true, value, output: '' }); + decrement('parens'); + return; + } + let output = token.close + (opts.capture ? ')' : ''); let rest; @@ -13691,16 +13679,16 @@ module.exports = parse; /***/ }), -/***/ 9448: +/***/ 1614: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const path = __nccwpck_require__(6928); -const scan = __nccwpck_require__(7992); -const parse = __nccwpck_require__(7898); -const utils = __nccwpck_require__(6784); -const constants = __nccwpck_require__(332); +const scan = __nccwpck_require__(3999); +const parse = __nccwpck_require__(51); +const utils = __nccwpck_require__(3753); +const constants = __nccwpck_require__(1237); const isObject = val => val && typeof val === 'object' && !Array.isArray(val); /** @@ -14040,12 +14028,12 @@ module.exports = picomatch; /***/ }), -/***/ 7992: +/***/ 3999: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const utils = __nccwpck_require__(6784); +const utils = __nccwpck_require__(3753); const { CHAR_ASTERISK, /* * */ CHAR_AT, /* @ */ @@ -14062,7 +14050,7 @@ const { CHAR_RIGHT_CURLY_BRACE, /* } */ CHAR_RIGHT_PARENTHESES, /* ) */ CHAR_RIGHT_SQUARE_BRACKET /* ] */ -} = __nccwpck_require__(332); +} = __nccwpck_require__(1237); const isPathSeparator = code => { return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH; @@ -14438,7 +14426,7 @@ module.exports = scan; /***/ }), -/***/ 6784: +/***/ 3753: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { @@ -14450,7 +14438,7 @@ const { REGEX_REMOVE_BACKSLASH, REGEX_SPECIAL_CHARS, REGEX_SPECIAL_CHARS_GLOBAL -} = __nccwpck_require__(332); +} = __nccwpck_require__(1237); exports.isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val); exports.hasRegexChars = str => REGEX_SPECIAL_CHARS.test(str); @@ -14509,7 +14497,7 @@ exports.wrapOutput = (input, state = {}, options = {}) => { /***/ }), -/***/ 1843: +/***/ 1989: /***/ ((module) => { /*! queue-microtask. MIT License. Feross Aboukhadijeh */ @@ -14525,7 +14513,7 @@ module.exports = typeof queueMicrotask === 'function' /***/ }), -/***/ 4088: +/***/ 3728: /***/ ((module) => { @@ -14565,13 +14553,13 @@ module.exports = reusify /***/ }), -/***/ 347: +/***/ 7906: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*! run-parallel. MIT License. Feross Aboukhadijeh */ module.exports = runParallel -const queueMicrotask = __nccwpck_require__(1843) +const queueMicrotask = __nccwpck_require__(1989) function runParallel (tasks, cb) { let results, pending, keys @@ -14623,7 +14611,7 @@ function runParallel (tasks, cb) { /***/ }), -/***/ 4395: +/***/ 743: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /*! @@ -14635,7 +14623,7 @@ function runParallel (tasks, cb) { -const isNumber = __nccwpck_require__(7850); +const isNumber = __nccwpck_require__(952); const toRegexRange = (min, max, options) => { if (isNumber(min) === false) { @@ -14918,15 +14906,15 @@ module.exports = toRegexRange; /***/ }), -/***/ 5070: +/***/ 7285: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -/* unused reexport */ __nccwpck_require__(5862); +/* unused reexport */ __nccwpck_require__(8703); /***/ }), -/***/ 5862: +/***/ 8703: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { var __webpack_unused_export__; @@ -15198,34 +15186,34 @@ __webpack_unused_export__ = debug; // for test /***/ }), -/***/ 1684: +/***/ 4906: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { var __webpack_unused_export__; -const Client = __nccwpck_require__(1313) -const Dispatcher = __nccwpck_require__(3415) -const Pool = __nccwpck_require__(5928) -const BalancedPool = __nccwpck_require__(6681) -const Agent = __nccwpck_require__(1745) -const ProxyAgent = __nccwpck_require__(7508) -const EnvHttpProxyAgent = __nccwpck_require__(9221) -const RetryAgent = __nccwpck_require__(334) -const errors = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) +const Client = __nccwpck_require__(979) +const Dispatcher = __nccwpck_require__(7029) +const Pool = __nccwpck_require__(9610) +const BalancedPool = __nccwpck_require__(7475) +const Agent = __nccwpck_require__(7823) +const ProxyAgent = __nccwpck_require__(826) +const EnvHttpProxyAgent = __nccwpck_require__(2935) +const RetryAgent = __nccwpck_require__(5308) +const errors = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) const { InvalidArgumentError } = errors -const api = __nccwpck_require__(2531) -const buildConnector = __nccwpck_require__(1332) -const MockClient = __nccwpck_require__(2361) -const MockAgent = __nccwpck_require__(7017) -const MockPool = __nccwpck_require__(6480) -const mockErrors = __nccwpck_require__(2673) -const RetryHandler = __nccwpck_require__(4004) -const { getGlobalDispatcher, setGlobalDispatcher } = __nccwpck_require__(1481) -const DecoratorHandler = __nccwpck_require__(9151) -const RedirectHandler = __nccwpck_require__(7158) -const createRedirectInterceptor = __nccwpck_require__(1576) +const api = __nccwpck_require__(3797) +const buildConnector = __nccwpck_require__(46) +const MockClient = __nccwpck_require__(6899) +const MockAgent = __nccwpck_require__(2527) +const MockPool = __nccwpck_require__(7226) +const mockErrors = __nccwpck_require__(2863) +const RetryHandler = __nccwpck_require__(1450) +const { getGlobalDispatcher, setGlobalDispatcher } = __nccwpck_require__(8707) +const DecoratorHandler = __nccwpck_require__(801) +const RedirectHandler = __nccwpck_require__(1932) +const createRedirectInterceptor = __nccwpck_require__(7958) Object.assign(Dispatcher.prototype, api) @@ -15243,10 +15231,10 @@ __webpack_unused_export__ = DecoratorHandler __webpack_unused_export__ = RedirectHandler __webpack_unused_export__ = createRedirectInterceptor __webpack_unused_export__ = { - redirect: __nccwpck_require__(7734), - retry: __nccwpck_require__(5486), - dump: __nccwpck_require__(5376), - dns: __nccwpck_require__(4287) + redirect: __nccwpck_require__(3184), + retry: __nccwpck_require__(5904), + dump: __nccwpck_require__(4166), + dns: __nccwpck_require__(4289) } __webpack_unused_export__ = buildConnector @@ -15308,7 +15296,7 @@ function makeDispatcher (fn) { __webpack_unused_export__ = setGlobalDispatcher __webpack_unused_export__ = getGlobalDispatcher -const fetchImpl = (__nccwpck_require__(4202).fetch) +const fetchImpl = (__nccwpck_require__(224).fetch) __webpack_unused_export__ = async function fetch (init, options = undefined) { try { return await fetchImpl(init, options) @@ -15320,39 +15308,39 @@ __webpack_unused_export__ = async function fetch (init, options = undefined) { throw err } } -/* unused reexport */ __nccwpck_require__(3408).Headers -/* unused reexport */ __nccwpck_require__(7287).Response -/* unused reexport */ __nccwpck_require__(9683).Request -/* unused reexport */ __nccwpck_require__(3818).FormData +/* unused reexport */ __nccwpck_require__(8146).Headers +/* unused reexport */ __nccwpck_require__(2873).Response +/* unused reexport */ __nccwpck_require__(557).Request +/* unused reexport */ __nccwpck_require__(8932).FormData __webpack_unused_export__ = globalThis.File ?? (__nccwpck_require__(4573).File) -/* unused reexport */ __nccwpck_require__(6575).FileReader +/* unused reexport */ __nccwpck_require__(7669).FileReader -const { setGlobalOrigin, getGlobalOrigin } = __nccwpck_require__(5311) +const { setGlobalOrigin, getGlobalOrigin } = __nccwpck_require__(777) __webpack_unused_export__ = setGlobalOrigin __webpack_unused_export__ = getGlobalOrigin -const { CacheStorage } = __nccwpck_require__(6577) -const { kConstruct } = __nccwpck_require__(8329) +const { CacheStorage } = __nccwpck_require__(4215) +const { kConstruct } = __nccwpck_require__(7747) // Cache & CacheStorage are tightly coupled with fetch. Even if it may run // in an older version of Node, it doesn't have any use without fetch. __webpack_unused_export__ = new CacheStorage(kConstruct) -const { deleteCookie, getCookies, getSetCookies, setCookie } = __nccwpck_require__(7889) +const { deleteCookie, getCookies, getSetCookies, setCookie } = __nccwpck_require__(8659) __webpack_unused_export__ = deleteCookie __webpack_unused_export__ = getCookies __webpack_unused_export__ = getSetCookies __webpack_unused_export__ = setCookie -const { parseMIMEType, serializeAMimeType } = __nccwpck_require__(192) +const { parseMIMEType, serializeAMimeType } = __nccwpck_require__(8394) __webpack_unused_export__ = parseMIMEType __webpack_unused_export__ = serializeAMimeType -const { CloseEvent, ErrorEvent, MessageEvent } = __nccwpck_require__(6760) -/* unused reexport */ __nccwpck_require__(2522).WebSocket +const { CloseEvent, ErrorEvent, MessageEvent } = __nccwpck_require__(7690) +/* unused reexport */ __nccwpck_require__(7836).WebSocket __webpack_unused_export__ = CloseEvent __webpack_unused_export__ = ErrorEvent __webpack_unused_export__ = MessageEvent @@ -15368,18 +15356,18 @@ __webpack_unused_export__ = MockPool __webpack_unused_export__ = MockAgent __webpack_unused_export__ = mockErrors -const { EventSource } = __nccwpck_require__(7042) +const { EventSource } = __nccwpck_require__(3276) __webpack_unused_export__ = EventSource /***/ }), -/***/ 2730: +/***/ 6756: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { addAbortListener } = __nccwpck_require__(9500) -const { RequestAbortedError } = __nccwpck_require__(3959) +const { addAbortListener } = __nccwpck_require__(7662) +const { RequestAbortedError } = __nccwpck_require__(5933) const kListener = Symbol('kListener') const kSignal = Symbol('kSignal') @@ -15439,16 +15427,16 @@ module.exports = { /***/ }), -/***/ 3192: +/***/ 7530: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { AsyncResource } = __nccwpck_require__(6698) -const { InvalidArgumentError, SocketError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const { InvalidArgumentError, SocketError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { addSignal, removeSignal } = __nccwpck_require__(6756) class ConnectHandler extends AsyncResource { constructor (opts, callback) { @@ -15554,7 +15542,7 @@ module.exports = connect /***/ }), -/***/ 2466: +/***/ 8656: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -15568,10 +15556,10 @@ const { InvalidArgumentError, InvalidReturnValueError, RequestAbortedError -} = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) +} = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) const { AsyncResource } = __nccwpck_require__(6698) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const { addSignal, removeSignal } = __nccwpck_require__(6756) const assert = __nccwpck_require__(4589) const kResume = Symbol('resume') @@ -15812,16 +15800,16 @@ module.exports = pipeline /***/ }), -/***/ 887: +/***/ 7157: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { Readable } = __nccwpck_require__(8947) -const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { getResolveErrorBodyCallback } = __nccwpck_require__(363) +const { Readable } = __nccwpck_require__(2797) +const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { getResolveErrorBodyCallback } = __nccwpck_require__(3877) const { AsyncResource } = __nccwpck_require__(6698) class RequestHandler extends AsyncResource { @@ -16033,18 +16021,18 @@ module.exports.RequestHandler = RequestHandler /***/ }), -/***/ 4388: +/***/ 3718: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { finished, PassThrough } = __nccwpck_require__(7075) -const { InvalidArgumentError, InvalidReturnValueError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { getResolveErrorBodyCallback } = __nccwpck_require__(363) +const { InvalidArgumentError, InvalidReturnValueError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { getResolveErrorBodyCallback } = __nccwpck_require__(3877) const { AsyncResource } = __nccwpck_require__(6698) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const { addSignal, removeSignal } = __nccwpck_require__(6756) class StreamHandler extends AsyncResource { constructor (opts, factory, callback) { @@ -16260,15 +16248,15 @@ module.exports = stream /***/ }), -/***/ 6342: +/***/ 9764: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { InvalidArgumentError, SocketError } = __nccwpck_require__(3959) +const { InvalidArgumentError, SocketError } = __nccwpck_require__(5933) const { AsyncResource } = __nccwpck_require__(6698) -const util = __nccwpck_require__(9500) -const { addSignal, removeSignal } = __nccwpck_require__(2730) +const util = __nccwpck_require__(7662) +const { addSignal, removeSignal } = __nccwpck_require__(6756) const assert = __nccwpck_require__(4589) class UpgradeHandler extends AsyncResource { @@ -16375,21 +16363,21 @@ module.exports = upgrade /***/ }), -/***/ 2531: +/***/ 3797: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -module.exports.request = __nccwpck_require__(887) -module.exports.stream = __nccwpck_require__(4388) -module.exports.pipeline = __nccwpck_require__(2466) -module.exports.upgrade = __nccwpck_require__(6342) -module.exports.connect = __nccwpck_require__(3192) +module.exports.request = __nccwpck_require__(7157) +module.exports.stream = __nccwpck_require__(3718) +module.exports.pipeline = __nccwpck_require__(8656) +module.exports.upgrade = __nccwpck_require__(9764) +module.exports.connect = __nccwpck_require__(7530) /***/ }), -/***/ 8947: +/***/ 2797: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // Ported from https://github.com/nodejs/undici/pull/907 @@ -16398,9 +16386,9 @@ module.exports.connect = __nccwpck_require__(3192) const assert = __nccwpck_require__(4589) const { Readable } = __nccwpck_require__(7075) -const { RequestAbortedError, NotSupportedError, InvalidArgumentError, AbortError } = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { ReadableStreamFrom } = __nccwpck_require__(9500) +const { RequestAbortedError, NotSupportedError, InvalidArgumentError, AbortError } = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { ReadableStreamFrom } = __nccwpck_require__(7662) const kConsume = Symbol('kConsume') const kReading = Symbol('kReading') @@ -16781,15 +16769,15 @@ module.exports = { Readable: BodyReadable, chunksDecode } /***/ }), -/***/ 363: +/***/ 3877: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { ResponseStatusCodeError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) -const { chunksDecode } = __nccwpck_require__(8947) +const { chunksDecode } = __nccwpck_require__(2797) const CHUNK_LIMIT = 128 * 1024 async function getResolveErrorBodyCallback ({ callback, body, contentType, statusCode, statusMessage, headers }) { @@ -16881,16 +16869,16 @@ module.exports = { /***/ }), -/***/ 1332: +/***/ 46: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const net = __nccwpck_require__(7030) const assert = __nccwpck_require__(4589) -const util = __nccwpck_require__(9500) -const { InvalidArgumentError, ConnectTimeoutError } = __nccwpck_require__(3959) -const timers = __nccwpck_require__(4591) +const util = __nccwpck_require__(7662) +const { InvalidArgumentError, ConnectTimeoutError } = __nccwpck_require__(5933) +const timers = __nccwpck_require__(7797) function noop () {} @@ -17128,7 +17116,7 @@ module.exports = buildConnector /***/ }), -/***/ 2371: +/***/ 7313: /***/ ((module) => { @@ -17253,7 +17241,7 @@ module.exports = { /***/ }), -/***/ 5458: +/***/ 8560: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -17462,7 +17450,7 @@ module.exports = { /***/ }), -/***/ 3959: +/***/ 5933: /***/ ((module) => { @@ -17894,7 +17882,7 @@ module.exports = { /***/ }), -/***/ 9691: +/***/ 9441: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -17902,7 +17890,7 @@ module.exports = { const { InvalidArgumentError, NotSupportedError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const assert = __nccwpck_require__(4589) const { isValidHTTPToken, @@ -17917,9 +17905,9 @@ const { validateHandler, getServerName, normalizedMethodRecords -} = __nccwpck_require__(9500) -const { channels } = __nccwpck_require__(5458) -const { headerNameLowerCasedRecord } = __nccwpck_require__(2371) +} = __nccwpck_require__(7662) +const { channels } = __nccwpck_require__(8560) +const { headerNameLowerCasedRecord } = __nccwpck_require__(7313) // Verifies that a given path is valid does not contain control chars \x00 to \x20 const invalidPathRegex = /[^\u0021-\u00ff]/ @@ -18306,7 +18294,7 @@ module.exports = Request /***/ }), -/***/ 8031: +/***/ 3373: /***/ ((module) => { module.exports = { @@ -18380,7 +18368,7 @@ module.exports = { /***/ }), -/***/ 6868: +/***/ 6338: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -18388,7 +18376,7 @@ module.exports = { const { wellknownHeaderNames, headerNameLowerCasedRecord -} = __nccwpck_require__(2371) +} = __nccwpck_require__(7313) class TstNode { /** @type {any} */ @@ -18539,13 +18527,13 @@ module.exports = { /***/ }), -/***/ 9500: +/***/ 7662: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { kDestroyed, kBodyUsed, kListeners, kBody } = __nccwpck_require__(8031) +const { kDestroyed, kBodyUsed, kListeners, kBody } = __nccwpck_require__(3373) const { IncomingMessage } = __nccwpck_require__(7067) const stream = __nccwpck_require__(7075) const net = __nccwpck_require__(7030) @@ -18553,9 +18541,9 @@ const { Blob } = __nccwpck_require__(4573) const nodeUtil = __nccwpck_require__(7975) const { stringify } = __nccwpck_require__(1792) const { EventEmitter: EE } = __nccwpck_require__(8474) -const { InvalidArgumentError } = __nccwpck_require__(3959) -const { headerNameLowerCasedRecord } = __nccwpck_require__(2371) -const { tree } = __nccwpck_require__(6868) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const { headerNameLowerCasedRecord } = __nccwpck_require__(7313) +const { tree } = __nccwpck_require__(6338) const [nodeMajor, nodeMinor] = process.versions.node.split('.').map(v => Number(v)) @@ -19265,18 +19253,18 @@ module.exports = { /***/ }), -/***/ 1745: +/***/ 7823: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { InvalidArgumentError } = __nccwpck_require__(3959) -const { kClients, kRunning, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(8031) -const DispatcherBase = __nccwpck_require__(1517) -const Pool = __nccwpck_require__(5928) -const Client = __nccwpck_require__(1313) -const util = __nccwpck_require__(9500) -const createRedirectInterceptor = __nccwpck_require__(1576) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const { kClients, kRunning, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(3373) +const DispatcherBase = __nccwpck_require__(103) +const Pool = __nccwpck_require__(9610) +const Client = __nccwpck_require__(979) +const util = __nccwpck_require__(7662) +const createRedirectInterceptor = __nccwpck_require__(7958) const kOnConnect = Symbol('onConnect') const kOnDisconnect = Symbol('onDisconnect') @@ -19401,7 +19389,7 @@ module.exports = Agent /***/ }), -/***/ 6681: +/***/ 7475: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -19409,7 +19397,7 @@ module.exports = Agent const { BalancedPoolMissingUpstreamError, InvalidArgumentError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const { PoolBase, kClients, @@ -19417,10 +19405,10 @@ const { kAddClient, kRemoveClient, kGetDispatcher -} = __nccwpck_require__(7292) -const Pool = __nccwpck_require__(5928) -const { kUrl, kInterceptors } = __nccwpck_require__(8031) -const { parseOrigin } = __nccwpck_require__(9500) +} = __nccwpck_require__(9266) +const Pool = __nccwpck_require__(9610) +const { kUrl, kInterceptors } = __nccwpck_require__(3373) +const { parseOrigin } = __nccwpck_require__(7662) const kFactory = Symbol('factory') const kOptions = Symbol('options') @@ -19617,7 +19605,7 @@ module.exports = BalancedPool /***/ }), -/***/ 4393: +/***/ 7727: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -19625,9 +19613,9 @@ module.exports = BalancedPool /* global WebAssembly */ const assert = __nccwpck_require__(4589) -const util = __nccwpck_require__(9500) -const { channels } = __nccwpck_require__(5458) -const timers = __nccwpck_require__(4591) +const util = __nccwpck_require__(7662) +const { channels } = __nccwpck_require__(8560) +const timers = __nccwpck_require__(7797) const { RequestContentLengthMismatchError, ResponseContentLengthMismatchError, @@ -19639,7 +19627,7 @@ const { BodyTimeoutError, HTTPParserError, ResponseExceededMaxSizeError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const { kUrl, kReset, @@ -19672,9 +19660,9 @@ const { kOnError, kResume, kHTTPContext -} = __nccwpck_require__(8031) +} = __nccwpck_require__(3373) -const constants = __nccwpck_require__(748) +const constants = __nccwpck_require__(1214) const EMPTY_BUF = Buffer.alloc(0) const FastBuffer = Buffer[Symbol.species] const addListener = util.addListener @@ -19683,11 +19671,11 @@ const removeAllListeners = util.removeAllListeners let extractBody async function lazyllhttp () { - const llhttpWasmData = process.env.JEST_WORKER_ID ? __nccwpck_require__(3922) : undefined + const llhttpWasmData = process.env.JEST_WORKER_ID ? __nccwpck_require__(4916) : undefined let mod try { - mod = await WebAssembly.compile(__nccwpck_require__(3742)) + mod = await WebAssembly.compile(__nccwpck_require__(7708)) } catch (e) { /* istanbul ignore next */ @@ -19695,7 +19683,7 @@ async function lazyllhttp () { // being enabled, but the occurring of this other error // * https://github.com/emscripten-core/emscripten/issues/11495 // got me to remove that check to avoid breaking Node 12. - mod = await WebAssembly.compile(llhttpWasmData || __nccwpck_require__(3922)) + mod = await WebAssembly.compile(llhttpWasmData || __nccwpck_require__(4916)) } return await WebAssembly.instantiate(mod, { @@ -20490,7 +20478,7 @@ function writeH1 (client, request) { if (util.isFormDataLike(body)) { if (!extractBody) { - extractBody = (__nccwpck_require__(1448).extractBody) + extractBody = (__nccwpck_require__(4086).extractBody) } const [bodyStream, contentType] = extractBody(body) @@ -20994,20 +20982,20 @@ module.exports = connectH1 /***/ }), -/***/ 3504: +/***/ 930: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) const { pipeline } = __nccwpck_require__(7075) -const util = __nccwpck_require__(9500) +const util = __nccwpck_require__(7662) const { RequestContentLengthMismatchError, RequestAbortedError, SocketError, InformationalError -} = __nccwpck_require__(3959) +} = __nccwpck_require__(5933) const { kUrl, kReset, @@ -21026,7 +21014,7 @@ const { kResume, kSize, kHTTPContext -} = __nccwpck_require__(8031) +} = __nccwpck_require__(3373) const kOpenStreams = Symbol('open streams') @@ -21385,7 +21373,7 @@ function writeH2 (client, request) { let contentLength = util.bodyLength(body) if (util.isFormDataLike(body)) { - extractBody ??= (__nccwpck_require__(1448).extractBody) + extractBody ??= (__nccwpck_require__(4086).extractBody) const [bodyStream, contentType] = extractBody(body) headers['content-type'] = contentType @@ -21745,7 +21733,7 @@ module.exports = connectH2 /***/ }), -/***/ 1313: +/***/ 979: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // @ts-check @@ -21755,16 +21743,16 @@ module.exports = connectH2 const assert = __nccwpck_require__(4589) const net = __nccwpck_require__(7030) const http = __nccwpck_require__(7067) -const util = __nccwpck_require__(9500) -const { channels } = __nccwpck_require__(5458) -const Request = __nccwpck_require__(9691) -const DispatcherBase = __nccwpck_require__(1517) +const util = __nccwpck_require__(7662) +const { channels } = __nccwpck_require__(8560) +const Request = __nccwpck_require__(9441) +const DispatcherBase = __nccwpck_require__(103) const { InvalidArgumentError, InformationalError, ClientDestroyedError -} = __nccwpck_require__(3959) -const buildConnector = __nccwpck_require__(1332) +} = __nccwpck_require__(5933) +const buildConnector = __nccwpck_require__(46) const { kUrl, kServerName, @@ -21806,9 +21794,9 @@ const { kHTTPContext, kMaxConcurrentStreams, kResume -} = __nccwpck_require__(8031) -const connectH1 = __nccwpck_require__(4393) -const connectH2 = __nccwpck_require__(3504) +} = __nccwpck_require__(3373) +const connectH1 = __nccwpck_require__(7727) +const connectH2 = __nccwpck_require__(930) let deprecatedInterceptorWarned = false const kClosedResolve = Symbol('kClosedResolve') @@ -22114,7 +22102,7 @@ class Client extends DispatcherBase { } } -const createRedirectInterceptor = __nccwpck_require__(1576) +const createRedirectInterceptor = __nccwpck_require__(7958) function onError (client, err) { if ( @@ -22374,18 +22362,18 @@ module.exports = Client /***/ }), -/***/ 1517: +/***/ 103: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const Dispatcher = __nccwpck_require__(3415) +const Dispatcher = __nccwpck_require__(7029) const { ClientDestroyedError, ClientClosedError, InvalidArgumentError -} = __nccwpck_require__(3959) -const { kDestroy, kClose, kClosed, kDestroyed, kDispatch, kInterceptors } = __nccwpck_require__(8031) +} = __nccwpck_require__(5933) +const { kDestroy, kClose, kClosed, kDestroyed, kDispatch, kInterceptors } = __nccwpck_require__(3373) const kOnDestroyed = Symbol('onDestroyed') const kOnClosed = Symbol('onClosed') @@ -22571,7 +22559,7 @@ module.exports = DispatcherBase /***/ }), -/***/ 3415: +/***/ 7029: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -22643,15 +22631,15 @@ module.exports = Dispatcher /***/ }), -/***/ 9221: +/***/ 2935: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const DispatcherBase = __nccwpck_require__(1517) -const { kClose, kDestroy, kClosed, kDestroyed, kDispatch, kNoProxyAgent, kHttpProxyAgent, kHttpsProxyAgent } = __nccwpck_require__(8031) -const ProxyAgent = __nccwpck_require__(7508) -const Agent = __nccwpck_require__(1745) +const DispatcherBase = __nccwpck_require__(103) +const { kClose, kDestroy, kClosed, kDestroyed, kDispatch, kNoProxyAgent, kHttpProxyAgent, kHttpsProxyAgent } = __nccwpck_require__(3373) +const ProxyAgent = __nccwpck_require__(826) +const Agent = __nccwpck_require__(7823) const DEFAULT_PORTS = { 'http:': 80, @@ -22810,7 +22798,7 @@ module.exports = EnvHttpProxyAgent /***/ }), -/***/ 5464: +/***/ 1034: /***/ ((module) => { /* eslint-disable */ @@ -22934,15 +22922,15 @@ module.exports = class FixedQueue { /***/ }), -/***/ 7292: +/***/ 9266: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const DispatcherBase = __nccwpck_require__(1517) -const FixedQueue = __nccwpck_require__(5464) -const { kConnected, kSize, kRunning, kPending, kQueued, kBusy, kFree, kUrl, kClose, kDestroy, kDispatch } = __nccwpck_require__(8031) -const PoolStats = __nccwpck_require__(8186) +const DispatcherBase = __nccwpck_require__(103) +const FixedQueue = __nccwpck_require__(1034) +const { kConnected, kSize, kRunning, kPending, kQueued, kBusy, kFree, kUrl, kClose, kDestroy, kDispatch } = __nccwpck_require__(3373) +const PoolStats = __nccwpck_require__(7956) const kClients = Symbol('clients') const kNeedDrain = Symbol('needDrain') @@ -23135,10 +23123,10 @@ module.exports = { /***/ }), -/***/ 8186: +/***/ 7956: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kFree, kConnected, kPending, kQueued, kRunning, kSize } = __nccwpck_require__(8031) +const { kFree, kConnected, kPending, kQueued, kRunning, kSize } = __nccwpck_require__(3373) const kPool = Symbol('pool') class PoolStats { @@ -23176,7 +23164,7 @@ module.exports = PoolStats /***/ }), -/***/ 5928: +/***/ 9610: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -23187,14 +23175,14 @@ const { kNeedDrain, kAddClient, kGetDispatcher -} = __nccwpck_require__(7292) -const Client = __nccwpck_require__(1313) +} = __nccwpck_require__(9266) +const Client = __nccwpck_require__(979) const { InvalidArgumentError -} = __nccwpck_require__(3959) -const util = __nccwpck_require__(9500) -const { kUrl, kInterceptors } = __nccwpck_require__(8031) -const buildConnector = __nccwpck_require__(1332) +} = __nccwpck_require__(5933) +const util = __nccwpck_require__(7662) +const { kUrl, kInterceptors } = __nccwpck_require__(3373) +const buildConnector = __nccwpck_require__(46) const kOptions = Symbol('options') const kConnections = Symbol('connections') @@ -23290,19 +23278,19 @@ module.exports = Pool /***/ }), -/***/ 7508: +/***/ 826: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kProxy, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(8031) +const { kProxy, kClose, kDestroy, kDispatch, kInterceptors } = __nccwpck_require__(3373) const { URL } = __nccwpck_require__(3136) -const Agent = __nccwpck_require__(1745) -const Pool = __nccwpck_require__(5928) -const DispatcherBase = __nccwpck_require__(1517) -const { InvalidArgumentError, RequestAbortedError, SecureProxyConnectionError } = __nccwpck_require__(3959) -const buildConnector = __nccwpck_require__(1332) -const Client = __nccwpck_require__(1313) +const Agent = __nccwpck_require__(7823) +const Pool = __nccwpck_require__(9610) +const DispatcherBase = __nccwpck_require__(103) +const { InvalidArgumentError, RequestAbortedError, SecureProxyConnectionError } = __nccwpck_require__(5933) +const buildConnector = __nccwpck_require__(46) +const Client = __nccwpck_require__(979) const kAgent = Symbol('proxy agent') const kClient = Symbol('proxy client') @@ -23571,13 +23559,13 @@ module.exports = ProxyAgent /***/ }), -/***/ 334: +/***/ 5308: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const Dispatcher = __nccwpck_require__(3415) -const RetryHandler = __nccwpck_require__(4004) +const Dispatcher = __nccwpck_require__(7029) +const RetryHandler = __nccwpck_require__(1450) class RetryAgent extends Dispatcher { #agent = null @@ -23613,7 +23601,7 @@ module.exports = RetryAgent /***/ }), -/***/ 1481: +/***/ 8707: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -23621,8 +23609,8 @@ module.exports = RetryAgent // We include a version number for the Dispatcher API. In case of breaking changes, // this version number must be increased to avoid conflicts. const globalDispatcher = Symbol.for('undici.globalDispatcher.1') -const { InvalidArgumentError } = __nccwpck_require__(3959) -const Agent = __nccwpck_require__(1745) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const Agent = __nccwpck_require__(7823) if (getGlobalDispatcher() === undefined) { setGlobalDispatcher(new Agent()) @@ -23652,7 +23640,7 @@ module.exports = { /***/ }), -/***/ 9151: +/***/ 801: /***/ ((module) => { @@ -23703,15 +23691,15 @@ module.exports = class DecoratorHandler { /***/ }), -/***/ 7158: +/***/ 1932: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const util = __nccwpck_require__(9500) -const { kBodyUsed } = __nccwpck_require__(8031) +const util = __nccwpck_require__(7662) +const { kBodyUsed } = __nccwpck_require__(3373) const assert = __nccwpck_require__(4589) -const { InvalidArgumentError } = __nccwpck_require__(3959) +const { InvalidArgumentError } = __nccwpck_require__(5933) const EE = __nccwpck_require__(8474) const redirectableStatusCodes = [300, 301, 302, 303, 307, 308] @@ -23942,20 +23930,20 @@ module.exports = RedirectHandler /***/ }), -/***/ 4004: +/***/ 1450: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { kRetryHandlerDefaultRetry } = __nccwpck_require__(8031) -const { RequestRetryError } = __nccwpck_require__(3959) +const { kRetryHandlerDefaultRetry } = __nccwpck_require__(3373) +const { RequestRetryError } = __nccwpck_require__(5933) const { isDisturbed, parseHeaders, parseRangeHeader, wrapRequestBody -} = __nccwpck_require__(9500) +} = __nccwpck_require__(7662) function calculateRetryAfterHeader (retryAfter) { const current = Date.now() @@ -24323,14 +24311,14 @@ module.exports = RetryHandler /***/ }), -/***/ 4287: +/***/ 4289: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { isIP } = __nccwpck_require__(7030) const { lookup } = __nccwpck_require__(610) -const DecoratorHandler = __nccwpck_require__(9151) -const { InvalidArgumentError, InformationalError } = __nccwpck_require__(3959) +const DecoratorHandler = __nccwpck_require__(801) +const { InvalidArgumentError, InformationalError } = __nccwpck_require__(5933) const maxInt = Math.pow(2, 31) - 1 class DNSInstance { @@ -24705,14 +24693,14 @@ module.exports = interceptorOpts => { /***/ }), -/***/ 5376: +/***/ 4166: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const util = __nccwpck_require__(9500) -const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(3959) -const DecoratorHandler = __nccwpck_require__(9151) +const util = __nccwpck_require__(7662) +const { InvalidArgumentError, RequestAbortedError } = __nccwpck_require__(5933) +const DecoratorHandler = __nccwpck_require__(801) class DumpHandler extends DecoratorHandler { #maxSize = 1024 * 1024 @@ -24835,12 +24823,12 @@ module.exports = createDumpInterceptor /***/ }), -/***/ 1576: +/***/ 7958: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const RedirectHandler = __nccwpck_require__(7158) +const RedirectHandler = __nccwpck_require__(1932) function createRedirectInterceptor ({ maxRedirections: defaultMaxRedirections }) { return (dispatch) => { @@ -24863,11 +24851,11 @@ module.exports = createRedirectInterceptor /***/ }), -/***/ 7734: +/***/ 3184: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const RedirectHandler = __nccwpck_require__(7158) +const RedirectHandler = __nccwpck_require__(1932) module.exports = opts => { const globalMaxRedirections = opts?.maxRedirections @@ -24894,11 +24882,11 @@ module.exports = opts => { /***/ }), -/***/ 5486: +/***/ 5904: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const RetryHandler = __nccwpck_require__(4004) +const RetryHandler = __nccwpck_require__(1450) module.exports = globalOpts => { return dispatch => { @@ -24920,13 +24908,13 @@ module.exports = globalOpts => { /***/ }), -/***/ 748: +/***/ 1214: /***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports.SPECIAL_HEADERS = exports.HEADER_STATE = exports.MINOR = exports.MAJOR = exports.CONNECTION_TOKEN_CHARS = exports.HEADER_CHARS = exports.TOKEN = exports.STRICT_TOKEN = exports.HEX = exports.URL_CHAR = exports.STRICT_URL_CHAR = exports.USERINFO_CHARS = exports.MARK = exports.ALPHANUM = exports.NUM = exports.HEX_MAP = exports.NUM_MAP = exports.ALPHA = exports.FINISH = exports.H_METHOD_MAP = exports.METHOD_MAP = exports.METHODS_RTSP = exports.METHODS_ICE = exports.METHODS_HTTP = exports.METHODS = exports.LENIENT_FLAGS = exports.FLAGS = exports.TYPE = exports.ERROR = void 0; -const utils_1 = __nccwpck_require__(4608); +const utils_1 = __nccwpck_require__(9430); // C headers var ERROR; (function (ERROR) { @@ -25204,7 +25192,7 @@ exports.SPECIAL_HEADERS = { /***/ }), -/***/ 3922: +/***/ 4916: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -25216,7 +25204,7 @@ module.exports = Buffer.from('AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f3 /***/ }), -/***/ 3742: +/***/ 7708: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -25228,7 +25216,7 @@ module.exports = Buffer.from('AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f3 /***/ }), -/***/ 4608: +/***/ 9430: /***/ ((__unused_webpack_module, exports) => { @@ -25249,13 +25237,13 @@ exports.enumToMap = enumToMap; /***/ }), -/***/ 7017: +/***/ 2527: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kClients } = __nccwpck_require__(8031) -const Agent = __nccwpck_require__(1745) +const { kClients } = __nccwpck_require__(3373) +const Agent = __nccwpck_require__(7823) const { kAgent, kMockAgentSet, @@ -25266,14 +25254,14 @@ const { kGetNetConnect, kOptions, kFactory -} = __nccwpck_require__(2305) -const MockClient = __nccwpck_require__(2361) -const MockPool = __nccwpck_require__(6480) -const { matchValue, buildMockOptions } = __nccwpck_require__(3193) -const { InvalidArgumentError, UndiciError } = __nccwpck_require__(3959) -const Dispatcher = __nccwpck_require__(3415) -const Pluralizer = __nccwpck_require__(5773) -const PendingInterceptorsFormatter = __nccwpck_require__(5738) +} = __nccwpck_require__(7351) +const MockClient = __nccwpck_require__(6899) +const MockPool = __nccwpck_require__(7226) +const { matchValue, buildMockOptions } = __nccwpck_require__(987) +const { InvalidArgumentError, UndiciError } = __nccwpck_require__(5933) +const Dispatcher = __nccwpck_require__(7029) +const Pluralizer = __nccwpck_require__(899) +const PendingInterceptorsFormatter = __nccwpck_require__(3576) class MockAgent extends Dispatcher { constructor (opts) { @@ -25416,14 +25404,14 @@ module.exports = MockAgent /***/ }), -/***/ 2361: +/***/ 6899: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { promisify } = __nccwpck_require__(7975) -const Client = __nccwpck_require__(1313) -const { buildMockDispatch } = __nccwpck_require__(3193) +const Client = __nccwpck_require__(979) +const { buildMockDispatch } = __nccwpck_require__(987) const { kDispatches, kMockAgent, @@ -25432,10 +25420,10 @@ const { kOrigin, kOriginalDispatch, kConnected -} = __nccwpck_require__(2305) -const { MockInterceptor } = __nccwpck_require__(5843) -const Symbols = __nccwpck_require__(8031) -const { InvalidArgumentError } = __nccwpck_require__(3959) +} = __nccwpck_require__(7351) +const { MockInterceptor } = __nccwpck_require__(3237) +const Symbols = __nccwpck_require__(3373) +const { InvalidArgumentError } = __nccwpck_require__(5933) /** * MockClient provides an API that extends the Client to influence the mockDispatches. @@ -25482,12 +25470,12 @@ module.exports = MockClient /***/ }), -/***/ 2673: +/***/ 2863: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { UndiciError } = __nccwpck_require__(3959) +const { UndiciError } = __nccwpck_require__(5933) const kMockNotMatchedError = Symbol.for('undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED') @@ -25517,12 +25505,12 @@ module.exports = { /***/ }), -/***/ 5843: +/***/ 3237: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { getResponseData, buildKey, addMockDispatch } = __nccwpck_require__(3193) +const { getResponseData, buildKey, addMockDispatch } = __nccwpck_require__(987) const { kDispatches, kDispatchKey, @@ -25530,9 +25518,9 @@ const { kDefaultTrailers, kContentLength, kMockDispatch -} = __nccwpck_require__(2305) -const { InvalidArgumentError } = __nccwpck_require__(3959) -const { buildURL } = __nccwpck_require__(9500) +} = __nccwpck_require__(7351) +const { InvalidArgumentError } = __nccwpck_require__(5933) +const { buildURL } = __nccwpck_require__(7662) /** * Defines the scope API for an interceptor reply @@ -25731,14 +25719,14 @@ module.exports.MockScope = MockScope /***/ }), -/***/ 6480: +/***/ 7226: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { promisify } = __nccwpck_require__(7975) -const Pool = __nccwpck_require__(5928) -const { buildMockDispatch } = __nccwpck_require__(3193) +const Pool = __nccwpck_require__(9610) +const { buildMockDispatch } = __nccwpck_require__(987) const { kDispatches, kMockAgent, @@ -25747,10 +25735,10 @@ const { kOrigin, kOriginalDispatch, kConnected -} = __nccwpck_require__(2305) -const { MockInterceptor } = __nccwpck_require__(5843) -const Symbols = __nccwpck_require__(8031) -const { InvalidArgumentError } = __nccwpck_require__(3959) +} = __nccwpck_require__(7351) +const { MockInterceptor } = __nccwpck_require__(3237) +const Symbols = __nccwpck_require__(3373) +const { InvalidArgumentError } = __nccwpck_require__(5933) /** * MockPool provides an API that extends the Pool to influence the mockDispatches. @@ -25797,7 +25785,7 @@ module.exports = MockPool /***/ }), -/***/ 2305: +/***/ 7351: /***/ ((module) => { @@ -25827,20 +25815,20 @@ module.exports = { /***/ }), -/***/ 3193: +/***/ 987: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { MockNotMatchedError } = __nccwpck_require__(2673) +const { MockNotMatchedError } = __nccwpck_require__(2863) const { kDispatches, kMockAgent, kOriginalDispatch, kOrigin, kGetNetConnect -} = __nccwpck_require__(2305) -const { buildURL } = __nccwpck_require__(9500) +} = __nccwpck_require__(7351) +const { buildURL } = __nccwpck_require__(7662) const { STATUS_CODES } = __nccwpck_require__(7067) const { types: { @@ -26201,7 +26189,7 @@ module.exports = { /***/ }), -/***/ 5738: +/***/ 3576: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -26251,7 +26239,7 @@ module.exports = class PendingInterceptorsFormatter { /***/ }), -/***/ 5773: +/***/ 899: /***/ ((module) => { @@ -26287,7 +26275,7 @@ module.exports = class Pluralizer { /***/ }), -/***/ 4591: +/***/ 7797: /***/ ((module) => { @@ -26717,20 +26705,20 @@ module.exports = { /***/ }), -/***/ 9918: +/***/ 3416: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kConstruct } = __nccwpck_require__(8329) -const { urlEquals, getFieldValues } = __nccwpck_require__(3762) -const { kEnumerableProperty, isDisturbed } = __nccwpck_require__(9500) -const { webidl } = __nccwpck_require__(4625) -const { Response, cloneResponse, fromInnerResponse } = __nccwpck_require__(7287) -const { Request, fromInnerRequest } = __nccwpck_require__(9683) -const { kState } = __nccwpck_require__(3175) -const { fetching } = __nccwpck_require__(4202) -const { urlIsHttpHttpsScheme, createDeferredPromise, readAllBytes } = __nccwpck_require__(1204) +const { kConstruct } = __nccwpck_require__(7747) +const { urlEquals, getFieldValues } = __nccwpck_require__(9272) +const { kEnumerableProperty, isDisturbed } = __nccwpck_require__(7662) +const { webidl } = __nccwpck_require__(9735) +const { Response, cloneResponse, fromInnerResponse } = __nccwpck_require__(2873) +const { Request, fromInnerRequest } = __nccwpck_require__(557) +const { kState } = __nccwpck_require__(1) +const { fetching } = __nccwpck_require__(224) +const { urlIsHttpHttpsScheme, createDeferredPromise, readAllBytes } = __nccwpck_require__(7722) const assert = __nccwpck_require__(4589) /** @@ -27583,15 +27571,15 @@ module.exports = { /***/ }), -/***/ 6577: +/***/ 4215: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kConstruct } = __nccwpck_require__(8329) -const { Cache } = __nccwpck_require__(9918) -const { webidl } = __nccwpck_require__(4625) -const { kEnumerableProperty } = __nccwpck_require__(9500) +const { kConstruct } = __nccwpck_require__(7747) +const { Cache } = __nccwpck_require__(3416) +const { webidl } = __nccwpck_require__(9735) +const { kEnumerableProperty } = __nccwpck_require__(7662) class CacheStorage { /** @@ -27742,26 +27730,26 @@ module.exports = { /***/ }), -/***/ 8329: +/***/ 7747: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { module.exports = { - kConstruct: (__nccwpck_require__(8031).kConstruct) + kConstruct: (__nccwpck_require__(3373).kConstruct) } /***/ }), -/***/ 3762: +/***/ 9272: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const assert = __nccwpck_require__(4589) -const { URLSerializer } = __nccwpck_require__(192) -const { isValidHeaderName } = __nccwpck_require__(1204) +const { URLSerializer } = __nccwpck_require__(8394) +const { isValidHeaderName } = __nccwpck_require__(7722) /** * @see https://url.spec.whatwg.org/#concept-url-equals @@ -27806,7 +27794,7 @@ module.exports = { /***/ }), -/***/ 5848: +/***/ 1574: /***/ ((module) => { @@ -27825,15 +27813,15 @@ module.exports = { /***/ }), -/***/ 7889: +/***/ 8659: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { parseSetCookie } = __nccwpck_require__(1814) -const { stringify } = __nccwpck_require__(185) -const { webidl } = __nccwpck_require__(4625) -const { Headers } = __nccwpck_require__(3408) +const { parseSetCookie } = __nccwpck_require__(3804) +const { stringify } = __nccwpck_require__(3643) +const { webidl } = __nccwpck_require__(9735) +const { Headers } = __nccwpck_require__(8146) /** * @typedef {Object} Cookie @@ -28016,14 +28004,14 @@ module.exports = { /***/ }), -/***/ 1814: +/***/ 3804: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { maxNameValuePairSize, maxAttributeValueSize } = __nccwpck_require__(5848) -const { isCTLExcludingHtab } = __nccwpck_require__(185) -const { collectASequenceOfCodePointsFast } = __nccwpck_require__(192) +const { maxNameValuePairSize, maxAttributeValueSize } = __nccwpck_require__(1574) +const { isCTLExcludingHtab } = __nccwpck_require__(3643) +const { collectASequenceOfCodePointsFast } = __nccwpck_require__(8394) const assert = __nccwpck_require__(4589) /** @@ -28340,7 +28328,7 @@ module.exports = { /***/ }), -/***/ 185: +/***/ 3643: /***/ ((module) => { @@ -28629,12 +28617,12 @@ module.exports = { /***/ }), -/***/ 8819: +/***/ 6521: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Transform } = __nccwpck_require__(7075) -const { isASCIINumber, isValidLastEventId } = __nccwpck_require__(3943) +const { isASCIINumber, isValidLastEventId } = __nccwpck_require__(6293) /** * @type {number[]} BOM @@ -29034,22 +29022,22 @@ module.exports = { /***/ }), -/***/ 7042: +/***/ 3276: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { pipeline } = __nccwpck_require__(7075) -const { fetching } = __nccwpck_require__(4202) -const { makeRequest } = __nccwpck_require__(9683) -const { webidl } = __nccwpck_require__(4625) -const { EventSourceStream } = __nccwpck_require__(8819) -const { parseMIMEType } = __nccwpck_require__(192) -const { createFastMessageEvent } = __nccwpck_require__(6760) -const { isNetworkError } = __nccwpck_require__(7287) -const { delay } = __nccwpck_require__(3943) -const { kEnumerableProperty } = __nccwpck_require__(9500) -const { environmentSettingsObject } = __nccwpck_require__(1204) +const { fetching } = __nccwpck_require__(224) +const { makeRequest } = __nccwpck_require__(557) +const { webidl } = __nccwpck_require__(9735) +const { EventSourceStream } = __nccwpck_require__(6521) +const { parseMIMEType } = __nccwpck_require__(8394) +const { createFastMessageEvent } = __nccwpck_require__(7690) +const { isNetworkError } = __nccwpck_require__(2873) +const { delay } = __nccwpck_require__(6293) +const { kEnumerableProperty } = __nccwpck_require__(7662) +const { environmentSettingsObject } = __nccwpck_require__(7722) let experimentalWarned = false @@ -29521,7 +29509,7 @@ module.exports = { /***/ }), -/***/ 3943: +/***/ 6293: /***/ ((module) => { @@ -29565,12 +29553,12 @@ module.exports = { /***/ }), -/***/ 1448: +/***/ 4086: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const util = __nccwpck_require__(9500) +const util = __nccwpck_require__(7662) const { ReadableStreamFrom, isBlobLike, @@ -29580,20 +29568,20 @@ const { fullyReadBody, extractMimeType, utf8DecodeBytes -} = __nccwpck_require__(1204) -const { FormData } = __nccwpck_require__(3818) -const { kState } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) +} = __nccwpck_require__(7722) +const { FormData } = __nccwpck_require__(8932) +const { kState } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) const { Blob } = __nccwpck_require__(4573) const assert = __nccwpck_require__(4589) const { isErrored, isDisturbed } = __nccwpck_require__(7075) const { isArrayBuffer } = __nccwpck_require__(3429) -const { serializeAMimeType } = __nccwpck_require__(192) -const { multipartFormDataParser } = __nccwpck_require__(8016) +const { serializeAMimeType } = __nccwpck_require__(8394) +const { multipartFormDataParser } = __nccwpck_require__(6442) let random try { - const crypto = __nccwpck_require__(7598) + const crypto = __nccwpck_require__(5217) random = (max) => crypto.randomInt(0, max) } catch { random = (max) => Math.floor(Math.random(max)) @@ -30101,7 +30089,7 @@ module.exports = { /***/ }), -/***/ 4219: +/***/ 1797: /***/ ((module) => { @@ -30232,7 +30220,7 @@ module.exports = { /***/ }), -/***/ 192: +/***/ 8394: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -30983,12 +30971,12 @@ module.exports = { /***/ }), -/***/ 8905: +/***/ 379: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kConnected, kSize } = __nccwpck_require__(8031) +const { kConnected, kSize } = __nccwpck_require__(3373) class CompatWeakRef { constructor (value) { @@ -31036,14 +31024,14 @@ module.exports = function () { /***/ }), -/***/ 3486: +/***/ 2944: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Blob, File } = __nccwpck_require__(4573) -const { kState } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) +const { kState } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) // TODO(@KhafraDev): remove class FileLike { @@ -31169,16 +31157,16 @@ module.exports = { FileLike, isFileLike } /***/ }), -/***/ 8016: +/***/ 6442: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { isUSVString, bufferToLowerCasedHeaderName } = __nccwpck_require__(9500) -const { utf8DecodeBytes } = __nccwpck_require__(1204) -const { HTTP_TOKEN_CODEPOINTS, isomorphicDecode } = __nccwpck_require__(192) -const { isFileLike } = __nccwpck_require__(3486) -const { makeEntry } = __nccwpck_require__(3818) +const { isUSVString, bufferToLowerCasedHeaderName } = __nccwpck_require__(7662) +const { utf8DecodeBytes } = __nccwpck_require__(7722) +const { HTTP_TOKEN_CODEPOINTS, isomorphicDecode } = __nccwpck_require__(8394) +const { isFileLike } = __nccwpck_require__(2944) +const { makeEntry } = __nccwpck_require__(8932) const assert = __nccwpck_require__(4589) const { File: NodeFile } = __nccwpck_require__(4573) @@ -31650,16 +31638,16 @@ module.exports = { /***/ }), -/***/ 3818: +/***/ 8932: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { isBlobLike, iteratorMixin } = __nccwpck_require__(1204) -const { kState } = __nccwpck_require__(3175) -const { kEnumerableProperty } = __nccwpck_require__(9500) -const { FileLike, isFileLike } = __nccwpck_require__(3486) -const { webidl } = __nccwpck_require__(4625) +const { isBlobLike, iteratorMixin } = __nccwpck_require__(7722) +const { kState } = __nccwpck_require__(1) +const { kEnumerableProperty } = __nccwpck_require__(7662) +const { FileLike, isFileLike } = __nccwpck_require__(2944) +const { webidl } = __nccwpck_require__(9735) const { File: NativeFile } = __nccwpck_require__(4573) const nodeUtil = __nccwpck_require__(7975) @@ -31909,7 +31897,7 @@ module.exports = { FormData, makeEntry } /***/ }), -/***/ 5311: +/***/ 777: /***/ ((module) => { @@ -31956,21 +31944,21 @@ module.exports = { /***/ }), -/***/ 3408: +/***/ 8146: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // https://github.com/Ethan-Arrowood/undici-fetch -const { kConstruct } = __nccwpck_require__(8031) -const { kEnumerableProperty } = __nccwpck_require__(9500) +const { kConstruct } = __nccwpck_require__(3373) +const { kEnumerableProperty } = __nccwpck_require__(7662) const { iteratorMixin, isValidHeaderName, isValidHeaderValue -} = __nccwpck_require__(1204) -const { webidl } = __nccwpck_require__(4625) +} = __nccwpck_require__(7722) +const { webidl } = __nccwpck_require__(9735) const assert = __nccwpck_require__(4589) const util = __nccwpck_require__(7975) @@ -32650,7 +32638,7 @@ module.exports = { /***/ }), -/***/ 4202: +/***/ 224: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { // https://github.com/Ethan-Arrowood/undici-fetch @@ -32663,9 +32651,9 @@ const { filterResponse, makeResponse, fromInnerResponse -} = __nccwpck_require__(7287) -const { HeadersList } = __nccwpck_require__(3408) -const { Request, cloneRequest } = __nccwpck_require__(9683) +} = __nccwpck_require__(2873) +const { HeadersList } = __nccwpck_require__(8146) +const { Request, cloneRequest } = __nccwpck_require__(557) const zlib = __nccwpck_require__(8522) const { bytesMatch, @@ -32701,23 +32689,23 @@ const { buildContentRange, createInflate, extractMimeType -} = __nccwpck_require__(1204) -const { kState, kDispatcher } = __nccwpck_require__(3175) +} = __nccwpck_require__(7722) +const { kState, kDispatcher } = __nccwpck_require__(1) const assert = __nccwpck_require__(4589) -const { safelyExtractBody, extractBody } = __nccwpck_require__(1448) +const { safelyExtractBody, extractBody } = __nccwpck_require__(4086) const { redirectStatusSet, nullBodyStatus, safeMethodsSet, requestBodyHeader, subresourceSet -} = __nccwpck_require__(4219) +} = __nccwpck_require__(1797) const EE = __nccwpck_require__(8474) const { Readable, pipeline, finished } = __nccwpck_require__(7075) -const { addAbortListener, isErrored, isReadable, bufferToLowerCasedHeaderName } = __nccwpck_require__(9500) -const { dataURLProcessor, serializeAMimeType, minimizeSupportedMimeType } = __nccwpck_require__(192) -const { getGlobalDispatcher } = __nccwpck_require__(1481) -const { webidl } = __nccwpck_require__(4625) +const { addAbortListener, isErrored, isReadable, bufferToLowerCasedHeaderName } = __nccwpck_require__(7662) +const { dataURLProcessor, serializeAMimeType, minimizeSupportedMimeType } = __nccwpck_require__(8394) +const { getGlobalDispatcher } = __nccwpck_require__(8707) +const { webidl } = __nccwpck_require__(9735) const { STATUS_CODES } = __nccwpck_require__(7067) const GET_OR_HEAD = ['GET', 'HEAD'] @@ -34929,23 +34917,23 @@ module.exports = { /***/ }), -/***/ 9683: +/***/ 557: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { /* globals AbortController */ -const { extractBody, mixinBody, cloneBody, bodyUnusable } = __nccwpck_require__(1448) -const { Headers, fill: fillHeaders, HeadersList, setHeadersGuard, getHeadersGuard, setHeadersList, getHeadersList } = __nccwpck_require__(3408) -const { FinalizationRegistry } = __nccwpck_require__(8905)() -const util = __nccwpck_require__(9500) +const { extractBody, mixinBody, cloneBody, bodyUnusable } = __nccwpck_require__(4086) +const { Headers, fill: fillHeaders, HeadersList, setHeadersGuard, getHeadersGuard, setHeadersList, getHeadersList } = __nccwpck_require__(8146) +const { FinalizationRegistry } = __nccwpck_require__(379)() +const util = __nccwpck_require__(7662) const nodeUtil = __nccwpck_require__(7975) const { isValidHTTPToken, sameOrigin, environmentSettingsObject -} = __nccwpck_require__(1204) +} = __nccwpck_require__(7722) const { forbiddenMethodsSet, corsSafeListedMethodsSet, @@ -34955,12 +34943,12 @@ const { requestCredentials, requestCache, requestDuplex -} = __nccwpck_require__(4219) +} = __nccwpck_require__(1797) const { kEnumerableProperty, normalizedMethodRecordsBase, normalizedMethodRecords } = util -const { kHeaders, kSignal, kState, kDispatcher } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) -const { URLSerializer } = __nccwpck_require__(192) -const { kConstruct } = __nccwpck_require__(8031) +const { kHeaders, kSignal, kState, kDispatcher } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) +const { URLSerializer } = __nccwpck_require__(8394) +const { kConstruct } = __nccwpck_require__(3373) const assert = __nccwpck_require__(4589) const { getMaxListeners, setMaxListeners, getEventListeners, defaultMaxListeners } = __nccwpck_require__(8474) @@ -35973,14 +35961,14 @@ module.exports = { Request, makeRequest, fromInnerRequest, cloneRequest } /***/ }), -/***/ 7287: +/***/ 2873: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { Headers, HeadersList, fill, getHeadersGuard, setHeadersGuard, setHeadersList } = __nccwpck_require__(3408) -const { extractBody, cloneBody, mixinBody, hasFinalizationRegistry, streamRegistry, bodyUnusable } = __nccwpck_require__(1448) -const util = __nccwpck_require__(9500) +const { Headers, HeadersList, fill, getHeadersGuard, setHeadersGuard, setHeadersList } = __nccwpck_require__(8146) +const { extractBody, cloneBody, mixinBody, hasFinalizationRegistry, streamRegistry, bodyUnusable } = __nccwpck_require__(4086) +const util = __nccwpck_require__(7662) const nodeUtil = __nccwpck_require__(7975) const { kEnumerableProperty } = util const { @@ -35992,16 +35980,16 @@ const { isErrorLike, isomorphicEncode, environmentSettingsObject: relevantRealm -} = __nccwpck_require__(1204) +} = __nccwpck_require__(7722) const { redirectStatusSet, nullBodyStatus -} = __nccwpck_require__(4219) -const { kState, kHeaders } = __nccwpck_require__(3175) -const { webidl } = __nccwpck_require__(4625) -const { FormData } = __nccwpck_require__(3818) -const { URLSerializer } = __nccwpck_require__(192) -const { kConstruct } = __nccwpck_require__(8031) +} = __nccwpck_require__(1797) +const { kState, kHeaders } = __nccwpck_require__(1) +const { webidl } = __nccwpck_require__(9735) +const { FormData } = __nccwpck_require__(8932) +const { URLSerializer } = __nccwpck_require__(8394) +const { kConstruct } = __nccwpck_require__(3373) const assert = __nccwpck_require__(4589) const { types } = __nccwpck_require__(7975) @@ -36590,7 +36578,7 @@ module.exports = { /***/ }), -/***/ 3175: +/***/ 1: /***/ ((module) => { @@ -36606,21 +36594,21 @@ module.exports = { /***/ }), -/***/ 1204: +/***/ 7722: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Transform } = __nccwpck_require__(7075) const zlib = __nccwpck_require__(8522) -const { redirectStatusSet, referrerPolicySet: referrerPolicyTokens, badPortsSet } = __nccwpck_require__(4219) -const { getGlobalOrigin } = __nccwpck_require__(5311) -const { collectASequenceOfCodePoints, collectAnHTTPQuotedString, removeChars, parseMIMEType } = __nccwpck_require__(192) +const { redirectStatusSet, referrerPolicySet: referrerPolicyTokens, badPortsSet } = __nccwpck_require__(1797) +const { getGlobalOrigin } = __nccwpck_require__(777) +const { collectASequenceOfCodePoints, collectAnHTTPQuotedString, removeChars, parseMIMEType } = __nccwpck_require__(8394) const { performance } = __nccwpck_require__(643) -const { isBlobLike, ReadableStreamFrom, isValidHTTPToken, normalizedMethodRecordsBase } = __nccwpck_require__(9500) +const { isBlobLike, ReadableStreamFrom, isValidHTTPToken, normalizedMethodRecordsBase } = __nccwpck_require__(7662) const assert = __nccwpck_require__(4589) const { isUint8Array } = __nccwpck_require__(3429) -const { webidl } = __nccwpck_require__(4625) +const { webidl } = __nccwpck_require__(9735) let supportedHashes = [] @@ -36628,7 +36616,7 @@ let supportedHashes = [] /** @type {import('crypto')} */ let crypto try { - crypto = __nccwpck_require__(7598) + crypto = __nccwpck_require__(5217) const possibleRelevantHashes = ['sha256', 'sha384', 'sha512'] supportedHashes = crypto.getHashes().filter((hash) => possibleRelevantHashes.includes(hash)) /* c8 ignore next 3 */ @@ -38245,14 +38233,14 @@ module.exports = { /***/ }), -/***/ 4625: +/***/ 9735: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { types, inspect } = __nccwpck_require__(7975) const { markAsUncloneable } = __nccwpck_require__(5919) -const { toUSVString } = __nccwpck_require__(9500) +const { toUSVString } = __nccwpck_require__(7662) /** @type {import('../../../types/webidl').Webidl} */ const webidl = {} @@ -38947,7 +38935,7 @@ module.exports = { /***/ }), -/***/ 1691: +/***/ 2705: /***/ ((module) => { @@ -39244,7 +39232,7 @@ module.exports = { /***/ }), -/***/ 6575: +/***/ 7669: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -39253,16 +39241,16 @@ const { staticPropertyDescriptors, readOperation, fireAProgressEvent -} = __nccwpck_require__(6014) +} = __nccwpck_require__(8912) const { kState, kError, kResult, kEvents, kAborted -} = __nccwpck_require__(8445) -const { webidl } = __nccwpck_require__(4625) -const { kEnumerableProperty } = __nccwpck_require__(9500) +} = __nccwpck_require__(6107) +const { webidl } = __nccwpck_require__(9735) +const { kEnumerableProperty } = __nccwpck_require__(7662) class FileReader extends EventTarget { constructor () { @@ -39595,12 +39583,12 @@ module.exports = { /***/ }), -/***/ 9393: +/***/ 1367: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { webidl } = __nccwpck_require__(4625) +const { webidl } = __nccwpck_require__(9735) const kState = Symbol('ProgressEvent state') @@ -39680,7 +39668,7 @@ module.exports = { /***/ }), -/***/ 8445: +/***/ 6107: /***/ ((module) => { @@ -39697,7 +39685,7 @@ module.exports = { /***/ }), -/***/ 6014: +/***/ 8912: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { @@ -39708,12 +39696,12 @@ const { kResult, kAborted, kLastProgressEventFired -} = __nccwpck_require__(8445) -const { ProgressEvent } = __nccwpck_require__(9393) -const { getEncoding } = __nccwpck_require__(1691) -const { serializeAMimeType, parseMIMEType } = __nccwpck_require__(192) +} = __nccwpck_require__(6107) +const { ProgressEvent } = __nccwpck_require__(1367) +const { getEncoding } = __nccwpck_require__(2705) +const { serializeAMimeType, parseMIMEType } = __nccwpck_require__(8394) const { types } = __nccwpck_require__(7975) -const { StringDecoder } = __nccwpck_require__(5574) +const { StringDecoder } = __nccwpck_require__(3193) const { btoa } = __nccwpck_require__(4573) /** @type {PropertyDescriptor} */ @@ -40095,32 +40083,32 @@ module.exports = { /***/ }), -/***/ 773: +/***/ 9431: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { uid, states, sentCloseFrameState, emptyBuffer, opcodes } = __nccwpck_require__(7119) +const { uid, states, sentCloseFrameState, emptyBuffer, opcodes } = __nccwpck_require__(5214) const { kReadyState, kSentClose, kByteParser, kReceivedClose, kResponse -} = __nccwpck_require__(4911) -const { fireEvent, failWebsocketConnection, isClosing, isClosed, isEstablished, parseExtensions } = __nccwpck_require__(965) -const { channels } = __nccwpck_require__(5458) -const { CloseEvent } = __nccwpck_require__(6760) -const { makeRequest } = __nccwpck_require__(9683) -const { fetching } = __nccwpck_require__(4202) -const { Headers, getHeadersList } = __nccwpck_require__(3408) -const { getDecodeSplit } = __nccwpck_require__(1204) -const { WebsocketFrameSend } = __nccwpck_require__(9676) +} = __nccwpck_require__(1150) +const { fireEvent, failWebsocketConnection, isClosing, isClosed, isEstablished, parseExtensions } = __nccwpck_require__(3155) +const { channels } = __nccwpck_require__(8560) +const { CloseEvent } = __nccwpck_require__(7690) +const { makeRequest } = __nccwpck_require__(557) +const { fetching } = __nccwpck_require__(224) +const { Headers, getHeadersList } = __nccwpck_require__(8146) +const { getDecodeSplit } = __nccwpck_require__(7722) +const { WebsocketFrameSend } = __nccwpck_require__(2438) /** @type {import('crypto')} */ let crypto try { - crypto = __nccwpck_require__(7598) + crypto = __nccwpck_require__(5217) /* c8 ignore next 3 */ } catch { @@ -40473,7 +40461,7 @@ module.exports = { /***/ }), -/***/ 7119: +/***/ 5214: /***/ ((module) => { @@ -40546,14 +40534,14 @@ module.exports = { /***/ }), -/***/ 6760: +/***/ 7690: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { webidl } = __nccwpck_require__(4625) -const { kEnumerableProperty } = __nccwpck_require__(9500) -const { kConstruct } = __nccwpck_require__(8031) +const { webidl } = __nccwpck_require__(9735) +const { kEnumerableProperty } = __nccwpck_require__(7662) +const { kConstruct } = __nccwpck_require__(3373) const { MessagePort } = __nccwpck_require__(5919) /** @@ -40882,12 +40870,12 @@ module.exports = { /***/ }), -/***/ 9676: +/***/ 2438: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { maxUnsigned16Bit } = __nccwpck_require__(7119) +const { maxUnsigned16Bit } = __nccwpck_require__(5214) const BUFFER_SIZE = 16386 @@ -40897,7 +40885,7 @@ let buffer = null let bufIdx = BUFFER_SIZE try { - crypto = __nccwpck_require__(7598) + crypto = __nccwpck_require__(5217) /* c8 ignore next 3 */ } catch { crypto = { @@ -40985,14 +40973,14 @@ module.exports = { /***/ }), -/***/ 4841: +/***/ 4739: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { createInflateRaw, Z_DEFAULT_WINDOWBITS } = __nccwpck_require__(8522) -const { isValidClientWindowBits } = __nccwpck_require__(965) -const { MessageSizeExceededError } = __nccwpck_require__(3959) +const { isValidClientWindowBits } = __nccwpck_require__(3155) +const { MessageSizeExceededError } = __nccwpck_require__(5933) const tail = Buffer.from([0x00, 0x00, 0xff, 0xff]) const kBuffer = Symbol('kBuffer') @@ -41110,16 +41098,16 @@ module.exports = { PerMessageDeflate } /***/ }), -/***/ 1872: +/***/ 2502: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { const { Writable } = __nccwpck_require__(7075) const assert = __nccwpck_require__(4589) -const { parserStates, opcodes, states, emptyBuffer, sentCloseFrameState } = __nccwpck_require__(7119) -const { kReadyState, kSentClose, kResponse, kReceivedClose } = __nccwpck_require__(4911) -const { channels } = __nccwpck_require__(5458) +const { parserStates, opcodes, states, emptyBuffer, sentCloseFrameState } = __nccwpck_require__(5214) +const { kReadyState, kSentClose, kResponse, kReceivedClose } = __nccwpck_require__(1150) +const { channels } = __nccwpck_require__(8560) const { isValidStatusCode, isValidOpcode, @@ -41129,10 +41117,10 @@ const { isControlFrame, isTextBinaryFrame, isContinuationFrame -} = __nccwpck_require__(965) -const { WebsocketFrameSend } = __nccwpck_require__(9676) -const { closeWebSocketConnection } = __nccwpck_require__(773) -const { PerMessageDeflate } = __nccwpck_require__(4841) +} = __nccwpck_require__(3155) +const { WebsocketFrameSend } = __nccwpck_require__(2438) +const { closeWebSocketConnection } = __nccwpck_require__(9431) +const { PerMessageDeflate } = __nccwpck_require__(4739) // This code was influenced by ws released under the MIT license. // Copyright (c) 2011 Einar Otto Stangvik @@ -41544,14 +41532,14 @@ module.exports = { /***/ }), -/***/ 504: +/***/ 7562: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { WebsocketFrameSend } = __nccwpck_require__(9676) -const { opcodes, sendHints } = __nccwpck_require__(7119) -const FixedQueue = __nccwpck_require__(5464) +const { WebsocketFrameSend } = __nccwpck_require__(2438) +const { opcodes, sendHints } = __nccwpck_require__(5214) +const FixedQueue = __nccwpck_require__(1034) /** @type {typeof Uint8Array} */ const FastBuffer = Buffer[Symbol.species] @@ -41655,7 +41643,7 @@ module.exports = { SendQueue } /***/ }), -/***/ 4911: +/***/ 1150: /***/ ((module) => { @@ -41674,16 +41662,16 @@ module.exports = { /***/ }), -/***/ 965: +/***/ 3155: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { kReadyState, kController, kResponse, kBinaryType, kWebSocketURL } = __nccwpck_require__(4911) -const { states, opcodes } = __nccwpck_require__(7119) -const { ErrorEvent, createFastMessageEvent } = __nccwpck_require__(6760) +const { kReadyState, kController, kResponse, kBinaryType, kWebSocketURL } = __nccwpck_require__(1150) +const { states, opcodes } = __nccwpck_require__(5214) +const { ErrorEvent, createFastMessageEvent } = __nccwpck_require__(7690) const { isUtf8 } = __nccwpck_require__(4573) -const { collectASequenceOfCodePointsFast, removeHTTPWhitespace } = __nccwpck_require__(192) +const { collectASequenceOfCodePointsFast, removeHTTPWhitespace } = __nccwpck_require__(8394) /* globals Blob */ @@ -42003,15 +41991,15 @@ module.exports = { /***/ }), -/***/ 2522: +/***/ 7836: /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { -const { webidl } = __nccwpck_require__(4625) -const { URLSerializer } = __nccwpck_require__(192) -const { environmentSettingsObject } = __nccwpck_require__(1204) -const { staticPropertyDescriptors, states, sentCloseFrameState, sendHints } = __nccwpck_require__(7119) +const { webidl } = __nccwpck_require__(9735) +const { URLSerializer } = __nccwpck_require__(8394) +const { environmentSettingsObject } = __nccwpck_require__(7722) +const { staticPropertyDescriptors, states, sentCloseFrameState, sendHints } = __nccwpck_require__(5214) const { kWebSocketURL, kReadyState, @@ -42020,21 +42008,21 @@ const { kResponse, kSentClose, kByteParser -} = __nccwpck_require__(4911) +} = __nccwpck_require__(1150) const { isConnecting, isEstablished, isClosing, isValidSubprotocol, fireEvent -} = __nccwpck_require__(965) -const { establishWebSocketConnection, closeWebSocketConnection } = __nccwpck_require__(773) -const { ByteParser } = __nccwpck_require__(1872) -const { kEnumerableProperty, isBlobLike } = __nccwpck_require__(9500) -const { getGlobalDispatcher } = __nccwpck_require__(1481) +} = __nccwpck_require__(3155) +const { establishWebSocketConnection, closeWebSocketConnection } = __nccwpck_require__(9431) +const { ByteParser } = __nccwpck_require__(2502) +const { kEnumerableProperty, isBlobLike } = __nccwpck_require__(7662) +const { getGlobalDispatcher } = __nccwpck_require__(8707) const { types } = __nccwpck_require__(7975) -const { ErrorEvent, CloseEvent } = __nccwpck_require__(6760) -const { SendQueue } = __nccwpck_require__(504) +const { ErrorEvent, CloseEvent } = __nccwpck_require__(7690) +const { SendQueue } = __nccwpck_require__(7562) // https://websockets.spec.whatwg.org/#interface-definition class WebSocket extends EventTarget { @@ -42675,7 +42663,7 @@ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:console /***/ }), -/***/ 7598: +/***/ 5217: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:crypto"); @@ -42808,7 +42796,7 @@ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("stream"); /***/ }), -/***/ 5574: +/***/ 3193: /***/ ((module) => { module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("string_decoder"); @@ -42827,6 +42815,359 @@ module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("tls"); module.exports = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("util"); +/***/ }), + +/***/ 885: +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { + + + +/* eslint-disable no-var */ + +var reusify = __nccwpck_require__(3728) + +function fastqueue (context, worker, _concurrency) { + if (typeof context === 'function') { + _concurrency = worker + worker = context + context = null + } + + if (!(_concurrency >= 1)) { + throw new Error('fastqueue concurrency must be equal to or greater than 1') + } + + var cache = reusify(Task) + var queueHead = null + var queueTail = null + var _running = 0 + var errorHandler = null + + var self = { + push: push, + drain: noop, + saturated: noop, + pause: pause, + paused: false, + + get concurrency () { + return _concurrency + }, + set concurrency (value) { + if (!(value >= 1)) { + throw new Error('fastqueue concurrency must be equal to or greater than 1') + } + _concurrency = value + + if (self.paused) return + for (; queueHead && _running < _concurrency;) { + _running++ + release() + } + }, + + running: running, + resume: resume, + idle: idle, + length: length, + getQueue: getQueue, + unshift: unshift, + empty: noop, + kill: kill, + killAndDrain: killAndDrain, + error: error, + abort: abort + } + + return self + + function running () { + return _running + } + + function pause () { + self.paused = true + } + + function length () { + var current = queueHead + var counter = 0 + + while (current) { + current = current.next + counter++ + } + + return counter + } + + function getQueue () { + var current = queueHead + var tasks = [] + + while (current) { + tasks.push(current.value) + current = current.next + } + + return tasks + } + + function resume () { + if (!self.paused) return + self.paused = false + if (queueHead === null) { + _running++ + release() + return + } + for (; queueHead && _running < _concurrency;) { + _running++ + release() + } + } + + function idle () { + return _running === 0 && self.length() === 0 + } + + function push (value, done) { + var current = cache.get() + + current.context = context + current.release = release + current.value = value + current.callback = done || noop + current.errorHandler = errorHandler + + if (_running >= _concurrency || self.paused) { + if (queueTail) { + queueTail.next = current + queueTail = current + } else { + queueHead = current + queueTail = current + self.saturated() + } + } else { + _running++ + worker.call(context, current.value, current.worked) + } + } + + function unshift (value, done) { + var current = cache.get() + + current.context = context + current.release = release + current.value = value + current.callback = done || noop + current.errorHandler = errorHandler + + if (_running >= _concurrency || self.paused) { + if (queueHead) { + current.next = queueHead + queueHead = current + } else { + queueHead = current + queueTail = current + self.saturated() + } + } else { + _running++ + worker.call(context, current.value, current.worked) + } + } + + function release (holder) { + if (holder) { + cache.release(holder) + } + var next = queueHead + if (next && _running <= _concurrency) { + if (!self.paused) { + if (queueTail === queueHead) { + queueTail = null + } + queueHead = next.next + next.next = null + worker.call(context, next.value, next.worked) + if (queueTail === null) { + self.empty() + } + } else { + _running-- + } + } else if (--_running === 0) { + self.drain() + } + } + + function kill () { + queueHead = null + queueTail = null + self.drain = noop + } + + function killAndDrain () { + queueHead = null + queueTail = null + self.drain() + self.drain = noop + } + + function abort () { + var current = queueHead + queueHead = null + queueTail = null + + while (current) { + var next = current.next + var callback = current.callback + var errorHandler = current.errorHandler + var val = current.value + var context = current.context + + // Reset the task state + current.value = null + current.callback = noop + current.errorHandler = null + + // Call error handler if present + if (errorHandler) { + errorHandler(new Error('abort'), val) + } + + // Call callback with error + callback.call(context, new Error('abort')) + + // Release the task back to the pool + current.release(current) + + current = next + } + + self.drain = noop + } + + function error (handler) { + errorHandler = handler + } +} + +function noop () {} + +function Task () { + this.value = null + this.callback = noop + this.next = null + this.release = noop + this.context = null + this.errorHandler = null + + var self = this + + this.worked = function worked (err, result) { + var callback = self.callback + var errorHandler = self.errorHandler + var val = self.value + self.value = null + self.callback = noop + if (self.errorHandler) { + errorHandler(err, val) + } + callback.call(self.context, err, result) + self.release(self) + } +} + +function queueAsPromised (context, worker, _concurrency) { + if (typeof context === 'function') { + _concurrency = worker + worker = context + context = null + } + + function asyncWrapper (arg, cb) { + worker.call(this, arg) + .then(function (res) { + cb(null, res) + }, cb) + } + + var queue = fastqueue(context, asyncWrapper, _concurrency) + + var pushCb = queue.push + var unshiftCb = queue.unshift + + queue.push = push + queue.unshift = unshift + queue.drained = drained + + return queue + + function push (value) { + var p = new Promise(function (resolve, reject) { + pushCb(value, function (err, result) { + if (err) { + reject(err) + return + } + resolve(result) + }) + }) + + // Let's fork the promise chain to + // make the error bubble up to the user but + // not lead to a unhandledRejection + p.catch(noop) + + return p + } + + function unshift (value) { + var p = new Promise(function (resolve, reject) { + unshiftCb(value, function (err, result) { + if (err) { + reject(err) + return + } + resolve(result) + }) + }) + + // Let's fork the promise chain to + // make the error bubble up to the user but + // not lead to a unhandledRejection + p.catch(noop) + + return p + } + + function drained () { + var p = new Promise(function (resolve) { + process.nextTick(function () { + if (queue.idle()) { + resolve() + } else { + var previousDrain = queue.drain + queue.drain = function () { + if (typeof previousDrain === 'function') previousDrain() + resolve() + queue.drain = previousDrain + } + } + }) + }) + + return p + } +} + +module.exports = fastqueue +module.exports.promise = queueAsPromised + + /***/ }) /******/ }); @@ -42897,7 +43238,7 @@ const promises_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.ur const external_node_path_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:path"); // EXTERNAL MODULE: external "os" var external_os_ = __nccwpck_require__(857); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/utils.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/utils.js // We use any as a valid input type /* eslint-disable @typescript-eslint/no-explicit-any */ /** @@ -42933,7 +43274,7 @@ function utils_toCommandProperties(annotationProperties) { }; } //# sourceMappingURL=utils.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/command.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/command.js /** @@ -43029,7 +43370,7 @@ function escapeProperty(s) { const external_crypto_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("crypto"); // EXTERNAL MODULE: external "fs" var external_fs_ = __nccwpck_require__(9896); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/file-command.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/file-command.js // For internal use, subject to change. // We use any as a valid input type /* eslint-disable @typescript-eslint/no-explicit-any */ @@ -43070,7 +43411,7 @@ var external_path_ = __nccwpck_require__(6928); var external_http_ = __nccwpck_require__(8611); // EXTERNAL MODULE: external "https" var external_https_ = __nccwpck_require__(5692); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/node_modules/@actions/http-client/lib/proxy.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+http-client@4.0.0/node_modules/@actions/http-client/lib/proxy.js function getProxyUrl(reqUrl) { const usingSsl = reqUrl.protocol === 'https:'; if (checkBypass(reqUrl)) { @@ -43161,11 +43502,11 @@ class DecodedURL extends URL { } } //# sourceMappingURL=proxy.js.map -// EXTERNAL MODULE: ../../node_modules/tunnel/index.js -var node_modules_tunnel = __nccwpck_require__(5070); -// EXTERNAL MODULE: ../../node_modules/undici/index.js -var undici = __nccwpck_require__(1684); -;// CONCATENATED MODULE: ../../node_modules/@actions/core/node_modules/@actions/http-client/lib/index.js +// EXTERNAL MODULE: ../../node_modules/.pnpm/tunnel@0.0.6/node_modules/tunnel/index.js +var node_modules_tunnel = __nccwpck_require__(7285); +// EXTERNAL MODULE: ../../node_modules/.pnpm/undici@6.24.1/node_modules/undici/index.js +var undici = __nccwpck_require__(4906); +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+http-client@4.0.0/node_modules/@actions/http-client/lib/index.js /* eslint-disable @typescript-eslint/no-explicit-any */ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } @@ -43862,7 +44203,7 @@ class lib_HttpClient { } const lowercaseKeys = (obj) => Object.keys(obj).reduce((c, k) => ((c[k.toLowerCase()] = obj[k]), c), {}); //# sourceMappingURL=index.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/node_modules/@actions/http-client/lib/auth.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+http-client@4.0.0/node_modules/@actions/http-client/lib/auth.js var auth_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -43938,7 +44279,7 @@ class PersonalAccessTokenCredentialHandler { } } //# sourceMappingURL=auth.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/oidc-utils.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/oidc-utils.js var oidc_utils_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -44012,7 +44353,7 @@ class oidc_utils_OidcClient { } } //# sourceMappingURL=oidc-utils.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/summary.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/summary.js var summary_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -44293,7 +44634,7 @@ const _summary = new Summary(); const markdownSummary = (/* unused pure expression or super */ null && (_summary)); const summary = (/* unused pure expression or super */ null && (_summary)); //# sourceMappingURL=summary.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/path-utils.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/path-utils.js /** * toPosixPath converts the given path to the posix form. On Windows, \\ will be @@ -44328,14 +44669,14 @@ function toPlatformPath(pth) { } //# sourceMappingURL=path-utils.js.map // EXTERNAL MODULE: external "string_decoder" -var external_string_decoder_ = __nccwpck_require__(5574); +var external_string_decoder_ = __nccwpck_require__(3193); // EXTERNAL MODULE: external "events" var external_events_ = __nccwpck_require__(4434); ;// CONCATENATED MODULE: external "child_process" const external_child_process_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("child_process"); // EXTERNAL MODULE: external "assert" var external_assert_ = __nccwpck_require__(2613); -;// CONCATENATED MODULE: ../../node_modules/@actions/io/lib/io-util.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+io@3.0.2/node_modules/@actions/io/lib/io-util.js var io_util_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -44515,7 +44856,7 @@ function getCmdPath() { return (_a = process.env['COMSPEC']) !== null && _a !== void 0 ? _a : `cmd.exe`; } //# sourceMappingURL=io-util.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/io/lib/io.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+io@3.0.2/node_modules/@actions/io/lib/io.js var io_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -44789,7 +45130,7 @@ function io_copyFile(srcFile, destFile, force) { //# sourceMappingURL=io.js.map ;// CONCATENATED MODULE: external "timers" const external_timers_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("timers"); -;// CONCATENATED MODULE: ../../node_modules/@actions/exec/lib/toolrunner.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+exec@3.0.0/node_modules/@actions/exec/lib/toolrunner.js var toolrunner_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -45377,7 +45718,7 @@ class ExecState extends external_events_.EventEmitter { } } //# sourceMappingURL=toolrunner.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/exec/lib/exec.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+exec@3.0.0/node_modules/@actions/exec/lib/exec.js var exec_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -45457,7 +45798,7 @@ function getExecOutput(commandLine, args, options) { }); } //# sourceMappingURL=exec.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/platform.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/platform.js var platform_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -45522,7 +45863,7 @@ function getDetails() { }); } //# sourceMappingURL=platform.js.map -;// CONCATENATED MODULE: ../../node_modules/@actions/core/lib/core.js +;// CONCATENATED MODULE: ../../node_modules/.pnpm/@actions+core@3.0.0/node_modules/@actions/core/lib/core.js var core_awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { @@ -45840,8 +46181,8 @@ function getIDToken(aud) { */ //# sourceMappingURL=core.js.map -// EXTERNAL MODULE: ./node_modules/@manypkg/get-packages/dist/manypkg-get-packages.cjs.js -var manypkg_get_packages_cjs = __nccwpck_require__(886); +// EXTERNAL MODULE: ../../node_modules/.pnpm/@manypkg+get-packages@2.2.2/node_modules/@manypkg/get-packages/dist/manypkg-get-packages.cjs.js +var manypkg_get_packages_cjs = __nccwpck_require__(4344); ;// CONCATENATED MODULE: ./lib/build-packages/merge-and-write-changelogs/index.js /* eslint-disable jsdoc/require-jsdoc */ diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 0f52a07578..b96838a646 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -1,7 +1,15 @@ version: 2 +registries: + sap-artifactory: + type: npm-registry + url: https://common.repositories.cloud.sap/artifactory/api/npm/build.releases.npm/ + token: ${{secrets.NPM_TOKEN_ARTIFACTORY}} + replaces-base: true updates: - package-ecosystem: npm target-branch: main + registries: + - sap-artifactory directory: '/' schedule: interval: daily diff --git a/.github/workflows/api-docs.yml b/.github/workflows/api-docs.yml index 8b30774afe..d52b214506 100644 --- a/.github/workflows/api-docs.yml +++ b/.github/workflows/api-docs.yml @@ -18,21 +18,14 @@ jobs: generate-and-push-docs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - - run: git fetch --depth=1 - - - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0 + - uses: sap/cloud-sdk-js/.github/actions/setup@main with: - node-version: 22 - cache: 'yarn' - - - run: yarn install --frozen-lockfile --ignore-engines + registry-token: ${{ secrets.NPM_TOKEN_ARTIFACTORY }} - name: Generate API documentation run: | - yarn generate - yarn doc + pnpm run generate + pnpm run doc - id: app-token uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1 diff --git a/.github/workflows/auto-dependabot-fix.yml b/.github/workflows/auto-dependabot-fix.yml index 3e15f1a095..6e04705e9d 100644 --- a/.github/workflows/auto-dependabot-fix.yml +++ b/.github/workflows/auto-dependabot-fix.yml @@ -16,18 +16,12 @@ jobs: owner: SAP repositories: cloud-sdk-js permission-contents: write - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + - uses: sap/cloud-sdk-js/.github/actions/setup@main with: - fetch-depth: 0 ref: ${{ github.event.pull_request.head.ref }} token: ${{ steps.app-token.outputs.token }} - - run: git fetch --depth=1 - - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0 - with: - node-version: 22 - cache: 'yarn' - - name: Install Dependencies & Compile - run: yarn install --frozen-lockfile --ignore-engines + persist-credentials: true + registry-token: ${{ secrets.NPM_TOKEN_ARTIFACTORY }} - name: Commit Changes if needed env: BOT_EMAIL: ${{ vars.SAP_CLOUD_SDK_BOT_EMAIL }} diff --git a/.github/workflows/auto-lint.yml b/.github/workflows/auto-lint.yml index 5f6d069eb6..b761078d5b 100644 --- a/.github/workflows/auto-lint.yml +++ b/.github/workflows/auto-lint.yml @@ -16,20 +16,14 @@ jobs: owner: SAP repositories: cloud-sdk-js permission-contents: write - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + - uses: sap/cloud-sdk-js/.github/actions/setup@main with: - fetch-depth: 0 ref: ${{ github.event.pull_request.head.ref }} token: ${{ steps.app-token.outputs.token }} - - run: git fetch --depth=1 - - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0 - with: - node-version: 22 - cache: 'yarn' - - name: Install Dependencies - run: yarn install --frozen-lockfile --ignore-engines + persist-credentials: true + registry-token: ${{ secrets.NPM_TOKEN_ARTIFACTORY }} - name: Run Lint - run: yarn lint:fix + run: pnpm run lint:fix - name: Commit Changes if needed env: BOT_EMAIL: ${{ vars.SAP_CLOUD_SDK_BOT_EMAIL }} diff --git a/.github/workflows/blackduck.yml b/.github/workflows/blackduck.yml index c7ce417535..c57ceb11e5 100644 --- a/.github/workflows/blackduck.yml +++ b/.github/workflows/blackduck.yml @@ -10,13 +10,9 @@ jobs: runs-on: ubuntu-latest timeout-minutes: 15 steps: - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - run: git fetch --depth=1 - - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0 + - uses: sap/cloud-sdk-js/.github/actions/setup@main with: - node-version: 22 - cache: 'yarn' - - run: yarn install --frozen-lockfile --ignore-engines + registry-token: ${{ secrets.NPM_TOKEN_ARTIFACTORY }} - run: sudo apt-get install jq - run: echo "project_version=$(cat package.json | jq '.version' | tr -d '"')" >> $GITHUB_ENV - name: Blackduck Scan @@ -24,8 +20,8 @@ jobs: PIPER_token: ${{ secrets.BLACKDUCK_TOKEN }} PROJECT_VERSION: ${{ env.project_version }} DETECT_TIMEOUT: 6000 - DETECT_YARN_EXCLUDED_WORKSPACES: test-packages/** - DETECT_YARN_DEPENDENCY_TYPES_EXCLUDED: NON_PRODUCTION + # DETECT_PNPM_EXCLUDED_WORKSPACES: test-packages/** + DETECT_PNPM_DEPENDENCY_TYPES_EXCLUDED: NON_PRODUCTION uses: SAP/project-piper-action@43db6643d830b42717eda052300d87c22b0da73b with: command: detectExecuteScan diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 01e684bfcf..84072e0ab0 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -29,20 +29,19 @@ jobs: strategy: fail-fast: false matrix: - node-version: [20, 22] + node-version: [20, 22, 24] steps: - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - run: git fetch --depth=1 - - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0 + - uses: sap/cloud-sdk-js/.github/actions/setup@main with: node-version: ${{ matrix.node-version }} - cache: 'yarn' - - run: yarn install --frozen-lockfile --ignore-engines - - run: yarn test:unit - - run: yarn test:integration - - run: yarn test:self - - run: yarn test:build-packages - - run: yarn test:type + registry-token: ${{ secrets.NPM_TOKEN_ARTIFACTORY }} + - env: + SANDBOX_TOKEN: ${{ secrets.API_HUB_SANDBOX_TOKEN }} + run: pnpm run test:unit + - run: pnpm run test:integration + - run: pnpm run test:self + - run: pnpm run test:build-packages + - run: pnpm run test:type - name: Slack Notify if: ${{ github.event_name != 'pull_request' && (failure() || cancelled()) }} env: @@ -60,34 +59,30 @@ jobs: if: inputs.canary-release-skip-checks == false runs-on: ubuntu-latest steps: - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - run: git fetch --depth=1 - - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0 + - uses: sap/cloud-sdk-js/.github/actions/setup@main with: - node-version: 22 - cache: 'yarn' + registry-token: ${{ secrets.NPM_TOKEN_ARTIFACTORY }} - name: REUSE Compliance Check uses: fsfe/reuse-action@676e2d560c9a403aa252096d99fcab3e1132b0f5 # v6.0.0 - - run: yarn install --frozen-lockfile --ignore-engines - name: Static Code Check - run: yarn lint + run: pnpm run lint - name: Test Service Version Check - run: yarn check:test-service + run: pnpm run check:test-service - name: Undeclared dependency Check - run: yarn check:dependencies + run: pnpm run check:dependencies - name: Check public api uses: ./.github/actions/check-public-api with: force_internal_exports: 'true' excluded_packages: 'eslint-config, util, test-util' - name: Self tests for tools - run: yarn test:self + run: pnpm run test:self - name: Circular dependency Check - run: yarn check:circular + run: pnpm run check:circular - name: API Doc Check - run: yarn doc + run: pnpm run doc - name: License Check - run: yarn check:license + uses: ./.github/actions/check-license - name: Slack Notify if: ${{ github.event_name != 'pull_request' && (failure() || cancelled()) }} env: @@ -105,14 +100,10 @@ jobs: if: inputs.canary-release-skip-checks == false runs-on: ubuntu-latest steps: - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - run: git fetch --depth=1 - - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0 + - uses: sap/cloud-sdk-js/.github/actions/setup@main with: - node-version: 22 - cache: 'yarn' - - run: yarn install --frozen-lockfile --ignore-engines - - run: yarn test:e2e + registry-token: ${{ secrets.NPM_TOKEN_ARTIFACTORY }} + - run: pnpm run test:e2e dependabot: runs-on: ubuntu-latest @@ -149,8 +140,9 @@ jobs: REF_NAME: ${{ github.ref_name }} REF: ${{ github.ref }} steps: - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - run: git fetch --depth=1 + - uses: sap/cloud-sdk-js/.github/actions/setup@main + with: + registry-token: ${{ secrets.NPM_TOKEN_ARTIFACTORY }} - name: Check if latest commit is within 24 hrs id: date-check run: | @@ -166,6 +158,7 @@ jobs: else echo "skip-release=false" >> $GITHUB_OUTPUT fi + canary-release: # execute canary release if: # either the canary-release was scheduled and the canary-pre-check step resulted in skip-release=false @@ -176,35 +169,30 @@ jobs: permissions: id-token: write steps: - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - run: git fetch --depth=1 - - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0 + - uses: sap/cloud-sdk-js/.github/actions/setup@main with: + persist-credentials: true node-version: 24 # Will install npm 11 needed for trusted publishing - cache: 'yarn' registry-url: 'https://registry.npmjs.org' - - run: yarn install --frozen-lockfile --ignore-engines + package-manager-cache: false - name: Canary Release run: | date=`date +%Y%m%d%H%M%S` rm -f .changeset/*.md cp canary-release-changeset.md .changeset - yarn changeset pre enter ${date} - yarn changeset version - yarn changeset pre exit - yarn changeset publish --tag canary + pnpm changeset pre enter ${date} + pnpm changeset version + pnpm changeset pre exit + pnpm changeset publish --tag canary + draft-github-release: if: startsWith(github.ref, 'refs/tags/v') runs-on: ubuntu-latest needs: [tests, checks] steps: - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - run: git fetch --depth=1 - - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0 + - uses: sap/cloud-sdk-js/.github/actions/setup@main with: - node-version: 22 - cache: 'yarn' - - run: yarn install --frozen-lockfile --ignore-engines + registry-token: ${{ secrets.NPM_TOKEN_ARTIFACTORY }} - name: Get Changelog id: get-changelog uses: ./.github/actions/get-changelog diff --git a/.github/workflows/bump.yml b/.github/workflows/bump.yml index 73dd4c2ffc..50c4edf155 100644 --- a/.github/workflows/bump.yml +++ b/.github/workflows/bump.yml @@ -21,17 +21,12 @@ jobs: owner: SAP repositories: cloud-sdk-js permission-contents: write - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + - uses: sap/cloud-sdk-js/.github/actions/setup@main with: token: ${{ steps.app-token.outputs.token }} ref: 'main' - - - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0 - with: - node-version: 22 - cache: 'yarn' - - - run: yarn install --frozen-lockfile --ignore-engines + persist-credentials: true + registry-token: ${{ secrets.NPM_TOKEN_ARTIFACTORY }} - name: bump version id: bump diff --git a/.github/workflows/downloads.yml b/.github/workflows/downloads.yml index 88b56b5dd1..6e3d26c300 100644 --- a/.github/workflows/downloads.yml +++ b/.github/workflows/downloads.yml @@ -9,12 +9,8 @@ jobs: downloads: runs-on: ubuntu-latest steps: - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - run: git fetch --depth=1 - - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0 + - uses: sap/cloud-sdk-js/.github/actions/setup@main with: - node-version: 22 - cache: 'yarn' - - run: yarn install --frozen-lockfile --ignore-engines + registry-token: ${{ secrets.NPM_TOKEN_ARTIFACTORY }} - name: Download Stats - run: yarn ts-node scripts/npm-stats.ts + run: pnpm exec ts-node scripts/npm-stats.ts diff --git a/.github/workflows/memory-tests.yml b/.github/workflows/memory-tests.yml index 684ecfca27..81e830e7cf 100644 --- a/.github/workflows/memory-tests.yml +++ b/.github/workflows/memory-tests.yml @@ -9,33 +9,29 @@ jobs: tests: runs-on: ubuntu-latest steps: - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0 + - uses: sap/cloud-sdk-js/.github/actions/setup@main with: - node-version: 22 - cache: 'yarn' - - name: install root - run: yarn install --frozen-lockfile --ignore-engines + registry-token: ${{ secrets.NPM_TOKEN_ARTIFACTORY }} - name: start e2e tests server - run: yarn workspace @sap-cloud-sdk/e2e-tests pretest:e2e + run: pnpm --filter @sap-cloud-sdk/e2e-tests run pretest:e2e - name: install test v2 working-directory: test-packages/memory-tests/sdk-v2/ - run: yarn install + run: pnpm install - name: generate v2 test client working-directory: test-packages/memory-tests/sdk-v2/ - run: yarn generate-vdm + run: pnpm exec generate-odata-client - working-directory: test-packages/memory-tests/sdk-v2/ run: node --inspect test-script.js && cat result.txt - name: install test canary working-directory: test-packages/memory-tests/sdk-canary/ - run: yarn install + run: pnpm install - name: generate canary test client working-directory: test-packages/memory-tests/sdk-canary/ - run: yarn generate-vdm + run: pnpm exec generate-odata-client - working-directory: test-packages/memory-tests/sdk-canary/ run: node --inspect test-script.js && cat result.txt - name: compare v2 and canary - run: yarn ts-node scripts/compare-memory-usage.ts $(cat ./test-packages/memory-tests/sdk-v2/result.txt) $(cat ./test-packages/memory-tests/sdk-canary/result.txt) + run: pnpm exec ts-node scripts/compare-memory-usage.ts $(cat ./test-packages/memory-tests/sdk-v2/result.txt) $(cat ./test-packages/memory-tests/sdk-canary/result.txt) - name: Slack Notify if: failure() || cancelled() env: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index a8e7f241ca..379de4f086 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -8,7 +8,7 @@ jobs: runs-on: ubuntu-latest permissions: id-token: write - + steps: - id: app-token uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1 @@ -17,22 +17,21 @@ jobs: private-key: ${{ secrets.SAP_CLOUD_SDK_BOT_PRIVATE_KEY }} owner: SAP repositories: cloud-sdk - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + - uses: sap/cloud-sdk-js/.github/actions/setup@main with: ref: 'main' - - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0 - with: + persist-credentials: true node-version: 24 # Will install npm 11 needed for trusted publishing registry-url: 'https://registry.npmjs.org' - - run: yarn install --frozen-lockfile --ignore-engines + package-manager-cache: false - name: Legacy Release if: startsWith(github.ref, 'refs/tags/v1') || startsWith(github.ref, 'refs/tags/v2') || startsWith(github.ref, 'refs/tags/v3') run: | - yarn changeset publish --tag legacy + pnpm changeset publish --tag legacy - name: Latest Release if: startsWith(github.ref, 'refs/tags/v4') run: | - yarn changeset publish + pnpm changeset publish - name: Checkout Docs uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 with: diff --git a/.github/workflows/tests-windows.yml b/.github/workflows/tests-windows.yml index f10178d729..d4c2f9e3c1 100644 --- a/.github/workflows/tests-windows.yml +++ b/.github/workflows/tests-windows.yml @@ -12,15 +12,11 @@ jobs: runs-on: windows-latest timeout-minutes: 30 steps: - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - run: git fetch --depth=1 - - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0 + - uses: sap/cloud-sdk-js/.github/actions/setup@main with: - node-version: 22 - cache: 'yarn' - - run: yarn install --frozen-lockfile --ignore-engines - - run: yarn test:unit + registry-token: ${{ secrets.NPM_TOKEN_ARTIFACTORY }} + - run: pnpm run test:unit - if: always() - run: yarn test:integration - - run: yarn test:self - - run: yarn test:type + run: pnpm run test:integration + - run: pnpm run test:self + - run: pnpm run test:type diff --git a/.github/workflows/typedoc.yml b/.github/workflows/typedoc.yml index 9731211c3e..071649a31c 100644 --- a/.github/workflows/typedoc.yml +++ b/.github/workflows/typedoc.yml @@ -12,11 +12,7 @@ jobs: tests: runs-on: ubuntu-latest steps: - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - run: git fetch --depth=1 - - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0 + - uses: sap/cloud-sdk-js/.github/actions/setup@main with: - node-version: 22 - cache: 'yarn' - - run: yarn install --frozen-lockfile --ignore-engines - - run: yarn doc + registry-token: ${{ secrets.NPM_TOKEN_ARTIFACTORY }} + - run: pnpm run doc diff --git a/.gitignore b/.gitignore index d7ed837d02..b0f52d11c0 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,7 @@ build-packages/**/lib .DS_Store coverage yarn-error.log +pnpm-debug.log *.tgz **credentials.json .idea @@ -34,7 +35,7 @@ test-packages/integration-tests/test/auth-flows/user-access-token.json test-packages/integration-tests/test/auth-flows/systems.json test-packages/memory-tests/**/test-service -test-packages/memory-tests/**/yarn.lock +test-packages/memory-tests/**/pnpm-lock.yaml test-packages/e2e-tests/test/generator-test-output test-packages/e2e-tests/test/mail/test-output diff --git a/.licensee.json b/.licensee.json deleted file mode 100644 index 5826e951b4..0000000000 --- a/.licensee.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "licenses": { - "spdx": ["CC-BY-3.0", "CC-BY-4.0"], - "blueOak": "bronze" - }, - "corrections": true, - "ignore": [ - { "scope": "cap-js" }, - { "scope": "sap" }, - { "prefix": "spawndamnit" } - ] -} diff --git a/.prettierignore b/.prettierignore index 6dd522de48..ccb2be5484 100644 --- a/.prettierignore +++ b/.prettierignore @@ -1,7 +1,6 @@ node_modules/ dist/ knowledge-base/api-reference/ -.yarn/ coverage/ CHANGELOG.md README.md diff --git a/.yarn/releases/yarn-1.22.22.cjs b/.yarn/releases/yarn-1.22.22.cjs deleted file mode 100644 index 3ff8687a11..0000000000 --- a/.yarn/releases/yarn-1.22.22.cjs +++ /dev/null @@ -1,148049 +0,0 @@ -#!/usr/bin/env node -module.exports = -/******/ (function(modules) { // webpackBootstrap -/******/ // The module cache -/******/ var installedModules = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ -/******/ // Check if module is in cache -/******/ if(installedModules[moduleId]) { -/******/ return installedModules[moduleId].exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = installedModules[moduleId] = { -/******/ i: moduleId, -/******/ l: false, -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); -/******/ -/******/ // Flag the module as loaded -/******/ module.l = true; -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/******/ -/******/ // expose the modules object (__webpack_modules__) -/******/ __webpack_require__.m = modules; -/******/ -/******/ // expose the module cache -/******/ __webpack_require__.c = installedModules; -/******/ -/******/ // identity function for calling harmony imports with the correct context -/******/ __webpack_require__.i = function(value) { return value; }; -/******/ -/******/ // define getter function for harmony exports -/******/ __webpack_require__.d = function(exports, name, getter) { -/******/ if(!__webpack_require__.o(exports, name)) { -/******/ Object.defineProperty(exports, name, { -/******/ configurable: false, -/******/ enumerable: true, -/******/ get: getter -/******/ }); -/******/ } -/******/ }; -/******/ -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = function(module) { -/******/ var getter = module && module.__esModule ? -/******/ function getDefault() { return module['default']; } : -/******/ function getModuleExports() { return module; }; -/******/ __webpack_require__.d(getter, 'a', getter); -/******/ return getter; -/******/ }; -/******/ -/******/ // Object.prototype.hasOwnProperty.call -/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; -/******/ -/******/ // __webpack_public_path__ -/******/ __webpack_require__.p = ""; -/******/ -/******/ // Load entry module and return exports -/******/ return __webpack_require__(__webpack_require__.s = 517); -/******/ }) -/************************************************************************/ -/******/ ([ -/* 0 */ -/***/ (function(module, exports) { - -module.exports = require("path"); - -/***/ }), -/* 1 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -/* harmony export (immutable) */ __webpack_exports__["a"] = __extends; -/* unused harmony export __assign */ -/* unused harmony export __rest */ -/* unused harmony export __decorate */ -/* unused harmony export __param */ -/* unused harmony export __metadata */ -/* unused harmony export __awaiter */ -/* unused harmony export __generator */ -/* unused harmony export __exportStar */ -/* unused harmony export __values */ -/* unused harmony export __read */ -/* unused harmony export __spread */ -/* unused harmony export __await */ -/* unused harmony export __asyncGenerator */ -/* unused harmony export __asyncDelegator */ -/* unused harmony export __asyncValues */ -/* unused harmony export __makeTemplateObject */ -/* unused harmony export __importStar */ -/* unused harmony export __importDefault */ -/*! ***************************************************************************** -Copyright (c) Microsoft Corporation. All rights reserved. -Licensed under the Apache License, Version 2.0 (the "License"); you may not use -this file except in compliance with the License. You may obtain a copy of the -License at http://www.apache.org/licenses/LICENSE-2.0 - -THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED -WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, -MERCHANTABLITY OR NON-INFRINGEMENT. - -See the Apache Version 2.0 License for specific language governing permissions -and limitations under the License. -***************************************************************************** */ -/* global Reflect, Promise */ - -var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; - return extendStatics(d, b); -}; - -function __extends(d, b) { - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); -} - -var __assign = function() { - __assign = Object.assign || function __assign(t) { - for (var s, i = 1, n = arguments.length; i < n; i++) { - s = arguments[i]; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; - } - return t; - } - return __assign.apply(this, arguments); -} - -function __rest(s, e) { - var t = {}; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) - t[p] = s[p]; - if (s != null && typeof Object.getOwnPropertySymbols === "function") - for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0) - t[p[i]] = s[p[i]]; - return t; -} - -function __decorate(decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -} - -function __param(paramIndex, decorator) { - return function (target, key) { decorator(target, key, paramIndex); } -} - -function __metadata(metadataKey, metadataValue) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue); -} - -function __awaiter(thisArg, _arguments, P, generator) { - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -} - -function __generator(thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (_) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } -} - -function __exportStar(m, exports) { - for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; -} - -function __values(o) { - var m = typeof Symbol === "function" && o[Symbol.iterator], i = 0; - if (m) return m.call(o); - return { - next: function () { - if (o && i >= o.length) o = void 0; - return { value: o && o[i++], done: !o }; - } - }; -} - -function __read(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); - } - catch (error) { e = { error: error }; } - finally { - try { - if (r && !r.done && (m = i["return"])) m.call(i); - } - finally { if (e) throw e.error; } - } - return ar; -} - -function __spread() { - for (var ar = [], i = 0; i < arguments.length; i++) - ar = ar.concat(__read(arguments[i])); - return ar; -} - -function __await(v) { - return this instanceof __await ? (this.v = v, this) : new __await(v); -} - -function __asyncGenerator(thisArg, _arguments, generator) { - if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); - var g = generator.apply(thisArg, _arguments || []), i, q = []; - return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i; - function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; } - function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } } - function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); } - function fulfill(value) { resume("next", value); } - function reject(value) { resume("throw", value); } - function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); } -} - -function __asyncDelegator(o) { - var i, p; - return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i; - function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; } -} - -function __asyncValues(o) { - if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); - var m = o[Symbol.asyncIterator], i; - return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i); - function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; } - function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); } -} - -function __makeTemplateObject(cooked, raw) { - if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; } - return cooked; -}; - -function __importStar(mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; - result.default = mod; - return result; -} - -function __importDefault(mod) { - return (mod && mod.__esModule) ? mod : { default: mod }; -} - - -/***/ }), -/* 2 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -exports.__esModule = true; - -var _promise = __webpack_require__(224); - -var _promise2 = _interopRequireDefault(_promise); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -exports.default = function (fn) { - return function () { - var gen = fn.apply(this, arguments); - return new _promise2.default(function (resolve, reject) { - function step(key, arg) { - try { - var info = gen[key](arg); - var value = info.value; - } catch (error) { - reject(error); - return; - } - - if (info.done) { - resolve(value); - } else { - return _promise2.default.resolve(value).then(function (value) { - step("next", value); - }, function (err) { - step("throw", err); - }); - } - } - - return step("next"); - }); - }; -}; - -/***/ }), -/* 3 */ -/***/ (function(module, exports) { - -module.exports = require("util"); - -/***/ }), -/* 4 */ -/***/ (function(module, exports) { - -module.exports = require("fs"); - -/***/ }), -/* 5 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.getFirstSuitableFolder = exports.readFirstAvailableStream = exports.makeTempDir = exports.hardlinksWork = exports.writeFilePreservingEol = exports.getFileSizeOnDisk = exports.walk = exports.symlink = exports.find = exports.readJsonAndFile = exports.readJson = exports.readFileAny = exports.hardlinkBulk = exports.copyBulk = exports.unlink = exports.glob = exports.link = exports.chmod = exports.lstat = exports.exists = exports.mkdirp = exports.stat = exports.access = exports.rename = exports.readdir = exports.realpath = exports.readlink = exports.writeFile = exports.open = exports.readFileBuffer = exports.lockQueue = exports.constants = undefined; - -var _asyncToGenerator2; - -function _load_asyncToGenerator() { - return _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(2)); -} - -let buildActionsForCopy = (() => { - var _ref = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue, events, possibleExtraneous, reporter) { - - // - let build = (() => { - var _ref5 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) { - const src = data.src, - dest = data.dest, - type = data.type; - - const onFresh = data.onFresh || noop; - const onDone = data.onDone || noop; - - // TODO https://github.com/yarnpkg/yarn/issues/3751 - // related to bundled dependencies handling - if (files.has(dest.toLowerCase())) { - reporter.verbose(`The case-insensitive file ${dest} shouldn't be copied twice in one bulk copy`); - } else { - files.add(dest.toLowerCase()); - } - - if (type === 'symlink') { - yield mkdirp((_path || _load_path()).default.dirname(dest)); - onFresh(); - actions.symlink.push({ - dest, - linkname: src - }); - onDone(); - return; - } - - if (events.ignoreBasenames.indexOf((_path || _load_path()).default.basename(src)) >= 0) { - // ignored file - return; - } - - const srcStat = yield lstat(src); - let srcFiles; - - if (srcStat.isDirectory()) { - srcFiles = yield readdir(src); - } - - let destStat; - try { - // try accessing the destination - destStat = yield lstat(dest); - } catch (e) { - // proceed if destination doesn't exist, otherwise error - if (e.code !== 'ENOENT') { - throw e; - } - } - - // if destination exists - if (destStat) { - const bothSymlinks = srcStat.isSymbolicLink() && destStat.isSymbolicLink(); - const bothFolders = srcStat.isDirectory() && destStat.isDirectory(); - const bothFiles = srcStat.isFile() && destStat.isFile(); - - // EINVAL access errors sometimes happen which shouldn't because node shouldn't be giving - // us modes that aren't valid. investigate this, it's generally safe to proceed. - - /* if (srcStat.mode !== destStat.mode) { - try { - await access(dest, srcStat.mode); - } catch (err) {} - } */ - - if (bothFiles && artifactFiles.has(dest)) { - // this file gets changed during build, likely by a custom install script. Don't bother checking it. - onDone(); - reporter.verbose(reporter.lang('verboseFileSkipArtifact', src)); - return; - } - - if (bothFiles && srcStat.size === destStat.size && (0, (_fsNormalized || _load_fsNormalized()).fileDatesEqual)(srcStat.mtime, destStat.mtime)) { - // we can safely assume this is the same file - onDone(); - reporter.verbose(reporter.lang('verboseFileSkip', src, dest, srcStat.size, +srcStat.mtime)); - return; - } - - if (bothSymlinks) { - const srcReallink = yield readlink(src); - if (srcReallink === (yield readlink(dest))) { - // if both symlinks are the same then we can continue on - onDone(); - reporter.verbose(reporter.lang('verboseFileSkipSymlink', src, dest, srcReallink)); - return; - } - } - - if (bothFolders) { - // mark files that aren't in this folder as possibly extraneous - const destFiles = yield readdir(dest); - invariant(srcFiles, 'src files not initialised'); - - for (var _iterator4 = destFiles, _isArray4 = Array.isArray(_iterator4), _i4 = 0, _iterator4 = _isArray4 ? _iterator4 : _iterator4[Symbol.iterator]();;) { - var _ref6; - - if (_isArray4) { - if (_i4 >= _iterator4.length) break; - _ref6 = _iterator4[_i4++]; - } else { - _i4 = _iterator4.next(); - if (_i4.done) break; - _ref6 = _i4.value; - } - - const file = _ref6; - - if (srcFiles.indexOf(file) < 0) { - const loc = (_path || _load_path()).default.join(dest, file); - possibleExtraneous.add(loc); - - if ((yield lstat(loc)).isDirectory()) { - for (var _iterator5 = yield readdir(loc), _isArray5 = Array.isArray(_iterator5), _i5 = 0, _iterator5 = _isArray5 ? _iterator5 : _iterator5[Symbol.iterator]();;) { - var _ref7; - - if (_isArray5) { - if (_i5 >= _iterator5.length) break; - _ref7 = _iterator5[_i5++]; - } else { - _i5 = _iterator5.next(); - if (_i5.done) break; - _ref7 = _i5.value; - } - - const file = _ref7; - - possibleExtraneous.add((_path || _load_path()).default.join(loc, file)); - } - } - } - } - } - } - - if (destStat && destStat.isSymbolicLink()) { - yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(dest); - destStat = null; - } - - if (srcStat.isSymbolicLink()) { - onFresh(); - const linkname = yield readlink(src); - actions.symlink.push({ - dest, - linkname - }); - onDone(); - } else if (srcStat.isDirectory()) { - if (!destStat) { - reporter.verbose(reporter.lang('verboseFileFolder', dest)); - yield mkdirp(dest); - } - - const destParts = dest.split((_path || _load_path()).default.sep); - while (destParts.length) { - files.add(destParts.join((_path || _load_path()).default.sep).toLowerCase()); - destParts.pop(); - } - - // push all files to queue - invariant(srcFiles, 'src files not initialised'); - let remaining = srcFiles.length; - if (!remaining) { - onDone(); - } - for (var _iterator6 = srcFiles, _isArray6 = Array.isArray(_iterator6), _i6 = 0, _iterator6 = _isArray6 ? _iterator6 : _iterator6[Symbol.iterator]();;) { - var _ref8; - - if (_isArray6) { - if (_i6 >= _iterator6.length) break; - _ref8 = _iterator6[_i6++]; - } else { - _i6 = _iterator6.next(); - if (_i6.done) break; - _ref8 = _i6.value; - } - - const file = _ref8; - - queue.push({ - dest: (_path || _load_path()).default.join(dest, file), - onFresh, - onDone: function (_onDone) { - function onDone() { - return _onDone.apply(this, arguments); - } - - onDone.toString = function () { - return _onDone.toString(); - }; - - return onDone; - }(function () { - if (--remaining === 0) { - onDone(); - } - }), - src: (_path || _load_path()).default.join(src, file) - }); - } - } else if (srcStat.isFile()) { - onFresh(); - actions.file.push({ - src, - dest, - atime: srcStat.atime, - mtime: srcStat.mtime, - mode: srcStat.mode - }); - onDone(); - } else { - throw new Error(`unsure how to copy this: ${src}`); - } - }); - - return function build(_x5) { - return _ref5.apply(this, arguments); - }; - })(); - - const artifactFiles = new Set(events.artifactFiles || []); - const files = new Set(); - - // initialise events - for (var _iterator = queue, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) { - var _ref2; - - if (_isArray) { - if (_i >= _iterator.length) break; - _ref2 = _iterator[_i++]; - } else { - _i = _iterator.next(); - if (_i.done) break; - _ref2 = _i.value; - } - - const item = _ref2; - - const onDone = item.onDone; - item.onDone = function () { - events.onProgress(item.dest); - if (onDone) { - onDone(); - } - }; - } - events.onStart(queue.length); - - // start building actions - const actions = { - file: [], - symlink: [], - link: [] - }; - - // custom concurrency logic as we're always executing stacks of CONCURRENT_QUEUE_ITEMS queue items - // at a time due to the requirement to push items onto the queue - while (queue.length) { - const items = queue.splice(0, CONCURRENT_QUEUE_ITEMS); - yield Promise.all(items.map(build)); - } - - // simulate the existence of some files to prevent considering them extraneous - for (var _iterator2 = artifactFiles, _isArray2 = Array.isArray(_iterator2), _i2 = 0, _iterator2 = _isArray2 ? _iterator2 : _iterator2[Symbol.iterator]();;) { - var _ref3; - - if (_isArray2) { - if (_i2 >= _iterator2.length) break; - _ref3 = _iterator2[_i2++]; - } else { - _i2 = _iterator2.next(); - if (_i2.done) break; - _ref3 = _i2.value; - } - - const file = _ref3; - - if (possibleExtraneous.has(file)) { - reporter.verbose(reporter.lang('verboseFilePhantomExtraneous', file)); - possibleExtraneous.delete(file); - } - } - - for (var _iterator3 = possibleExtraneous, _isArray3 = Array.isArray(_iterator3), _i3 = 0, _iterator3 = _isArray3 ? _iterator3 : _iterator3[Symbol.iterator]();;) { - var _ref4; - - if (_isArray3) { - if (_i3 >= _iterator3.length) break; - _ref4 = _iterator3[_i3++]; - } else { - _i3 = _iterator3.next(); - if (_i3.done) break; - _ref4 = _i3.value; - } - - const loc = _ref4; - - if (files.has(loc.toLowerCase())) { - possibleExtraneous.delete(loc); - } - } - - return actions; - }); - - return function buildActionsForCopy(_x, _x2, _x3, _x4) { - return _ref.apply(this, arguments); - }; -})(); - -let buildActionsForHardlink = (() => { - var _ref9 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue, events, possibleExtraneous, reporter) { - - // - let build = (() => { - var _ref13 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) { - const src = data.src, - dest = data.dest; - - const onFresh = data.onFresh || noop; - const onDone = data.onDone || noop; - if (files.has(dest.toLowerCase())) { - // Fixes issue https://github.com/yarnpkg/yarn/issues/2734 - // When bulk hardlinking we have A -> B structure that we want to hardlink to A1 -> B1, - // package-linker passes that modules A1 and B1 need to be hardlinked, - // the recursive linking algorithm of A1 ends up scheduling files in B1 to be linked twice which will case - // an exception. - onDone(); - return; - } - files.add(dest.toLowerCase()); - - if (events.ignoreBasenames.indexOf((_path || _load_path()).default.basename(src)) >= 0) { - // ignored file - return; - } - - const srcStat = yield lstat(src); - let srcFiles; - - if (srcStat.isDirectory()) { - srcFiles = yield readdir(src); - } - - const destExists = yield exists(dest); - if (destExists) { - const destStat = yield lstat(dest); - - const bothSymlinks = srcStat.isSymbolicLink() && destStat.isSymbolicLink(); - const bothFolders = srcStat.isDirectory() && destStat.isDirectory(); - const bothFiles = srcStat.isFile() && destStat.isFile(); - - if (srcStat.mode !== destStat.mode) { - try { - yield access(dest, srcStat.mode); - } catch (err) { - // EINVAL access errors sometimes happen which shouldn't because node shouldn't be giving - // us modes that aren't valid. investigate this, it's generally safe to proceed. - reporter.verbose(err); - } - } - - if (bothFiles && artifactFiles.has(dest)) { - // this file gets changed during build, likely by a custom install script. Don't bother checking it. - onDone(); - reporter.verbose(reporter.lang('verboseFileSkipArtifact', src)); - return; - } - - // correct hardlink - if (bothFiles && srcStat.ino !== null && srcStat.ino === destStat.ino) { - onDone(); - reporter.verbose(reporter.lang('verboseFileSkip', src, dest, srcStat.ino)); - return; - } - - if (bothSymlinks) { - const srcReallink = yield readlink(src); - if (srcReallink === (yield readlink(dest))) { - // if both symlinks are the same then we can continue on - onDone(); - reporter.verbose(reporter.lang('verboseFileSkipSymlink', src, dest, srcReallink)); - return; - } - } - - if (bothFolders) { - // mark files that aren't in this folder as possibly extraneous - const destFiles = yield readdir(dest); - invariant(srcFiles, 'src files not initialised'); - - for (var _iterator10 = destFiles, _isArray10 = Array.isArray(_iterator10), _i10 = 0, _iterator10 = _isArray10 ? _iterator10 : _iterator10[Symbol.iterator]();;) { - var _ref14; - - if (_isArray10) { - if (_i10 >= _iterator10.length) break; - _ref14 = _iterator10[_i10++]; - } else { - _i10 = _iterator10.next(); - if (_i10.done) break; - _ref14 = _i10.value; - } - - const file = _ref14; - - if (srcFiles.indexOf(file) < 0) { - const loc = (_path || _load_path()).default.join(dest, file); - possibleExtraneous.add(loc); - - if ((yield lstat(loc)).isDirectory()) { - for (var _iterator11 = yield readdir(loc), _isArray11 = Array.isArray(_iterator11), _i11 = 0, _iterator11 = _isArray11 ? _iterator11 : _iterator11[Symbol.iterator]();;) { - var _ref15; - - if (_isArray11) { - if (_i11 >= _iterator11.length) break; - _ref15 = _iterator11[_i11++]; - } else { - _i11 = _iterator11.next(); - if (_i11.done) break; - _ref15 = _i11.value; - } - - const file = _ref15; - - possibleExtraneous.add((_path || _load_path()).default.join(loc, file)); - } - } - } - } - } - } - - if (srcStat.isSymbolicLink()) { - onFresh(); - const linkname = yield readlink(src); - actions.symlink.push({ - dest, - linkname - }); - onDone(); - } else if (srcStat.isDirectory()) { - reporter.verbose(reporter.lang('verboseFileFolder', dest)); - yield mkdirp(dest); - - const destParts = dest.split((_path || _load_path()).default.sep); - while (destParts.length) { - files.add(destParts.join((_path || _load_path()).default.sep).toLowerCase()); - destParts.pop(); - } - - // push all files to queue - invariant(srcFiles, 'src files not initialised'); - let remaining = srcFiles.length; - if (!remaining) { - onDone(); - } - for (var _iterator12 = srcFiles, _isArray12 = Array.isArray(_iterator12), _i12 = 0, _iterator12 = _isArray12 ? _iterator12 : _iterator12[Symbol.iterator]();;) { - var _ref16; - - if (_isArray12) { - if (_i12 >= _iterator12.length) break; - _ref16 = _iterator12[_i12++]; - } else { - _i12 = _iterator12.next(); - if (_i12.done) break; - _ref16 = _i12.value; - } - - const file = _ref16; - - queue.push({ - onFresh, - src: (_path || _load_path()).default.join(src, file), - dest: (_path || _load_path()).default.join(dest, file), - onDone: function (_onDone2) { - function onDone() { - return _onDone2.apply(this, arguments); - } - - onDone.toString = function () { - return _onDone2.toString(); - }; - - return onDone; - }(function () { - if (--remaining === 0) { - onDone(); - } - }) - }); - } - } else if (srcStat.isFile()) { - onFresh(); - actions.link.push({ - src, - dest, - removeDest: destExists - }); - onDone(); - } else { - throw new Error(`unsure how to copy this: ${src}`); - } - }); - - return function build(_x10) { - return _ref13.apply(this, arguments); - }; - })(); - - const artifactFiles = new Set(events.artifactFiles || []); - const files = new Set(); - - // initialise events - for (var _iterator7 = queue, _isArray7 = Array.isArray(_iterator7), _i7 = 0, _iterator7 = _isArray7 ? _iterator7 : _iterator7[Symbol.iterator]();;) { - var _ref10; - - if (_isArray7) { - if (_i7 >= _iterator7.length) break; - _ref10 = _iterator7[_i7++]; - } else { - _i7 = _iterator7.next(); - if (_i7.done) break; - _ref10 = _i7.value; - } - - const item = _ref10; - - const onDone = item.onDone || noop; - item.onDone = function () { - events.onProgress(item.dest); - onDone(); - }; - } - events.onStart(queue.length); - - // start building actions - const actions = { - file: [], - symlink: [], - link: [] - }; - - // custom concurrency logic as we're always executing stacks of CONCURRENT_QUEUE_ITEMS queue items - // at a time due to the requirement to push items onto the queue - while (queue.length) { - const items = queue.splice(0, CONCURRENT_QUEUE_ITEMS); - yield Promise.all(items.map(build)); - } - - // simulate the existence of some files to prevent considering them extraneous - for (var _iterator8 = artifactFiles, _isArray8 = Array.isArray(_iterator8), _i8 = 0, _iterator8 = _isArray8 ? _iterator8 : _iterator8[Symbol.iterator]();;) { - var _ref11; - - if (_isArray8) { - if (_i8 >= _iterator8.length) break; - _ref11 = _iterator8[_i8++]; - } else { - _i8 = _iterator8.next(); - if (_i8.done) break; - _ref11 = _i8.value; - } - - const file = _ref11; - - if (possibleExtraneous.has(file)) { - reporter.verbose(reporter.lang('verboseFilePhantomExtraneous', file)); - possibleExtraneous.delete(file); - } - } - - for (var _iterator9 = possibleExtraneous, _isArray9 = Array.isArray(_iterator9), _i9 = 0, _iterator9 = _isArray9 ? _iterator9 : _iterator9[Symbol.iterator]();;) { - var _ref12; - - if (_isArray9) { - if (_i9 >= _iterator9.length) break; - _ref12 = _iterator9[_i9++]; - } else { - _i9 = _iterator9.next(); - if (_i9.done) break; - _ref12 = _i9.value; - } - - const loc = _ref12; - - if (files.has(loc.toLowerCase())) { - possibleExtraneous.delete(loc); - } - } - - return actions; - }); - - return function buildActionsForHardlink(_x6, _x7, _x8, _x9) { - return _ref9.apply(this, arguments); - }; -})(); - -let copyBulk = exports.copyBulk = (() => { - var _ref17 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue, reporter, _events) { - const events = { - onStart: _events && _events.onStart || noop, - onProgress: _events && _events.onProgress || noop, - possibleExtraneous: _events ? _events.possibleExtraneous : new Set(), - ignoreBasenames: _events && _events.ignoreBasenames || [], - artifactFiles: _events && _events.artifactFiles || [] - }; - - const actions = yield buildActionsForCopy(queue, events, events.possibleExtraneous, reporter); - events.onStart(actions.file.length + actions.symlink.length + actions.link.length); - - const fileActions = actions.file; - - const currentlyWriting = new Map(); - - yield (_promise || _load_promise()).queue(fileActions, (() => { - var _ref18 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) { - let writePromise; - while (writePromise = currentlyWriting.get(data.dest)) { - yield writePromise; - } - - reporter.verbose(reporter.lang('verboseFileCopy', data.src, data.dest)); - const copier = (0, (_fsNormalized || _load_fsNormalized()).copyFile)(data, function () { - return currentlyWriting.delete(data.dest); - }); - currentlyWriting.set(data.dest, copier); - events.onProgress(data.dest); - return copier; - }); - - return function (_x14) { - return _ref18.apply(this, arguments); - }; - })(), CONCURRENT_QUEUE_ITEMS); - - // we need to copy symlinks last as they could reference files we were copying - const symlinkActions = actions.symlink; - yield (_promise || _load_promise()).queue(symlinkActions, function (data) { - const linkname = (_path || _load_path()).default.resolve((_path || _load_path()).default.dirname(data.dest), data.linkname); - reporter.verbose(reporter.lang('verboseFileSymlink', data.dest, linkname)); - return symlink(linkname, data.dest); - }); - }); - - return function copyBulk(_x11, _x12, _x13) { - return _ref17.apply(this, arguments); - }; -})(); - -let hardlinkBulk = exports.hardlinkBulk = (() => { - var _ref19 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue, reporter, _events) { - const events = { - onStart: _events && _events.onStart || noop, - onProgress: _events && _events.onProgress || noop, - possibleExtraneous: _events ? _events.possibleExtraneous : new Set(), - artifactFiles: _events && _events.artifactFiles || [], - ignoreBasenames: [] - }; - - const actions = yield buildActionsForHardlink(queue, events, events.possibleExtraneous, reporter); - events.onStart(actions.file.length + actions.symlink.length + actions.link.length); - - const fileActions = actions.link; - - yield (_promise || _load_promise()).queue(fileActions, (() => { - var _ref20 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) { - reporter.verbose(reporter.lang('verboseFileLink', data.src, data.dest)); - if (data.removeDest) { - yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(data.dest); - } - yield link(data.src, data.dest); - }); - - return function (_x18) { - return _ref20.apply(this, arguments); - }; - })(), CONCURRENT_QUEUE_ITEMS); - - // we need to copy symlinks last as they could reference files we were copying - const symlinkActions = actions.symlink; - yield (_promise || _load_promise()).queue(symlinkActions, function (data) { - const linkname = (_path || _load_path()).default.resolve((_path || _load_path()).default.dirname(data.dest), data.linkname); - reporter.verbose(reporter.lang('verboseFileSymlink', data.dest, linkname)); - return symlink(linkname, data.dest); - }); - }); - - return function hardlinkBulk(_x15, _x16, _x17) { - return _ref19.apply(this, arguments); - }; -})(); - -let readFileAny = exports.readFileAny = (() => { - var _ref21 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (files) { - for (var _iterator13 = files, _isArray13 = Array.isArray(_iterator13), _i13 = 0, _iterator13 = _isArray13 ? _iterator13 : _iterator13[Symbol.iterator]();;) { - var _ref22; - - if (_isArray13) { - if (_i13 >= _iterator13.length) break; - _ref22 = _iterator13[_i13++]; - } else { - _i13 = _iterator13.next(); - if (_i13.done) break; - _ref22 = _i13.value; - } - - const file = _ref22; - - if (yield exists(file)) { - return readFile(file); - } - } - return null; - }); - - return function readFileAny(_x19) { - return _ref21.apply(this, arguments); - }; -})(); - -let readJson = exports.readJson = (() => { - var _ref23 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (loc) { - return (yield readJsonAndFile(loc)).object; - }); - - return function readJson(_x20) { - return _ref23.apply(this, arguments); - }; -})(); - -let readJsonAndFile = exports.readJsonAndFile = (() => { - var _ref24 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (loc) { - const file = yield readFile(loc); - try { - return { - object: (0, (_map || _load_map()).default)(JSON.parse(stripBOM(file))), - content: file - }; - } catch (err) { - err.message = `${loc}: ${err.message}`; - throw err; - } - }); - - return function readJsonAndFile(_x21) { - return _ref24.apply(this, arguments); - }; -})(); - -let find = exports.find = (() => { - var _ref25 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (filename, dir) { - const parts = dir.split((_path || _load_path()).default.sep); - - while (parts.length) { - const loc = parts.concat(filename).join((_path || _load_path()).default.sep); - - if (yield exists(loc)) { - return loc; - } else { - parts.pop(); - } - } - - return false; - }); - - return function find(_x22, _x23) { - return _ref25.apply(this, arguments); - }; -})(); - -let symlink = exports.symlink = (() => { - var _ref26 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (src, dest) { - if (process.platform !== 'win32') { - // use relative paths otherwise which will be retained if the directory is moved - src = (_path || _load_path()).default.relative((_path || _load_path()).default.dirname(dest), src); - // When path.relative returns an empty string for the current directory, we should instead use - // '.', which is a valid fs.symlink target. - src = src || '.'; - } - - try { - const stats = yield lstat(dest); - if (stats.isSymbolicLink()) { - const resolved = dest; - if (resolved === src) { - return; - } - } - } catch (err) { - if (err.code !== 'ENOENT') { - throw err; - } - } - - // We use rimraf for unlink which never throws an ENOENT on missing target - yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(dest); - - if (process.platform === 'win32') { - // use directory junctions if possible on win32, this requires absolute paths - yield fsSymlink(src, dest, 'junction'); - } else { - yield fsSymlink(src, dest); - } - }); - - return function symlink(_x24, _x25) { - return _ref26.apply(this, arguments); - }; -})(); - -let walk = exports.walk = (() => { - var _ref27 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (dir, relativeDir, ignoreBasenames = new Set()) { - let files = []; - - let filenames = yield readdir(dir); - if (ignoreBasenames.size) { - filenames = filenames.filter(function (name) { - return !ignoreBasenames.has(name); - }); - } - - for (var _iterator14 = filenames, _isArray14 = Array.isArray(_iterator14), _i14 = 0, _iterator14 = _isArray14 ? _iterator14 : _iterator14[Symbol.iterator]();;) { - var _ref28; - - if (_isArray14) { - if (_i14 >= _iterator14.length) break; - _ref28 = _iterator14[_i14++]; - } else { - _i14 = _iterator14.next(); - if (_i14.done) break; - _ref28 = _i14.value; - } - - const name = _ref28; - - const relative = relativeDir ? (_path || _load_path()).default.join(relativeDir, name) : name; - const loc = (_path || _load_path()).default.join(dir, name); - const stat = yield lstat(loc); - - files.push({ - relative, - basename: name, - absolute: loc, - mtime: +stat.mtime - }); - - if (stat.isDirectory()) { - files = files.concat((yield walk(loc, relative, ignoreBasenames))); - } - } - - return files; - }); - - return function walk(_x26, _x27) { - return _ref27.apply(this, arguments); - }; -})(); - -let getFileSizeOnDisk = exports.getFileSizeOnDisk = (() => { - var _ref29 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (loc) { - const stat = yield lstat(loc); - const size = stat.size, - blockSize = stat.blksize; - - - return Math.ceil(size / blockSize) * blockSize; - }); - - return function getFileSizeOnDisk(_x28) { - return _ref29.apply(this, arguments); - }; -})(); - -let getEolFromFile = (() => { - var _ref30 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (path) { - if (!(yield exists(path))) { - return undefined; - } - - const buffer = yield readFileBuffer(path); - - for (let i = 0; i < buffer.length; ++i) { - if (buffer[i] === cr) { - return '\r\n'; - } - if (buffer[i] === lf) { - return '\n'; - } - } - return undefined; - }); - - return function getEolFromFile(_x29) { - return _ref30.apply(this, arguments); - }; -})(); - -let writeFilePreservingEol = exports.writeFilePreservingEol = (() => { - var _ref31 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (path, data) { - const eol = (yield getEolFromFile(path)) || (_os || _load_os()).default.EOL; - if (eol !== '\n') { - data = data.replace(/\n/g, eol); - } - yield writeFile(path, data); - }); - - return function writeFilePreservingEol(_x30, _x31) { - return _ref31.apply(this, arguments); - }; -})(); - -let hardlinksWork = exports.hardlinksWork = (() => { - var _ref32 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (dir) { - const filename = 'test-file' + Math.random(); - const file = (_path || _load_path()).default.join(dir, filename); - const fileLink = (_path || _load_path()).default.join(dir, filename + '-link'); - try { - yield writeFile(file, 'test'); - yield link(file, fileLink); - } catch (err) { - return false; - } finally { - yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(file); - yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(fileLink); - } - return true; - }); - - return function hardlinksWork(_x32) { - return _ref32.apply(this, arguments); - }; -})(); - -// not a strict polyfill for Node's fs.mkdtemp - - -let makeTempDir = exports.makeTempDir = (() => { - var _ref33 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (prefix) { - const dir = (_path || _load_path()).default.join((_os || _load_os()).default.tmpdir(), `yarn-${prefix || ''}-${Date.now()}-${Math.random()}`); - yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(dir); - yield mkdirp(dir); - return dir; - }); - - return function makeTempDir(_x33) { - return _ref33.apply(this, arguments); - }; -})(); - -let readFirstAvailableStream = exports.readFirstAvailableStream = (() => { - var _ref34 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (paths) { - for (var _iterator15 = paths, _isArray15 = Array.isArray(_iterator15), _i15 = 0, _iterator15 = _isArray15 ? _iterator15 : _iterator15[Symbol.iterator]();;) { - var _ref35; - - if (_isArray15) { - if (_i15 >= _iterator15.length) break; - _ref35 = _iterator15[_i15++]; - } else { - _i15 = _iterator15.next(); - if (_i15.done) break; - _ref35 = _i15.value; - } - - const path = _ref35; - - try { - const fd = yield open(path, 'r'); - return (_fs || _load_fs()).default.createReadStream(path, { fd }); - } catch (err) { - // Try the next one - } - } - return null; - }); - - return function readFirstAvailableStream(_x34) { - return _ref34.apply(this, arguments); - }; -})(); - -let getFirstSuitableFolder = exports.getFirstSuitableFolder = (() => { - var _ref36 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (paths, mode = constants.W_OK | constants.X_OK) { - const result = { - skipped: [], - folder: null - }; - - for (var _iterator16 = paths, _isArray16 = Array.isArray(_iterator16), _i16 = 0, _iterator16 = _isArray16 ? _iterator16 : _iterator16[Symbol.iterator]();;) { - var _ref37; - - if (_isArray16) { - if (_i16 >= _iterator16.length) break; - _ref37 = _iterator16[_i16++]; - } else { - _i16 = _iterator16.next(); - if (_i16.done) break; - _ref37 = _i16.value; - } - - const folder = _ref37; - - try { - yield mkdirp(folder); - yield access(folder, mode); - - result.folder = folder; - - return result; - } catch (error) { - result.skipped.push({ - error, - folder - }); - } - } - return result; - }); - - return function getFirstSuitableFolder(_x35) { - return _ref36.apply(this, arguments); - }; -})(); - -exports.copy = copy; -exports.readFile = readFile; -exports.readFileRaw = readFileRaw; -exports.normalizeOS = normalizeOS; - -var _fs; - -function _load_fs() { - return _fs = _interopRequireDefault(__webpack_require__(4)); -} - -var _glob; - -function _load_glob() { - return _glob = _interopRequireDefault(__webpack_require__(99)); -} - -var _os; - -function _load_os() { - return _os = _interopRequireDefault(__webpack_require__(42)); -} - -var _path; - -function _load_path() { - return _path = _interopRequireDefault(__webpack_require__(0)); -} - -var _blockingQueue; - -function _load_blockingQueue() { - return _blockingQueue = _interopRequireDefault(__webpack_require__(110)); -} - -var _promise; - -function _load_promise() { - return _promise = _interopRequireWildcard(__webpack_require__(51)); -} - -var _promise2; - -function _load_promise2() { - return _promise2 = __webpack_require__(51); -} - -var _map; - -function _load_map() { - return _map = _interopRequireDefault(__webpack_require__(30)); -} - -var _fsNormalized; - -function _load_fsNormalized() { - return _fsNormalized = __webpack_require__(216); -} - -function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -const constants = exports.constants = typeof (_fs || _load_fs()).default.constants !== 'undefined' ? (_fs || _load_fs()).default.constants : { - R_OK: (_fs || _load_fs()).default.R_OK, - W_OK: (_fs || _load_fs()).default.W_OK, - X_OK: (_fs || _load_fs()).default.X_OK -}; - -const lockQueue = exports.lockQueue = new (_blockingQueue || _load_blockingQueue()).default('fs lock'); - -const readFileBuffer = exports.readFileBuffer = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.readFile); -const open = exports.open = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.open); -const writeFile = exports.writeFile = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.writeFile); -const readlink = exports.readlink = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.readlink); -const realpath = exports.realpath = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.realpath); -const readdir = exports.readdir = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.readdir); -const rename = exports.rename = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.rename); -const access = exports.access = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.access); -const stat = exports.stat = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.stat); -const mkdirp = exports.mkdirp = (0, (_promise2 || _load_promise2()).promisify)(__webpack_require__(146)); -const exists = exports.exists = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.exists, true); -const lstat = exports.lstat = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.lstat); -const chmod = exports.chmod = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.chmod); -const link = exports.link = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.link); -const glob = exports.glob = (0, (_promise2 || _load_promise2()).promisify)((_glob || _load_glob()).default); -exports.unlink = (_fsNormalized || _load_fsNormalized()).unlink; - -// fs.copyFile uses the native file copying instructions on the system, performing much better -// than any JS-based solution and consumes fewer resources. Repeated testing to fine tune the -// concurrency level revealed 128 as the sweet spot on a quad-core, 16 CPU Intel system with SSD. - -const CONCURRENT_QUEUE_ITEMS = (_fs || _load_fs()).default.copyFile ? 128 : 4; - -const fsSymlink = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.symlink); -const invariant = __webpack_require__(9); -const stripBOM = __webpack_require__(161); - -const noop = () => {}; - -function copy(src, dest, reporter) { - return copyBulk([{ src, dest }], reporter); -} - -function _readFile(loc, encoding) { - return new Promise((resolve, reject) => { - (_fs || _load_fs()).default.readFile(loc, encoding, function (err, content) { - if (err) { - reject(err); - } else { - resolve(content); - } - }); - }); -} - -function readFile(loc) { - return _readFile(loc, 'utf8').then(normalizeOS); -} - -function readFileRaw(loc) { - return _readFile(loc, 'binary'); -} - -function normalizeOS(body) { - return body.replace(/\r\n/g, '\n'); -} - -const cr = '\r'.charCodeAt(0); -const lf = '\n'.charCodeAt(0); - -/***/ }), -/* 6 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -class MessageError extends Error { - constructor(msg, code) { - super(msg); - this.code = code; - } - -} - -exports.MessageError = MessageError; -class ProcessSpawnError extends MessageError { - constructor(msg, code, process) { - super(msg, code); - this.process = process; - } - -} - -exports.ProcessSpawnError = ProcessSpawnError; -class SecurityError extends MessageError {} - -exports.SecurityError = SecurityError; -class ProcessTermError extends MessageError {} - -exports.ProcessTermError = ProcessTermError; -class ResponseError extends Error { - constructor(msg, responseCode) { - super(msg); - this.responseCode = responseCode; - } - -} - -exports.ResponseError = ResponseError; -class OneTimePasswordError extends Error { - constructor(notice) { - super(); - this.notice = notice; - } - -} -exports.OneTimePasswordError = OneTimePasswordError; - -/***/ }), -/* 7 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Subscriber; }); -/* unused harmony export SafeSubscriber */ -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tslib__ = __webpack_require__(1); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__util_isFunction__ = __webpack_require__(155); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__Observer__ = __webpack_require__(420); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__Subscription__ = __webpack_require__(25); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__internal_symbol_rxSubscriber__ = __webpack_require__(322); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__config__ = __webpack_require__(186); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__util_hostReportError__ = __webpack_require__(324); -/** PURE_IMPORTS_START tslib,_util_isFunction,_Observer,_Subscription,_internal_symbol_rxSubscriber,_config,_util_hostReportError PURE_IMPORTS_END */ - - - - - - - -var Subscriber = /*@__PURE__*/ (function (_super) { - __WEBPACK_IMPORTED_MODULE_0_tslib__["a" /* __extends */](Subscriber, _super); - function Subscriber(destinationOrNext, error, complete) { - var _this = _super.call(this) || this; - _this.syncErrorValue = null; - _this.syncErrorThrown = false; - _this.syncErrorThrowable = false; - _this.isStopped = false; - _this._parentSubscription = null; - switch (arguments.length) { - case 0: - _this.destination = __WEBPACK_IMPORTED_MODULE_2__Observer__["a" /* empty */]; - break; - case 1: - if (!destinationOrNext) { - _this.destination = __WEBPACK_IMPORTED_MODULE_2__Observer__["a" /* empty */]; - break; - } - if (typeof destinationOrNext === 'object') { - if (destinationOrNext instanceof Subscriber) { - _this.syncErrorThrowable = destinationOrNext.syncErrorThrowable; - _this.destination = destinationOrNext; - destinationOrNext.add(_this); - } - else { - _this.syncErrorThrowable = true; - _this.destination = new SafeSubscriber(_this, destinationOrNext); - } - break; - } - default: - _this.syncErrorThrowable = true; - _this.destination = new SafeSubscriber(_this, destinationOrNext, error, complete); - break; - } - return _this; - } - Subscriber.prototype[__WEBPACK_IMPORTED_MODULE_4__internal_symbol_rxSubscriber__["a" /* rxSubscriber */]] = function () { return this; }; - Subscriber.create = function (next, error, complete) { - var subscriber = new Subscriber(next, error, complete); - subscriber.syncErrorThrowable = false; - return subscriber; - }; - Subscriber.prototype.next = function (value) { - if (!this.isStopped) { - this._next(value); - } - }; - Subscriber.prototype.error = function (err) { - if (!this.isStopped) { - this.isStopped = true; - this._error(err); - } - }; - Subscriber.prototype.complete = function () { - if (!this.isStopped) { - this.isStopped = true; - this._complete(); - } - }; - Subscriber.prototype.unsubscribe = function () { - if (this.closed) { - return; - } - this.isStopped = true; - _super.prototype.unsubscribe.call(this); - }; - Subscriber.prototype._next = function (value) { - this.destination.next(value); - }; - Subscriber.prototype._error = function (err) { - this.destination.error(err); - this.unsubscribe(); - }; - Subscriber.prototype._complete = function () { - this.destination.complete(); - this.unsubscribe(); - }; - Subscriber.prototype._unsubscribeAndRecycle = function () { - var _a = this, _parent = _a._parent, _parents = _a._parents; - this._parent = null; - this._parents = null; - this.unsubscribe(); - this.closed = false; - this.isStopped = false; - this._parent = _parent; - this._parents = _parents; - this._parentSubscription = null; - return this; - }; - return Subscriber; -}(__WEBPACK_IMPORTED_MODULE_3__Subscription__["a" /* Subscription */])); - -var SafeSubscriber = /*@__PURE__*/ (function (_super) { - __WEBPACK_IMPORTED_MODULE_0_tslib__["a" /* __extends */](SafeSubscriber, _super); - function SafeSubscriber(_parentSubscriber, observerOrNext, error, complete) { - var _this = _super.call(this) || this; - _this._parentSubscriber = _parentSubscriber; - var next; - var context = _this; - if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__util_isFunction__["a" /* isFunction */])(observerOrNext)) { - next = observerOrNext; - } - else if (observerOrNext) { - next = observerOrNext.next; - error = observerOrNext.error; - complete = observerOrNext.complete; - if (observerOrNext !== __WEBPACK_IMPORTED_MODULE_2__Observer__["a" /* empty */]) { - context = Object.create(observerOrNext); - if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__util_isFunction__["a" /* isFunction */])(context.unsubscribe)) { - _this.add(context.unsubscribe.bind(context)); - } - context.unsubscribe = _this.unsubscribe.bind(_this); - } - } - _this._context = context; - _this._next = next; - _this._error = error; - _this._complete = complete; - return _this; - } - SafeSubscriber.prototype.next = function (value) { - if (!this.isStopped && this._next) { - var _parentSubscriber = this._parentSubscriber; - if (!__WEBPACK_IMPORTED_MODULE_5__config__["a" /* config */].useDeprecatedSynchronousErrorHandling || !_parentSubscriber.syncErrorThrowable) { - this.__tryOrUnsub(this._next, value); - } - else if (this.__tryOrSetError(_parentSubscriber, this._next, value)) { - this.unsubscribe(); - } - } - }; - SafeSubscriber.prototype.error = function (err) { - if (!this.isStopped) { - var _parentSubscriber = this._parentSubscriber; - var useDeprecatedSynchronousErrorHandling = __WEBPACK_IMPORTED_MODULE_5__config__["a" /* config */].useDeprecatedSynchronousErrorHandling; - if (this._error) { - if (!useDeprecatedSynchronousErrorHandling || !_parentSubscriber.syncErrorThrowable) { - this.__tryOrUnsub(this._error, err); - this.unsubscribe(); - } - else { - this.__tryOrSetError(_parentSubscriber, this._error, err); - this.unsubscribe(); - } - } - else if (!_parentSubscriber.syncErrorThrowable) { - this.unsubscribe(); - if (useDeprecatedSynchronousErrorHandling) { - throw err; - } - __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__util_hostReportError__["a" /* hostReportError */])(err); - } - else { - if (useDeprecatedSynchronousErrorHandling) { - _parentSubscriber.syncErrorValue = err; - _parentSubscriber.syncErrorThrown = true; - } - else { - __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__util_hostReportError__["a" /* hostReportError */])(err); - } - this.unsubscribe(); - } - } - }; - SafeSubscriber.prototype.complete = function () { - var _this = this; - if (!this.isStopped) { - var _parentSubscriber = this._parentSubscriber; - if (this._complete) { - var wrappedComplete = function () { return _this._complete.call(_this._context); }; - if (!__WEBPACK_IMPORTED_MODULE_5__config__["a" /* config */].useDeprecatedSynchronousErrorHandling || !_parentSubscriber.syncErrorThrowable) { - this.__tryOrUnsub(wrappedComplete); - this.unsubscribe(); - } - else { - this.__tryOrSetError(_parentSubscriber, wrappedComplete); - this.unsubscribe(); - } - } - else { - this.unsubscribe(); - } - } - }; - SafeSubscriber.prototype.__tryOrUnsub = function (fn, value) { - try { - fn.call(this._context, value); - } - catch (err) { - this.unsubscribe(); - if (__WEBPACK_IMPORTED_MODULE_5__config__["a" /* config */].useDeprecatedSynchronousErrorHandling) { - throw err; - } - else { - __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__util_hostReportError__["a" /* hostReportError */])(err); - } - } - }; - SafeSubscriber.prototype.__tryOrSetError = function (parent, fn, value) { - if (!__WEBPACK_IMPORTED_MODULE_5__config__["a" /* config */].useDeprecatedSynchronousErrorHandling) { - throw new Error('bad call'); - } - try { - fn.call(this._context, value); - } - catch (err) { - if (__WEBPACK_IMPORTED_MODULE_5__config__["a" /* config */].useDeprecatedSynchronousErrorHandling) { - parent.syncErrorValue = err; - parent.syncErrorThrown = true; - return true; - } - else { - __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__util_hostReportError__["a" /* hostReportError */])(err); - return true; - } - } - return false; - }; - SafeSubscriber.prototype._unsubscribe = function () { - var _parentSubscriber = this._parentSubscriber; - this._context = null; - this._parentSubscriber = null; - _parentSubscriber.unsubscribe(); - }; - return SafeSubscriber; -}(Subscriber)); - -//# sourceMappingURL=Subscriber.js.map - - -/***/ }), -/* 8 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.getPathKey = getPathKey; -const os = __webpack_require__(42); -const path = __webpack_require__(0); -const userHome = __webpack_require__(67).default; - -var _require = __webpack_require__(222); - -const getCacheDir = _require.getCacheDir, - getConfigDir = _require.getConfigDir, - getDataDir = _require.getDataDir; - -const isWebpackBundle = __webpack_require__(278); - -const DEPENDENCY_TYPES = exports.DEPENDENCY_TYPES = ['devDependencies', 'dependencies', 'optionalDependencies', 'peerDependencies']; -const OWNED_DEPENDENCY_TYPES = exports.OWNED_DEPENDENCY_TYPES = ['devDependencies', 'dependencies', 'optionalDependencies']; - -const RESOLUTIONS = exports.RESOLUTIONS = 'resolutions'; -const MANIFEST_FIELDS = exports.MANIFEST_FIELDS = [RESOLUTIONS, ...DEPENDENCY_TYPES]; - -const SUPPORTED_NODE_VERSIONS = exports.SUPPORTED_NODE_VERSIONS = '^4.8.0 || ^5.7.0 || ^6.2.2 || >=8.0.0'; - -const YARN_REGISTRY = exports.YARN_REGISTRY = 'https://registry.yarnpkg.com'; -const NPM_REGISTRY_RE = exports.NPM_REGISTRY_RE = /https?:\/\/registry\.npmjs\.org/g; - -const YARN_DOCS = exports.YARN_DOCS = 'https://yarnpkg.com/en/docs/cli/'; -const YARN_INSTALLER_SH = exports.YARN_INSTALLER_SH = 'https://yarnpkg.com/install.sh'; -const YARN_INSTALLER_MSI = exports.YARN_INSTALLER_MSI = 'https://yarnpkg.com/latest.msi'; - -const SELF_UPDATE_VERSION_URL = exports.SELF_UPDATE_VERSION_URL = 'https://yarnpkg.com/latest-version'; - -// cache version, bump whenever we make backwards incompatible changes -const CACHE_VERSION = exports.CACHE_VERSION = 6; - -// lockfile version, bump whenever we make backwards incompatible changes -const LOCKFILE_VERSION = exports.LOCKFILE_VERSION = 1; - -// max amount of network requests to perform concurrently -const NETWORK_CONCURRENCY = exports.NETWORK_CONCURRENCY = 8; - -// HTTP timeout used when downloading packages -const NETWORK_TIMEOUT = exports.NETWORK_TIMEOUT = 30 * 1000; // in milliseconds - -// max amount of child processes to execute concurrently -const CHILD_CONCURRENCY = exports.CHILD_CONCURRENCY = 5; - -const REQUIRED_PACKAGE_KEYS = exports.REQUIRED_PACKAGE_KEYS = ['name', 'version', '_uid']; - -function getPreferredCacheDirectories() { - const preferredCacheDirectories = [getCacheDir()]; - - if (process.getuid) { - // $FlowFixMe: process.getuid exists, dammit - preferredCacheDirectories.push(path.join(os.tmpdir(), `.yarn-cache-${process.getuid()}`)); - } - - preferredCacheDirectories.push(path.join(os.tmpdir(), `.yarn-cache`)); - - return preferredCacheDirectories; -} - -const PREFERRED_MODULE_CACHE_DIRECTORIES = exports.PREFERRED_MODULE_CACHE_DIRECTORIES = getPreferredCacheDirectories(); -const CONFIG_DIRECTORY = exports.CONFIG_DIRECTORY = getConfigDir(); -const DATA_DIRECTORY = exports.DATA_DIRECTORY = getDataDir(); -const LINK_REGISTRY_DIRECTORY = exports.LINK_REGISTRY_DIRECTORY = path.join(DATA_DIRECTORY, 'link'); -const GLOBAL_MODULE_DIRECTORY = exports.GLOBAL_MODULE_DIRECTORY = path.join(DATA_DIRECTORY, 'global'); - -const NODE_BIN_PATH = exports.NODE_BIN_PATH = process.execPath; -const YARN_BIN_PATH = exports.YARN_BIN_PATH = getYarnBinPath(); - -// Webpack needs to be configured with node.__dirname/__filename = false -function getYarnBinPath() { - if (isWebpackBundle) { - return __filename; - } else { - return path.join(__dirname, '..', 'bin', 'yarn.js'); - } -} - -const NODE_MODULES_FOLDER = exports.NODE_MODULES_FOLDER = 'node_modules'; -const NODE_PACKAGE_JSON = exports.NODE_PACKAGE_JSON = 'package.json'; - -const PNP_FILENAME = exports.PNP_FILENAME = '.pnp.js'; - -const POSIX_GLOBAL_PREFIX = exports.POSIX_GLOBAL_PREFIX = `${process.env.DESTDIR || ''}/usr/local`; -const FALLBACK_GLOBAL_PREFIX = exports.FALLBACK_GLOBAL_PREFIX = path.join(userHome, '.yarn'); - -const META_FOLDER = exports.META_FOLDER = '.yarn-meta'; -const INTEGRITY_FILENAME = exports.INTEGRITY_FILENAME = '.yarn-integrity'; -const LOCKFILE_FILENAME = exports.LOCKFILE_FILENAME = 'yarn.lock'; -const METADATA_FILENAME = exports.METADATA_FILENAME = '.yarn-metadata.json'; -const TARBALL_FILENAME = exports.TARBALL_FILENAME = '.yarn-tarball.tgz'; -const CLEAN_FILENAME = exports.CLEAN_FILENAME = '.yarnclean'; - -const NPM_LOCK_FILENAME = exports.NPM_LOCK_FILENAME = 'package-lock.json'; -const NPM_SHRINKWRAP_FILENAME = exports.NPM_SHRINKWRAP_FILENAME = 'npm-shrinkwrap.json'; - -const DEFAULT_INDENT = exports.DEFAULT_INDENT = ' '; -const SINGLE_INSTANCE_PORT = exports.SINGLE_INSTANCE_PORT = 31997; -const SINGLE_INSTANCE_FILENAME = exports.SINGLE_INSTANCE_FILENAME = '.yarn-single-instance'; - -const ENV_PATH_KEY = exports.ENV_PATH_KEY = getPathKey(process.platform, process.env); - -function getPathKey(platform, env) { - let pathKey = 'PATH'; - - // windows calls its path "Path" usually, but this is not guaranteed. - if (platform === 'win32') { - pathKey = 'Path'; - - for (const key in env) { - if (key.toLowerCase() === 'path') { - pathKey = key; - } - } - } - - return pathKey; -} - -const VERSION_COLOR_SCHEME = exports.VERSION_COLOR_SCHEME = { - major: 'red', - premajor: 'red', - minor: 'yellow', - preminor: 'yellow', - patch: 'green', - prepatch: 'green', - prerelease: 'red', - unchanged: 'white', - unknown: 'red' -}; - -/***/ }), -/* 9 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - - - -/** - * Use invariant() to assert state which your program assumes to be true. - * - * Provide sprintf-style format (only %s is supported) and arguments - * to provide information about what broke and what you were - * expecting. - * - * The invariant message will be stripped in production, but the invariant - * will remain to ensure logic does not differ in production. - */ - -var NODE_ENV = process.env.NODE_ENV; - -var invariant = function(condition, format, a, b, c, d, e, f) { - if (NODE_ENV !== 'production') { - if (format === undefined) { - throw new Error('invariant requires an error message argument'); - } - } - - if (!condition) { - var error; - if (format === undefined) { - error = new Error( - 'Minified exception occurred; use the non-minified dev environment ' + - 'for the full error message and additional helpful warnings.' - ); - } else { - var args = [a, b, c, d, e, f]; - var argIndex = 0; - error = new Error( - format.replace(/%s/g, function() { return args[argIndex++]; }) - ); - error.name = 'Invariant Violation'; - } - - error.framesToPop = 1; // we don't care about invariant's own frame - throw error; - } -}; - -module.exports = invariant; - - -/***/ }), -/* 10 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var YAMLException = __webpack_require__(55); - -var TYPE_CONSTRUCTOR_OPTIONS = [ - 'kind', - 'resolve', - 'construct', - 'instanceOf', - 'predicate', - 'represent', - 'defaultStyle', - 'styleAliases' -]; - -var YAML_NODE_KINDS = [ - 'scalar', - 'sequence', - 'mapping' -]; - -function compileStyleAliases(map) { - var result = {}; - - if (map !== null) { - Object.keys(map).forEach(function (style) { - map[style].forEach(function (alias) { - result[String(alias)] = style; - }); - }); - } - - return result; -} - -function Type(tag, options) { - options = options || {}; - - Object.keys(options).forEach(function (name) { - if (TYPE_CONSTRUCTOR_OPTIONS.indexOf(name) === -1) { - throw new YAMLException('Unknown option "' + name + '" is met in definition of "' + tag + '" YAML type.'); - } - }); - - // TODO: Add tag format check. - this.tag = tag; - this.kind = options['kind'] || null; - this.resolve = options['resolve'] || function () { return true; }; - this.construct = options['construct'] || function (data) { return data; }; - this.instanceOf = options['instanceOf'] || null; - this.predicate = options['predicate'] || null; - this.represent = options['represent'] || null; - this.defaultStyle = options['defaultStyle'] || null; - this.styleAliases = compileStyleAliases(options['styleAliases'] || null); - - if (YAML_NODE_KINDS.indexOf(this.kind) === -1) { - throw new YAMLException('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.'); - } -} - -module.exports = Type; - - -/***/ }), -/* 11 */ -/***/ (function(module, exports) { - -module.exports = require("crypto"); - -/***/ }), -/* 12 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Observable; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_canReportError__ = __webpack_require__(323); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__util_toSubscriber__ = __webpack_require__(932); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__internal_symbol_observable__ = __webpack_require__(118); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util_pipe__ = __webpack_require__(325); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__config__ = __webpack_require__(186); -/** PURE_IMPORTS_START _util_canReportError,_util_toSubscriber,_internal_symbol_observable,_util_pipe,_config PURE_IMPORTS_END */ - - - - - -var Observable = /*@__PURE__*/ (function () { - function Observable(subscribe) { - this._isScalar = false; - if (subscribe) { - this._subscribe = subscribe; - } - } - Observable.prototype.lift = function (operator) { - var observable = new Observable(); - observable.source = this; - observable.operator = operator; - return observable; - }; - Observable.prototype.subscribe = function (observerOrNext, error, complete) { - var operator = this.operator; - var sink = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__util_toSubscriber__["a" /* toSubscriber */])(observerOrNext, error, complete); - if (operator) { - operator.call(sink, this.source); - } - else { - sink.add(this.source || (__WEBPACK_IMPORTED_MODULE_4__config__["a" /* config */].useDeprecatedSynchronousErrorHandling && !sink.syncErrorThrowable) ? - this._subscribe(sink) : - this._trySubscribe(sink)); - } - if (__WEBPACK_IMPORTED_MODULE_4__config__["a" /* config */].useDeprecatedSynchronousErrorHandling) { - if (sink.syncErrorThrowable) { - sink.syncErrorThrowable = false; - if (sink.syncErrorThrown) { - throw sink.syncErrorValue; - } - } - } - return sink; - }; - Observable.prototype._trySubscribe = function (sink) { - try { - return this._subscribe(sink); - } - catch (err) { - if (__WEBPACK_IMPORTED_MODULE_4__config__["a" /* config */].useDeprecatedSynchronousErrorHandling) { - sink.syncErrorThrown = true; - sink.syncErrorValue = err; - } - if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__util_canReportError__["a" /* canReportError */])(sink)) { - sink.error(err); - } - else { - console.warn(err); - } - } - }; - Observable.prototype.forEach = function (next, promiseCtor) { - var _this = this; - promiseCtor = getPromiseCtor(promiseCtor); - return new promiseCtor(function (resolve, reject) { - var subscription; - subscription = _this.subscribe(function (value) { - try { - next(value); - } - catch (err) { - reject(err); - if (subscription) { - subscription.unsubscribe(); - } - } - }, reject, resolve); - }); - }; - Observable.prototype._subscribe = function (subscriber) { - var source = this.source; - return source && source.subscribe(subscriber); - }; - Observable.prototype[__WEBPACK_IMPORTED_MODULE_2__internal_symbol_observable__["a" /* observable */]] = function () { - return this; - }; - Observable.prototype.pipe = function () { - var operations = []; - for (var _i = 0; _i < arguments.length; _i++) { - operations[_i] = arguments[_i]; - } - if (operations.length === 0) { - return this; - } - return __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__util_pipe__["b" /* pipeFromArray */])(operations)(this); - }; - Observable.prototype.toPromise = function (promiseCtor) { - var _this = this; - promiseCtor = getPromiseCtor(promiseCtor); - return new promiseCtor(function (resolve, reject) { - var value; - _this.subscribe(function (x) { return value = x; }, function (err) { return reject(err); }, function () { return resolve(value); }); - }); - }; - Observable.create = function (subscribe) { - return new Observable(subscribe); - }; - return Observable; -}()); - -function getPromiseCtor(promiseCtor) { - if (!promiseCtor) { - promiseCtor = __WEBPACK_IMPORTED_MODULE_4__config__["a" /* config */].Promise || Promise; - } - if (!promiseCtor) { - throw new Error('no Promise impl found'); - } - return promiseCtor; -} -//# sourceMappingURL=Observable.js.map - - -/***/ }), -/* 13 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return OuterSubscriber; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tslib__ = __webpack_require__(1); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__Subscriber__ = __webpack_require__(7); -/** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ - - -var OuterSubscriber = /*@__PURE__*/ (function (_super) { - __WEBPACK_IMPORTED_MODULE_0_tslib__["a" /* __extends */](OuterSubscriber, _super); - function OuterSubscriber() { - return _super !== null && _super.apply(this, arguments) || this; - } - OuterSubscriber.prototype.notifyNext = function (outerValue, innerValue, outerIndex, innerIndex, innerSub) { - this.destination.next(innerValue); - }; - OuterSubscriber.prototype.notifyError = function (error, innerSub) { - this.destination.error(error); - }; - OuterSubscriber.prototype.notifyComplete = function (innerSub) { - this.destination.complete(); - }; - return OuterSubscriber; -}(__WEBPACK_IMPORTED_MODULE_1__Subscriber__["a" /* Subscriber */])); - -//# sourceMappingURL=OuterSubscriber.js.map - - -/***/ }), -/* 14 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -/* harmony export (immutable) */ __webpack_exports__["a"] = subscribeToResult; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__InnerSubscriber__ = __webpack_require__(84); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__subscribeTo__ = __webpack_require__(446); -/** PURE_IMPORTS_START _InnerSubscriber,_subscribeTo PURE_IMPORTS_END */ - - -function subscribeToResult(outerSubscriber, result, outerValue, outerIndex, destination) { - if (destination === void 0) { - destination = new __WEBPACK_IMPORTED_MODULE_0__InnerSubscriber__["a" /* InnerSubscriber */](outerSubscriber, outerValue, outerIndex); - } - if (destination.closed) { - return; - } - return __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__subscribeTo__["a" /* subscribeTo */])(result)(destination); -} -//# sourceMappingURL=subscribeToResult.js.map - - -/***/ }), -/* 15 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -/* eslint-disable node/no-deprecated-api */ - - - -var buffer = __webpack_require__(64) -var Buffer = buffer.Buffer - -var safer = {} - -var key - -for (key in buffer) { - if (!buffer.hasOwnProperty(key)) continue - if (key === 'SlowBuffer' || key === 'Buffer') continue - safer[key] = buffer[key] -} - -var Safer = safer.Buffer = {} -for (key in Buffer) { - if (!Buffer.hasOwnProperty(key)) continue - if (key === 'allocUnsafe' || key === 'allocUnsafeSlow') continue - Safer[key] = Buffer[key] -} - -safer.Buffer.prototype = Buffer.prototype - -if (!Safer.from || Safer.from === Uint8Array.from) { - Safer.from = function (value, encodingOrOffset, length) { - if (typeof value === 'number') { - throw new TypeError('The "value" argument must not be of type number. Received type ' + typeof value) - } - if (value && typeof value.length === 'undefined') { - throw new TypeError('The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type ' + typeof value) - } - return Buffer(value, encodingOrOffset, length) - } -} - -if (!Safer.alloc) { - Safer.alloc = function (size, fill, encoding) { - if (typeof size !== 'number') { - throw new TypeError('The "size" argument must be of type number. Received type ' + typeof size) - } - if (size < 0 || size >= 2 * (1 << 30)) { - throw new RangeError('The value "' + size + '" is invalid for option "size"') - } - var buf = Buffer(size) - if (!fill || fill.length === 0) { - buf.fill(0) - } else if (typeof encoding === 'string') { - buf.fill(fill, encoding) - } else { - buf.fill(fill) - } - return buf - } -} - -if (!safer.kStringMaxLength) { - try { - safer.kStringMaxLength = process.binding('buffer').kStringMaxLength - } catch (e) { - // we can't determine kStringMaxLength in environments where process.binding - // is unsupported, so let's not set it - } -} - -if (!safer.constants) { - safer.constants = { - MAX_LENGTH: safer.kMaxLength - } - if (safer.kStringMaxLength) { - safer.constants.MAX_STRING_LENGTH = safer.kStringMaxLength - } -} - -module.exports = safer - - -/***/ }), -/* 16 */ -/***/ (function(module, exports, __webpack_require__) { - -// Copyright (c) 2012, Mark Cavage. All rights reserved. -// Copyright 2015 Joyent, Inc. - -var assert = __webpack_require__(29); -var Stream = __webpack_require__(23).Stream; -var util = __webpack_require__(3); - - -///--- Globals - -/* JSSTYLED */ -var UUID_REGEXP = /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/; - - -///--- Internal - -function _capitalize(str) { - return (str.charAt(0).toUpperCase() + str.slice(1)); -} - -function _toss(name, expected, oper, arg, actual) { - throw new assert.AssertionError({ - message: util.format('%s (%s) is required', name, expected), - actual: (actual === undefined) ? typeof (arg) : actual(arg), - expected: expected, - operator: oper || '===', - stackStartFunction: _toss.caller - }); -} - -function _getClass(arg) { - return (Object.prototype.toString.call(arg).slice(8, -1)); -} - -function noop() { - // Why even bother with asserts? -} - - -///--- Exports - -var types = { - bool: { - check: function (arg) { return typeof (arg) === 'boolean'; } - }, - func: { - check: function (arg) { return typeof (arg) === 'function'; } - }, - string: { - check: function (arg) { return typeof (arg) === 'string'; } - }, - object: { - check: function (arg) { - return typeof (arg) === 'object' && arg !== null; - } - }, - number: { - check: function (arg) { - return typeof (arg) === 'number' && !isNaN(arg); - } - }, - finite: { - check: function (arg) { - return typeof (arg) === 'number' && !isNaN(arg) && isFinite(arg); - } - }, - buffer: { - check: function (arg) { return Buffer.isBuffer(arg); }, - operator: 'Buffer.isBuffer' - }, - array: { - check: function (arg) { return Array.isArray(arg); }, - operator: 'Array.isArray' - }, - stream: { - check: function (arg) { return arg instanceof Stream; }, - operator: 'instanceof', - actual: _getClass - }, - date: { - check: function (arg) { return arg instanceof Date; }, - operator: 'instanceof', - actual: _getClass - }, - regexp: { - check: function (arg) { return arg instanceof RegExp; }, - operator: 'instanceof', - actual: _getClass - }, - uuid: { - check: function (arg) { - return typeof (arg) === 'string' && UUID_REGEXP.test(arg); - }, - operator: 'isUUID' - } -}; - -function _setExports(ndebug) { - var keys = Object.keys(types); - var out; - - /* re-export standard assert */ - if (process.env.NODE_NDEBUG) { - out = noop; - } else { - out = function (arg, msg) { - if (!arg) { - _toss(msg, 'true', arg); - } - }; - } - - /* standard checks */ - keys.forEach(function (k) { - if (ndebug) { - out[k] = noop; - return; - } - var type = types[k]; - out[k] = function (arg, msg) { - if (!type.check(arg)) { - _toss(msg, k, type.operator, arg, type.actual); - } - }; - }); - - /* optional checks */ - keys.forEach(function (k) { - var name = 'optional' + _capitalize(k); - if (ndebug) { - out[name] = noop; - return; - } - var type = types[k]; - out[name] = function (arg, msg) { - if (arg === undefined || arg === null) { - return; - } - if (!type.check(arg)) { - _toss(msg, k, type.operator, arg, type.actual); - } - }; - }); - - /* arrayOf checks */ - keys.forEach(function (k) { - var name = 'arrayOf' + _capitalize(k); - if (ndebug) { - out[name] = noop; - return; - } - var type = types[k]; - var expected = '[' + k + ']'; - out[name] = function (arg, msg) { - if (!Array.isArray(arg)) { - _toss(msg, expected, type.operator, arg, type.actual); - } - var i; - for (i = 0; i < arg.length; i++) { - if (!type.check(arg[i])) { - _toss(msg, expected, type.operator, arg, type.actual); - } - } - }; - }); - - /* optionalArrayOf checks */ - keys.forEach(function (k) { - var name = 'optionalArrayOf' + _capitalize(k); - if (ndebug) { - out[name] = noop; - return; - } - var type = types[k]; - var expected = '[' + k + ']'; - out[name] = function (arg, msg) { - if (arg === undefined || arg === null) { - return; - } - if (!Array.isArray(arg)) { - _toss(msg, expected, type.operator, arg, type.actual); - } - var i; - for (i = 0; i < arg.length; i++) { - if (!type.check(arg[i])) { - _toss(msg, expected, type.operator, arg, type.actual); - } - } - }; - }); - - /* re-export built-in assertions */ - Object.keys(assert).forEach(function (k) { - if (k === 'AssertionError') { - out[k] = assert[k]; - return; - } - if (ndebug) { - out[k] = noop; - return; - } - out[k] = assert[k]; - }); - - /* export ourselves (for unit tests _only_) */ - out._setExports = _setExports; - - return out; -} - -module.exports = _setExports(process.env.NODE_NDEBUG); - - -/***/ }), -/* 17 */ -/***/ (function(module, exports) { - -// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 -var global = module.exports = typeof window != 'undefined' && window.Math == Math - ? window : typeof self != 'undefined' && self.Math == Math ? self - // eslint-disable-next-line no-new-func - : Function('return this')(); -if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef - - -/***/ }), -/* 18 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.sortAlpha = sortAlpha; -exports.sortOptionsByFlags = sortOptionsByFlags; -exports.entries = entries; -exports.removePrefix = removePrefix; -exports.removeSuffix = removeSuffix; -exports.addSuffix = addSuffix; -exports.hyphenate = hyphenate; -exports.camelCase = camelCase; -exports.compareSortedArrays = compareSortedArrays; -exports.sleep = sleep; -const _camelCase = __webpack_require__(227); - -function sortAlpha(a, b) { - // sort alphabetically in a deterministic way - const shortLen = Math.min(a.length, b.length); - for (let i = 0; i < shortLen; i++) { - const aChar = a.charCodeAt(i); - const bChar = b.charCodeAt(i); - if (aChar !== bChar) { - return aChar - bChar; - } - } - return a.length - b.length; -} - -function sortOptionsByFlags(a, b) { - const aOpt = a.flags.replace(/-/g, ''); - const bOpt = b.flags.replace(/-/g, ''); - return sortAlpha(aOpt, bOpt); -} - -function entries(obj) { - const entries = []; - if (obj) { - for (const key in obj) { - entries.push([key, obj[key]]); - } - } - return entries; -} - -function removePrefix(pattern, prefix) { - if (pattern.startsWith(prefix)) { - pattern = pattern.slice(prefix.length); - } - - return pattern; -} - -function removeSuffix(pattern, suffix) { - if (pattern.endsWith(suffix)) { - return pattern.slice(0, -suffix.length); - } - - return pattern; -} - -function addSuffix(pattern, suffix) { - if (!pattern.endsWith(suffix)) { - return pattern + suffix; - } - - return pattern; -} - -function hyphenate(str) { - return str.replace(/[A-Z]/g, match => { - return '-' + match.charAt(0).toLowerCase(); - }); -} - -function camelCase(str) { - if (/[A-Z]/.test(str)) { - return null; - } else { - return _camelCase(str); - } -} - -function compareSortedArrays(array1, array2) { - if (array1.length !== array2.length) { - return false; - } - for (let i = 0, len = array1.length; i < len; i++) { - if (array1[i] !== array2[i]) { - return false; - } - } - return true; -} - -function sleep(ms) { - return new Promise(resolve => { - setTimeout(resolve, ms); - }); -} - -/***/ }), -/* 19 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.stringify = exports.parse = undefined; - -var _asyncToGenerator2; - -function _load_asyncToGenerator() { - return _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(2)); -} - -var _parse; - -function _load_parse() { - return _parse = __webpack_require__(106); -} - -Object.defineProperty(exports, 'parse', { - enumerable: true, - get: function get() { - return _interopRequireDefault(_parse || _load_parse()).default; - } -}); - -var _stringify; - -function _load_stringify() { - return _stringify = __webpack_require__(200); -} - -Object.defineProperty(exports, 'stringify', { - enumerable: true, - get: function get() { - return _interopRequireDefault(_stringify || _load_stringify()).default; - } -}); -exports.implodeEntry = implodeEntry; -exports.explodeEntry = explodeEntry; - -var _misc; - -function _load_misc() { - return _misc = __webpack_require__(18); -} - -var _normalizePattern; - -function _load_normalizePattern() { - return _normalizePattern = __webpack_require__(37); -} - -var _parse2; - -function _load_parse2() { - return _parse2 = _interopRequireDefault(__webpack_require__(106)); -} - -var _constants; - -function _load_constants() { - return _constants = __webpack_require__(8); -} - -var _fs; - -function _load_fs() { - return _fs = _interopRequireWildcard(__webpack_require__(5)); -} - -function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -const invariant = __webpack_require__(9); - -const path = __webpack_require__(0); -const ssri = __webpack_require__(65); - -function getName(pattern) { - return (0, (_normalizePattern || _load_normalizePattern()).normalizePattern)(pattern).name; -} - -function blankObjectUndefined(obj) { - return obj && Object.keys(obj).length ? obj : undefined; -} - -function keyForRemote(remote) { - return remote.resolved || (remote.reference && remote.hash ? `${remote.reference}#${remote.hash}` : null); -} - -function serializeIntegrity(integrity) { - // We need this because `Integrity.toString()` does not use sorting to ensure a stable string output - // See https://git.io/vx2Hy - return integrity.toString().split(' ').sort().join(' '); -} - -function implodeEntry(pattern, obj) { - const inferredName = getName(pattern); - const integrity = obj.integrity ? serializeIntegrity(obj.integrity) : ''; - const imploded = { - name: inferredName === obj.name ? undefined : obj.name, - version: obj.version, - uid: obj.uid === obj.version ? undefined : obj.uid, - resolved: obj.resolved, - registry: obj.registry === 'npm' ? undefined : obj.registry, - dependencies: blankObjectUndefined(obj.dependencies), - optionalDependencies: blankObjectUndefined(obj.optionalDependencies), - permissions: blankObjectUndefined(obj.permissions), - prebuiltVariants: blankObjectUndefined(obj.prebuiltVariants) - }; - if (integrity) { - imploded.integrity = integrity; - } - return imploded; -} - -function explodeEntry(pattern, obj) { - obj.optionalDependencies = obj.optionalDependencies || {}; - obj.dependencies = obj.dependencies || {}; - obj.uid = obj.uid || obj.version; - obj.permissions = obj.permissions || {}; - obj.registry = obj.registry || 'npm'; - obj.name = obj.name || getName(pattern); - const integrity = obj.integrity; - if (integrity && integrity.isIntegrity) { - obj.integrity = ssri.parse(integrity); - } - return obj; -} - -class Lockfile { - constructor({ cache, source, parseResultType } = {}) { - this.source = source || ''; - this.cache = cache; - this.parseResultType = parseResultType; - } - - // source string if the `cache` was parsed - - - // if true, we're parsing an old yarn file and need to update integrity fields - hasEntriesExistWithoutIntegrity() { - if (!this.cache) { - return false; - } - - for (const key in this.cache) { - // $FlowFixMe - `this.cache` is clearly defined at this point - if (!/^.*@(file:|http)/.test(key) && this.cache[key] && !this.cache[key].integrity) { - return true; - } - } - - return false; - } - - static fromDirectory(dir, reporter) { - return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - // read the manifest in this directory - const lockfileLoc = path.join(dir, (_constants || _load_constants()).LOCKFILE_FILENAME); - - let lockfile; - let rawLockfile = ''; - let parseResult; - - if (yield (_fs || _load_fs()).exists(lockfileLoc)) { - rawLockfile = yield (_fs || _load_fs()).readFile(lockfileLoc); - parseResult = (0, (_parse2 || _load_parse2()).default)(rawLockfile, lockfileLoc); - - if (reporter) { - if (parseResult.type === 'merge') { - reporter.info(reporter.lang('lockfileMerged')); - } else if (parseResult.type === 'conflict') { - reporter.warn(reporter.lang('lockfileConflict')); - } - } - - lockfile = parseResult.object; - } else if (reporter) { - reporter.info(reporter.lang('noLockfileFound')); - } - - if (lockfile && lockfile.__metadata) { - const lockfilev2 = lockfile; - lockfile = {}; - } - - return new Lockfile({ cache: lockfile, source: rawLockfile, parseResultType: parseResult && parseResult.type }); - })(); - } - - getLocked(pattern) { - const cache = this.cache; - if (!cache) { - return undefined; - } - - const shrunk = pattern in cache && cache[pattern]; - - if (typeof shrunk === 'string') { - return this.getLocked(shrunk); - } else if (shrunk) { - explodeEntry(pattern, shrunk); - return shrunk; - } - - return undefined; - } - - removePattern(pattern) { - const cache = this.cache; - if (!cache) { - return; - } - delete cache[pattern]; - } - - getLockfile(patterns) { - const lockfile = {}; - const seen = new Map(); - - // order by name so that lockfile manifest is assigned to the first dependency with this manifest - // the others that have the same remoteKey will just refer to the first - // ordering allows for consistency in lockfile when it is serialized - const sortedPatternsKeys = Object.keys(patterns).sort((_misc || _load_misc()).sortAlpha); - - for (var _iterator = sortedPatternsKeys, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) { - var _ref; - - if (_isArray) { - if (_i >= _iterator.length) break; - _ref = _iterator[_i++]; - } else { - _i = _iterator.next(); - if (_i.done) break; - _ref = _i.value; - } - - const pattern = _ref; - - const pkg = patterns[pattern]; - const remote = pkg._remote, - ref = pkg._reference; - - invariant(ref, 'Package is missing a reference'); - invariant(remote, 'Package is missing a remote'); - - const remoteKey = keyForRemote(remote); - const pkgName = getName(pattern); - - const seenKey = remoteKey ? `${remoteKey}#${pkgName}` : null; - const seenPattern = seenKey ? seen.get(seenKey) : null; - - if (seenPattern) { - // no point in duplicating it - lockfile[pattern] = seenPattern; - continue; - } - - const obj = implodeEntry(pattern, { - name: pkgName, - version: pkg.version, - uid: pkg._uid, - resolved: remote.resolved, - integrity: remote.integrity, - registry: remote.registry, - dependencies: pkg.dependencies, - peerDependencies: pkg.peerDependencies, - optionalDependencies: pkg.optionalDependencies, - permissions: ref.permissions, - prebuiltVariants: pkg.prebuiltVariants - }); - - lockfile[pattern] = obj; - - if (seenKey) { - seen.set(seenKey, obj); - } - } - - return lockfile; - } -} -exports.default = Lockfile; - -/***/ }), -/* 20 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -exports.__esModule = true; - -var _assign = __webpack_require__(559); - -var _assign2 = _interopRequireDefault(_assign); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -exports.default = _assign2.default || function (target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i]; - - for (var key in source) { - if (Object.prototype.hasOwnProperty.call(source, key)) { - target[key] = source[key]; - } - } - } - - return target; -}; - -/***/ }), -/* 21 */ -/***/ (function(module, exports, __webpack_require__) { - -var store = __webpack_require__(134)('wks'); -var uid = __webpack_require__(138); -var Symbol = __webpack_require__(17).Symbol; -var USE_SYMBOL = typeof Symbol == 'function'; - -var $exports = module.exports = function (name) { - return store[name] || (store[name] = - USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name)); -}; - -$exports.store = store; - - -/***/ }), -/* 22 */ -/***/ (function(module, exports) { - -exports = module.exports = SemVer; - -// The debug function is excluded entirely from the minified version. -/* nomin */ var debug; -/* nomin */ if (typeof process === 'object' && - /* nomin */ process.env && - /* nomin */ process.env.NODE_DEBUG && - /* nomin */ /\bsemver\b/i.test(process.env.NODE_DEBUG)) - /* nomin */ debug = function() { - /* nomin */ var args = Array.prototype.slice.call(arguments, 0); - /* nomin */ args.unshift('SEMVER'); - /* nomin */ console.log.apply(console, args); - /* nomin */ }; -/* nomin */ else - /* nomin */ debug = function() {}; - -// Note: this is the semver.org version of the spec that it implements -// Not necessarily the package version of this code. -exports.SEMVER_SPEC_VERSION = '2.0.0'; - -var MAX_LENGTH = 256; -var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || 9007199254740991; - -// Max safe segment length for coercion. -var MAX_SAFE_COMPONENT_LENGTH = 16; - -// The actual regexps go on exports.re -var re = exports.re = []; -var src = exports.src = []; -var R = 0; - -// The following Regular Expressions can be used for tokenizing, -// validating, and parsing SemVer version strings. - -// ## Numeric Identifier -// A single `0`, or a non-zero digit followed by zero or more digits. - -var NUMERICIDENTIFIER = R++; -src[NUMERICIDENTIFIER] = '0|[1-9]\\d*'; -var NUMERICIDENTIFIERLOOSE = R++; -src[NUMERICIDENTIFIERLOOSE] = '[0-9]+'; - - -// ## Non-numeric Identifier -// Zero or more digits, followed by a letter or hyphen, and then zero or -// more letters, digits, or hyphens. - -var NONNUMERICIDENTIFIER = R++; -src[NONNUMERICIDENTIFIER] = '\\d*[a-zA-Z-][a-zA-Z0-9-]*'; - - -// ## Main Version -// Three dot-separated numeric identifiers. - -var MAINVERSION = R++; -src[MAINVERSION] = '(' + src[NUMERICIDENTIFIER] + ')\\.' + - '(' + src[NUMERICIDENTIFIER] + ')\\.' + - '(' + src[NUMERICIDENTIFIER] + ')'; - -var MAINVERSIONLOOSE = R++; -src[MAINVERSIONLOOSE] = '(' + src[NUMERICIDENTIFIERLOOSE] + ')\\.' + - '(' + src[NUMERICIDENTIFIERLOOSE] + ')\\.' + - '(' + src[NUMERICIDENTIFIERLOOSE] + ')'; - -// ## Pre-release Version Identifier -// A numeric identifier, or a non-numeric identifier. - -var PRERELEASEIDENTIFIER = R++; -src[PRERELEASEIDENTIFIER] = '(?:' + src[NUMERICIDENTIFIER] + - '|' + src[NONNUMERICIDENTIFIER] + ')'; - -var PRERELEASEIDENTIFIERLOOSE = R++; -src[PRERELEASEIDENTIFIERLOOSE] = '(?:' + src[NUMERICIDENTIFIERLOOSE] + - '|' + src[NONNUMERICIDENTIFIER] + ')'; - - -// ## Pre-release Version -// Hyphen, followed by one or more dot-separated pre-release version -// identifiers. - -var PRERELEASE = R++; -src[PRERELEASE] = '(?:-(' + src[PRERELEASEIDENTIFIER] + - '(?:\\.' + src[PRERELEASEIDENTIFIER] + ')*))'; - -var PRERELEASELOOSE = R++; -src[PRERELEASELOOSE] = '(?:-?(' + src[PRERELEASEIDENTIFIERLOOSE] + - '(?:\\.' + src[PRERELEASEIDENTIFIERLOOSE] + ')*))'; - -// ## Build Metadata Identifier -// Any combination of digits, letters, or hyphens. - -var BUILDIDENTIFIER = R++; -src[BUILDIDENTIFIER] = '[0-9A-Za-z-]+'; - -// ## Build Metadata -// Plus sign, followed by one or more period-separated build metadata -// identifiers. - -var BUILD = R++; -src[BUILD] = '(?:\\+(' + src[BUILDIDENTIFIER] + - '(?:\\.' + src[BUILDIDENTIFIER] + ')*))'; - - -// ## Full Version String -// A main version, followed optionally by a pre-release version and -// build metadata. - -// Note that the only major, minor, patch, and pre-release sections of -// the version string are capturing groups. The build metadata is not a -// capturing group, because it should not ever be used in version -// comparison. - -var FULL = R++; -var FULLPLAIN = 'v?' + src[MAINVERSION] + - src[PRERELEASE] + '?' + - src[BUILD] + '?'; - -src[FULL] = '^' + FULLPLAIN + '$'; - -// like full, but allows v1.2.3 and =1.2.3, which people do sometimes. -// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty -// common in the npm registry. -var LOOSEPLAIN = '[v=\\s]*' + src[MAINVERSIONLOOSE] + - src[PRERELEASELOOSE] + '?' + - src[BUILD] + '?'; - -var LOOSE = R++; -src[LOOSE] = '^' + LOOSEPLAIN + '$'; - -var GTLT = R++; -src[GTLT] = '((?:<|>)?=?)'; - -// Something like "2.*" or "1.2.x". -// Note that "x.x" is a valid xRange identifer, meaning "any version" -// Only the first item is strictly required. -var XRANGEIDENTIFIERLOOSE = R++; -src[XRANGEIDENTIFIERLOOSE] = src[NUMERICIDENTIFIERLOOSE] + '|x|X|\\*'; -var XRANGEIDENTIFIER = R++; -src[XRANGEIDENTIFIER] = src[NUMERICIDENTIFIER] + '|x|X|\\*'; - -var XRANGEPLAIN = R++; -src[XRANGEPLAIN] = '[v=\\s]*(' + src[XRANGEIDENTIFIER] + ')' + - '(?:\\.(' + src[XRANGEIDENTIFIER] + ')' + - '(?:\\.(' + src[XRANGEIDENTIFIER] + ')' + - '(?:' + src[PRERELEASE] + ')?' + - src[BUILD] + '?' + - ')?)?'; - -var XRANGEPLAINLOOSE = R++; -src[XRANGEPLAINLOOSE] = '[v=\\s]*(' + src[XRANGEIDENTIFIERLOOSE] + ')' + - '(?:\\.(' + src[XRANGEIDENTIFIERLOOSE] + ')' + - '(?:\\.(' + src[XRANGEIDENTIFIERLOOSE] + ')' + - '(?:' + src[PRERELEASELOOSE] + ')?' + - src[BUILD] + '?' + - ')?)?'; - -var XRANGE = R++; -src[XRANGE] = '^' + src[GTLT] + '\\s*' + src[XRANGEPLAIN] + '$'; -var XRANGELOOSE = R++; -src[XRANGELOOSE] = '^' + src[GTLT] + '\\s*' + src[XRANGEPLAINLOOSE] + '$'; - -// Coercion. -// Extract anything that could conceivably be a part of a valid semver -var COERCE = R++; -src[COERCE] = '(?:^|[^\\d])' + - '(\\d{1,' + MAX_SAFE_COMPONENT_LENGTH + '})' + - '(?:\\.(\\d{1,' + MAX_SAFE_COMPONENT_LENGTH + '}))?' + - '(?:\\.(\\d{1,' + MAX_SAFE_COMPONENT_LENGTH + '}))?' + - '(?:$|[^\\d])'; - -// Tilde ranges. -// Meaning is "reasonably at or greater than" -var LONETILDE = R++; -src[LONETILDE] = '(?:~>?)'; - -var TILDETRIM = R++; -src[TILDETRIM] = '(\\s*)' + src[LONETILDE] + '\\s+'; -re[TILDETRIM] = new RegExp(src[TILDETRIM], 'g'); -var tildeTrimReplace = '$1~'; - -var TILDE = R++; -src[TILDE] = '^' + src[LONETILDE] + src[XRANGEPLAIN] + '$'; -var TILDELOOSE = R++; -src[TILDELOOSE] = '^' + src[LONETILDE] + src[XRANGEPLAINLOOSE] + '$'; - -// Caret ranges. -// Meaning is "at least and backwards compatible with" -var LONECARET = R++; -src[LONECARET] = '(?:\\^)'; - -var CARETTRIM = R++; -src[CARETTRIM] = '(\\s*)' + src[LONECARET] + '\\s+'; -re[CARETTRIM] = new RegExp(src[CARETTRIM], 'g'); -var caretTrimReplace = '$1^'; - -var CARET = R++; -src[CARET] = '^' + src[LONECARET] + src[XRANGEPLAIN] + '$'; -var CARETLOOSE = R++; -src[CARETLOOSE] = '^' + src[LONECARET] + src[XRANGEPLAINLOOSE] + '$'; - -// A simple gt/lt/eq thing, or just "" to indicate "any version" -var COMPARATORLOOSE = R++; -src[COMPARATORLOOSE] = '^' + src[GTLT] + '\\s*(' + LOOSEPLAIN + ')$|^$'; -var COMPARATOR = R++; -src[COMPARATOR] = '^' + src[GTLT] + '\\s*(' + FULLPLAIN + ')$|^$'; - - -// An expression to strip any whitespace between the gtlt and the thing -// it modifies, so that `> 1.2.3` ==> `>1.2.3` -var COMPARATORTRIM = R++; -src[COMPARATORTRIM] = '(\\s*)' + src[GTLT] + - '\\s*(' + LOOSEPLAIN + '|' + src[XRANGEPLAIN] + ')'; - -// this one has to use the /g flag -re[COMPARATORTRIM] = new RegExp(src[COMPARATORTRIM], 'g'); -var comparatorTrimReplace = '$1$2$3'; - - -// Something like `1.2.3 - 1.2.4` -// Note that these all use the loose form, because they'll be -// checked against either the strict or loose comparator form -// later. -var HYPHENRANGE = R++; -src[HYPHENRANGE] = '^\\s*(' + src[XRANGEPLAIN] + ')' + - '\\s+-\\s+' + - '(' + src[XRANGEPLAIN] + ')' + - '\\s*$'; - -var HYPHENRANGELOOSE = R++; -src[HYPHENRANGELOOSE] = '^\\s*(' + src[XRANGEPLAINLOOSE] + ')' + - '\\s+-\\s+' + - '(' + src[XRANGEPLAINLOOSE] + ')' + - '\\s*$'; - -// Star ranges basically just allow anything at all. -var STAR = R++; -src[STAR] = '(<|>)?=?\\s*\\*'; - -// Compile to actual regexp objects. -// All are flag-free, unless they were created above with a flag. -for (var i = 0; i < R; i++) { - debug(i, src[i]); - if (!re[i]) - re[i] = new RegExp(src[i]); -} - -exports.parse = parse; -function parse(version, loose) { - if (version instanceof SemVer) - return version; - - if (typeof version !== 'string') - return null; - - if (version.length > MAX_LENGTH) - return null; - - var r = loose ? re[LOOSE] : re[FULL]; - if (!r.test(version)) - return null; - - try { - return new SemVer(version, loose); - } catch (er) { - return null; - } -} - -exports.valid = valid; -function valid(version, loose) { - var v = parse(version, loose); - return v ? v.version : null; -} - - -exports.clean = clean; -function clean(version, loose) { - var s = parse(version.trim().replace(/^[=v]+/, ''), loose); - return s ? s.version : null; -} - -exports.SemVer = SemVer; - -function SemVer(version, loose) { - if (version instanceof SemVer) { - if (version.loose === loose) - return version; - else - version = version.version; - } else if (typeof version !== 'string') { - throw new TypeError('Invalid Version: ' + version); - } - - if (version.length > MAX_LENGTH) - throw new TypeError('version is longer than ' + MAX_LENGTH + ' characters') - - if (!(this instanceof SemVer)) - return new SemVer(version, loose); - - debug('SemVer', version, loose); - this.loose = loose; - var m = version.trim().match(loose ? re[LOOSE] : re[FULL]); - - if (!m) - throw new TypeError('Invalid Version: ' + version); - - this.raw = version; - - // these are actually numbers - this.major = +m[1]; - this.minor = +m[2]; - this.patch = +m[3]; - - if (this.major > MAX_SAFE_INTEGER || this.major < 0) - throw new TypeError('Invalid major version') - - if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) - throw new TypeError('Invalid minor version') - - if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) - throw new TypeError('Invalid patch version') - - // numberify any prerelease numeric ids - if (!m[4]) - this.prerelease = []; - else - this.prerelease = m[4].split('.').map(function(id) { - if (/^[0-9]+$/.test(id)) { - var num = +id; - if (num >= 0 && num < MAX_SAFE_INTEGER) - return num; - } - return id; - }); - - this.build = m[5] ? m[5].split('.') : []; - this.format(); -} - -SemVer.prototype.format = function() { - this.version = this.major + '.' + this.minor + '.' + this.patch; - if (this.prerelease.length) - this.version += '-' + this.prerelease.join('.'); - return this.version; -}; - -SemVer.prototype.toString = function() { - return this.version; -}; - -SemVer.prototype.compare = function(other) { - debug('SemVer.compare', this.version, this.loose, other); - if (!(other instanceof SemVer)) - other = new SemVer(other, this.loose); - - return this.compareMain(other) || this.comparePre(other); -}; - -SemVer.prototype.compareMain = function(other) { - if (!(other instanceof SemVer)) - other = new SemVer(other, this.loose); - - return compareIdentifiers(this.major, other.major) || - compareIdentifiers(this.minor, other.minor) || - compareIdentifiers(this.patch, other.patch); -}; - -SemVer.prototype.comparePre = function(other) { - if (!(other instanceof SemVer)) - other = new SemVer(other, this.loose); - - // NOT having a prerelease is > having one - if (this.prerelease.length && !other.prerelease.length) - return -1; - else if (!this.prerelease.length && other.prerelease.length) - return 1; - else if (!this.prerelease.length && !other.prerelease.length) - return 0; - - var i = 0; - do { - var a = this.prerelease[i]; - var b = other.prerelease[i]; - debug('prerelease compare', i, a, b); - if (a === undefined && b === undefined) - return 0; - else if (b === undefined) - return 1; - else if (a === undefined) - return -1; - else if (a === b) - continue; - else - return compareIdentifiers(a, b); - } while (++i); -}; - -// preminor will bump the version up to the next minor release, and immediately -// down to pre-release. premajor and prepatch work the same way. -SemVer.prototype.inc = function(release, identifier) { - switch (release) { - case 'premajor': - this.prerelease.length = 0; - this.patch = 0; - this.minor = 0; - this.major++; - this.inc('pre', identifier); - break; - case 'preminor': - this.prerelease.length = 0; - this.patch = 0; - this.minor++; - this.inc('pre', identifier); - break; - case 'prepatch': - // If this is already a prerelease, it will bump to the next version - // drop any prereleases that might already exist, since they are not - // relevant at this point. - this.prerelease.length = 0; - this.inc('patch', identifier); - this.inc('pre', identifier); - break; - // If the input is a non-prerelease version, this acts the same as - // prepatch. - case 'prerelease': - if (this.prerelease.length === 0) - this.inc('patch', identifier); - this.inc('pre', identifier); - break; - - case 'major': - // If this is a pre-major version, bump up to the same major version. - // Otherwise increment major. - // 1.0.0-5 bumps to 1.0.0 - // 1.1.0 bumps to 2.0.0 - if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) - this.major++; - this.minor = 0; - this.patch = 0; - this.prerelease = []; - break; - case 'minor': - // If this is a pre-minor version, bump up to the same minor version. - // Otherwise increment minor. - // 1.2.0-5 bumps to 1.2.0 - // 1.2.1 bumps to 1.3.0 - if (this.patch !== 0 || this.prerelease.length === 0) - this.minor++; - this.patch = 0; - this.prerelease = []; - break; - case 'patch': - // If this is not a pre-release version, it will increment the patch. - // If it is a pre-release it will bump up to the same patch version. - // 1.2.0-5 patches to 1.2.0 - // 1.2.0 patches to 1.2.1 - if (this.prerelease.length === 0) - this.patch++; - this.prerelease = []; - break; - // This probably shouldn't be used publicly. - // 1.0.0 "pre" would become 1.0.0-0 which is the wrong direction. - case 'pre': - if (this.prerelease.length === 0) - this.prerelease = [0]; - else { - var i = this.prerelease.length; - while (--i >= 0) { - if (typeof this.prerelease[i] === 'number') { - this.prerelease[i]++; - i = -2; - } - } - if (i === -1) // didn't increment anything - this.prerelease.push(0); - } - if (identifier) { - // 1.2.0-beta.1 bumps to 1.2.0-beta.2, - // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0 - if (this.prerelease[0] === identifier) { - if (isNaN(this.prerelease[1])) - this.prerelease = [identifier, 0]; - } else - this.prerelease = [identifier, 0]; - } - break; - - default: - throw new Error('invalid increment argument: ' + release); - } - this.format(); - this.raw = this.version; - return this; -}; - -exports.inc = inc; -function inc(version, release, loose, identifier) { - if (typeof(loose) === 'string') { - identifier = loose; - loose = undefined; - } - - try { - return new SemVer(version, loose).inc(release, identifier).version; - } catch (er) { - return null; - } -} - -exports.diff = diff; -function diff(version1, version2) { - if (eq(version1, version2)) { - return null; - } else { - var v1 = parse(version1); - var v2 = parse(version2); - if (v1.prerelease.length || v2.prerelease.length) { - for (var key in v1) { - if (key === 'major' || key === 'minor' || key === 'patch') { - if (v1[key] !== v2[key]) { - return 'pre'+key; - } - } - } - return 'prerelease'; - } - for (var key in v1) { - if (key === 'major' || key === 'minor' || key === 'patch') { - if (v1[key] !== v2[key]) { - return key; - } - } - } - } -} - -exports.compareIdentifiers = compareIdentifiers; - -var numeric = /^[0-9]+$/; -function compareIdentifiers(a, b) { - var anum = numeric.test(a); - var bnum = numeric.test(b); - - if (anum && bnum) { - a = +a; - b = +b; - } - - return (anum && !bnum) ? -1 : - (bnum && !anum) ? 1 : - a < b ? -1 : - a > b ? 1 : - 0; -} - -exports.rcompareIdentifiers = rcompareIdentifiers; -function rcompareIdentifiers(a, b) { - return compareIdentifiers(b, a); -} - -exports.major = major; -function major(a, loose) { - return new SemVer(a, loose).major; -} - -exports.minor = minor; -function minor(a, loose) { - return new SemVer(a, loose).minor; -} - -exports.patch = patch; -function patch(a, loose) { - return new SemVer(a, loose).patch; -} - -exports.compare = compare; -function compare(a, b, loose) { - return new SemVer(a, loose).compare(new SemVer(b, loose)); -} - -exports.compareLoose = compareLoose; -function compareLoose(a, b) { - return compare(a, b, true); -} - -exports.rcompare = rcompare; -function rcompare(a, b, loose) { - return compare(b, a, loose); -} - -exports.sort = sort; -function sort(list, loose) { - return list.sort(function(a, b) { - return exports.compare(a, b, loose); - }); -} - -exports.rsort = rsort; -function rsort(list, loose) { - return list.sort(function(a, b) { - return exports.rcompare(a, b, loose); - }); -} - -exports.gt = gt; -function gt(a, b, loose) { - return compare(a, b, loose) > 0; -} - -exports.lt = lt; -function lt(a, b, loose) { - return compare(a, b, loose) < 0; -} - -exports.eq = eq; -function eq(a, b, loose) { - return compare(a, b, loose) === 0; -} - -exports.neq = neq; -function neq(a, b, loose) { - return compare(a, b, loose) !== 0; -} - -exports.gte = gte; -function gte(a, b, loose) { - return compare(a, b, loose) >= 0; -} - -exports.lte = lte; -function lte(a, b, loose) { - return compare(a, b, loose) <= 0; -} - -exports.cmp = cmp; -function cmp(a, op, b, loose) { - var ret; - switch (op) { - case '===': - if (typeof a === 'object') a = a.version; - if (typeof b === 'object') b = b.version; - ret = a === b; - break; - case '!==': - if (typeof a === 'object') a = a.version; - if (typeof b === 'object') b = b.version; - ret = a !== b; - break; - case '': case '=': case '==': ret = eq(a, b, loose); break; - case '!=': ret = neq(a, b, loose); break; - case '>': ret = gt(a, b, loose); break; - case '>=': ret = gte(a, b, loose); break; - case '<': ret = lt(a, b, loose); break; - case '<=': ret = lte(a, b, loose); break; - default: throw new TypeError('Invalid operator: ' + op); - } - return ret; -} - -exports.Comparator = Comparator; -function Comparator(comp, loose) { - if (comp instanceof Comparator) { - if (comp.loose === loose) - return comp; - else - comp = comp.value; - } - - if (!(this instanceof Comparator)) - return new Comparator(comp, loose); - - debug('comparator', comp, loose); - this.loose = loose; - this.parse(comp); - - if (this.semver === ANY) - this.value = ''; - else - this.value = this.operator + this.semver.version; - - debug('comp', this); -} - -var ANY = {}; -Comparator.prototype.parse = function(comp) { - var r = this.loose ? re[COMPARATORLOOSE] : re[COMPARATOR]; - var m = comp.match(r); - - if (!m) - throw new TypeError('Invalid comparator: ' + comp); - - this.operator = m[1]; - if (this.operator === '=') - this.operator = ''; - - // if it literally is just '>' or '' then allow anything. - if (!m[2]) - this.semver = ANY; - else - this.semver = new SemVer(m[2], this.loose); -}; - -Comparator.prototype.toString = function() { - return this.value; -}; - -Comparator.prototype.test = function(version) { - debug('Comparator.test', version, this.loose); - - if (this.semver === ANY) - return true; - - if (typeof version === 'string') - version = new SemVer(version, this.loose); - - return cmp(version, this.operator, this.semver, this.loose); -}; - -Comparator.prototype.intersects = function(comp, loose) { - if (!(comp instanceof Comparator)) { - throw new TypeError('a Comparator is required'); - } - - var rangeTmp; - - if (this.operator === '') { - rangeTmp = new Range(comp.value, loose); - return satisfies(this.value, rangeTmp, loose); - } else if (comp.operator === '') { - rangeTmp = new Range(this.value, loose); - return satisfies(comp.semver, rangeTmp, loose); - } - - var sameDirectionIncreasing = - (this.operator === '>=' || this.operator === '>') && - (comp.operator === '>=' || comp.operator === '>'); - var sameDirectionDecreasing = - (this.operator === '<=' || this.operator === '<') && - (comp.operator === '<=' || comp.operator === '<'); - var sameSemVer = this.semver.version === comp.semver.version; - var differentDirectionsInclusive = - (this.operator === '>=' || this.operator === '<=') && - (comp.operator === '>=' || comp.operator === '<='); - var oppositeDirectionsLessThan = - cmp(this.semver, '<', comp.semver, loose) && - ((this.operator === '>=' || this.operator === '>') && - (comp.operator === '<=' || comp.operator === '<')); - var oppositeDirectionsGreaterThan = - cmp(this.semver, '>', comp.semver, loose) && - ((this.operator === '<=' || this.operator === '<') && - (comp.operator === '>=' || comp.operator === '>')); - - return sameDirectionIncreasing || sameDirectionDecreasing || - (sameSemVer && differentDirectionsInclusive) || - oppositeDirectionsLessThan || oppositeDirectionsGreaterThan; -}; - - -exports.Range = Range; -function Range(range, loose) { - if (range instanceof Range) { - if (range.loose === loose) { - return range; - } else { - return new Range(range.raw, loose); - } - } - - if (range instanceof Comparator) { - return new Range(range.value, loose); - } - - if (!(this instanceof Range)) - return new Range(range, loose); - - this.loose = loose; - - // First, split based on boolean or || - this.raw = range; - this.set = range.split(/\s*\|\|\s*/).map(function(range) { - return this.parseRange(range.trim()); - }, this).filter(function(c) { - // throw out any that are not relevant for whatever reason - return c.length; - }); - - if (!this.set.length) { - throw new TypeError('Invalid SemVer Range: ' + range); - } - - this.format(); -} - -Range.prototype.format = function() { - this.range = this.set.map(function(comps) { - return comps.join(' ').trim(); - }).join('||').trim(); - return this.range; -}; - -Range.prototype.toString = function() { - return this.range; -}; - -Range.prototype.parseRange = function(range) { - var loose = this.loose; - range = range.trim(); - debug('range', range, loose); - // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4` - var hr = loose ? re[HYPHENRANGELOOSE] : re[HYPHENRANGE]; - range = range.replace(hr, hyphenReplace); - debug('hyphen replace', range); - // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5` - range = range.replace(re[COMPARATORTRIM], comparatorTrimReplace); - debug('comparator trim', range, re[COMPARATORTRIM]); - - // `~ 1.2.3` => `~1.2.3` - range = range.replace(re[TILDETRIM], tildeTrimReplace); - - // `^ 1.2.3` => `^1.2.3` - range = range.replace(re[CARETTRIM], caretTrimReplace); - - // normalize spaces - range = range.split(/\s+/).join(' '); - - // At this point, the range is completely trimmed and - // ready to be split into comparators. - - var compRe = loose ? re[COMPARATORLOOSE] : re[COMPARATOR]; - var set = range.split(' ').map(function(comp) { - return parseComparator(comp, loose); - }).join(' ').split(/\s+/); - if (this.loose) { - // in loose mode, throw out any that are not valid comparators - set = set.filter(function(comp) { - return !!comp.match(compRe); - }); - } - set = set.map(function(comp) { - return new Comparator(comp, loose); - }); - - return set; -}; - -Range.prototype.intersects = function(range, loose) { - if (!(range instanceof Range)) { - throw new TypeError('a Range is required'); - } - - return this.set.some(function(thisComparators) { - return thisComparators.every(function(thisComparator) { - return range.set.some(function(rangeComparators) { - return rangeComparators.every(function(rangeComparator) { - return thisComparator.intersects(rangeComparator, loose); - }); - }); - }); - }); -}; - -// Mostly just for testing and legacy API reasons -exports.toComparators = toComparators; -function toComparators(range, loose) { - return new Range(range, loose).set.map(function(comp) { - return comp.map(function(c) { - return c.value; - }).join(' ').trim().split(' '); - }); -} - -// comprised of xranges, tildes, stars, and gtlt's at this point. -// already replaced the hyphen ranges -// turn into a set of JUST comparators. -function parseComparator(comp, loose) { - debug('comp', comp); - comp = replaceCarets(comp, loose); - debug('caret', comp); - comp = replaceTildes(comp, loose); - debug('tildes', comp); - comp = replaceXRanges(comp, loose); - debug('xrange', comp); - comp = replaceStars(comp, loose); - debug('stars', comp); - return comp; -} - -function isX(id) { - return !id || id.toLowerCase() === 'x' || id === '*'; -} - -// ~, ~> --> * (any, kinda silly) -// ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0 -// ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0 -// ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0 -// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0 -// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0 -function replaceTildes(comp, loose) { - return comp.trim().split(/\s+/).map(function(comp) { - return replaceTilde(comp, loose); - }).join(' '); -} - -function replaceTilde(comp, loose) { - var r = loose ? re[TILDELOOSE] : re[TILDE]; - return comp.replace(r, function(_, M, m, p, pr) { - debug('tilde', comp, _, M, m, p, pr); - var ret; - - if (isX(M)) - ret = ''; - else if (isX(m)) - ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0'; - else if (isX(p)) - // ~1.2 == >=1.2.0 <1.3.0 - ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0'; - else if (pr) { - debug('replaceTilde pr', pr); - if (pr.charAt(0) !== '-') - pr = '-' + pr; - ret = '>=' + M + '.' + m + '.' + p + pr + - ' <' + M + '.' + (+m + 1) + '.0'; - } else - // ~1.2.3 == >=1.2.3 <1.3.0 - ret = '>=' + M + '.' + m + '.' + p + - ' <' + M + '.' + (+m + 1) + '.0'; - - debug('tilde return', ret); - return ret; - }); -} - -// ^ --> * (any, kinda silly) -// ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0 -// ^2.0, ^2.0.x --> >=2.0.0 <3.0.0 -// ^1.2, ^1.2.x --> >=1.2.0 <2.0.0 -// ^1.2.3 --> >=1.2.3 <2.0.0 -// ^1.2.0 --> >=1.2.0 <2.0.0 -function replaceCarets(comp, loose) { - return comp.trim().split(/\s+/).map(function(comp) { - return replaceCaret(comp, loose); - }).join(' '); -} - -function replaceCaret(comp, loose) { - debug('caret', comp, loose); - var r = loose ? re[CARETLOOSE] : re[CARET]; - return comp.replace(r, function(_, M, m, p, pr) { - debug('caret', comp, _, M, m, p, pr); - var ret; - - if (isX(M)) - ret = ''; - else if (isX(m)) - ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0'; - else if (isX(p)) { - if (M === '0') - ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0'; - else - ret = '>=' + M + '.' + m + '.0 <' + (+M + 1) + '.0.0'; - } else if (pr) { - debug('replaceCaret pr', pr); - if (pr.charAt(0) !== '-') - pr = '-' + pr; - if (M === '0') { - if (m === '0') - ret = '>=' + M + '.' + m + '.' + p + pr + - ' <' + M + '.' + m + '.' + (+p + 1); - else - ret = '>=' + M + '.' + m + '.' + p + pr + - ' <' + M + '.' + (+m + 1) + '.0'; - } else - ret = '>=' + M + '.' + m + '.' + p + pr + - ' <' + (+M + 1) + '.0.0'; - } else { - debug('no pr'); - if (M === '0') { - if (m === '0') - ret = '>=' + M + '.' + m + '.' + p + - ' <' + M + '.' + m + '.' + (+p + 1); - else - ret = '>=' + M + '.' + m + '.' + p + - ' <' + M + '.' + (+m + 1) + '.0'; - } else - ret = '>=' + M + '.' + m + '.' + p + - ' <' + (+M + 1) + '.0.0'; - } - - debug('caret return', ret); - return ret; - }); -} - -function replaceXRanges(comp, loose) { - debug('replaceXRanges', comp, loose); - return comp.split(/\s+/).map(function(comp) { - return replaceXRange(comp, loose); - }).join(' '); -} - -function replaceXRange(comp, loose) { - comp = comp.trim(); - var r = loose ? re[XRANGELOOSE] : re[XRANGE]; - return comp.replace(r, function(ret, gtlt, M, m, p, pr) { - debug('xRange', comp, ret, gtlt, M, m, p, pr); - var xM = isX(M); - var xm = xM || isX(m); - var xp = xm || isX(p); - var anyX = xp; - - if (gtlt === '=' && anyX) - gtlt = ''; - - if (xM) { - if (gtlt === '>' || gtlt === '<') { - // nothing is allowed - ret = '<0.0.0'; - } else { - // nothing is forbidden - ret = '*'; - } - } else if (gtlt && anyX) { - // replace X with 0 - if (xm) - m = 0; - if (xp) - p = 0; - - if (gtlt === '>') { - // >1 => >=2.0.0 - // >1.2 => >=1.3.0 - // >1.2.3 => >= 1.2.4 - gtlt = '>='; - if (xm) { - M = +M + 1; - m = 0; - p = 0; - } else if (xp) { - m = +m + 1; - p = 0; - } - } else if (gtlt === '<=') { - // <=0.7.x is actually <0.8.0, since any 0.7.x should - // pass. Similarly, <=7.x is actually <8.0.0, etc. - gtlt = '<'; - if (xm) - M = +M + 1; - else - m = +m + 1; - } - - ret = gtlt + M + '.' + m + '.' + p; - } else if (xm) { - ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0'; - } else if (xp) { - ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0'; - } - - debug('xRange return', ret); - - return ret; - }); -} - -// Because * is AND-ed with everything else in the comparator, -// and '' means "any version", just remove the *s entirely. -function replaceStars(comp, loose) { - debug('replaceStars', comp, loose); - // Looseness is ignored here. star is always as loose as it gets! - return comp.trim().replace(re[STAR], ''); -} - -// This function is passed to string.replace(re[HYPHENRANGE]) -// M, m, patch, prerelease, build -// 1.2 - 3.4.5 => >=1.2.0 <=3.4.5 -// 1.2.3 - 3.4 => >=1.2.0 <3.5.0 Any 3.4.x will do -// 1.2 - 3.4 => >=1.2.0 <3.5.0 -function hyphenReplace($0, - from, fM, fm, fp, fpr, fb, - to, tM, tm, tp, tpr, tb) { - - if (isX(fM)) - from = ''; - else if (isX(fm)) - from = '>=' + fM + '.0.0'; - else if (isX(fp)) - from = '>=' + fM + '.' + fm + '.0'; - else - from = '>=' + from; - - if (isX(tM)) - to = ''; - else if (isX(tm)) - to = '<' + (+tM + 1) + '.0.0'; - else if (isX(tp)) - to = '<' + tM + '.' + (+tm + 1) + '.0'; - else if (tpr) - to = '<=' + tM + '.' + tm + '.' + tp + '-' + tpr; - else - to = '<=' + to; - - return (from + ' ' + to).trim(); -} - - -// if ANY of the sets match ALL of its comparators, then pass -Range.prototype.test = function(version) { - if (!version) - return false; - - if (typeof version === 'string') - version = new SemVer(version, this.loose); - - for (var i = 0; i < this.set.length; i++) { - if (testSet(this.set[i], version)) - return true; - } - return false; -}; - -function testSet(set, version) { - for (var i = 0; i < set.length; i++) { - if (!set[i].test(version)) - return false; - } - - if (version.prerelease.length) { - // Find the set of versions that are allowed to have prereleases - // For example, ^1.2.3-pr.1 desugars to >=1.2.3-pr.1 <2.0.0 - // That should allow `1.2.3-pr.2` to pass. - // However, `1.2.4-alpha.notready` should NOT be allowed, - // even though it's within the range set by the comparators. - for (var i = 0; i < set.length; i++) { - debug(set[i].semver); - if (set[i].semver === ANY) - continue; - - if (set[i].semver.prerelease.length > 0) { - var allowed = set[i].semver; - if (allowed.major === version.major && - allowed.minor === version.minor && - allowed.patch === version.patch) - return true; - } - } - - // Version has a -pre, but it's not one of the ones we like. - return false; - } - - return true; -} - -exports.satisfies = satisfies; -function satisfies(version, range, loose) { - try { - range = new Range(range, loose); - } catch (er) { - return false; - } - return range.test(version); -} - -exports.maxSatisfying = maxSatisfying; -function maxSatisfying(versions, range, loose) { - var max = null; - var maxSV = null; - try { - var rangeObj = new Range(range, loose); - } catch (er) { - return null; - } - versions.forEach(function (v) { - if (rangeObj.test(v)) { // satisfies(v, range, loose) - if (!max || maxSV.compare(v) === -1) { // compare(max, v, true) - max = v; - maxSV = new SemVer(max, loose); - } - } - }) - return max; -} - -exports.minSatisfying = minSatisfying; -function minSatisfying(versions, range, loose) { - var min = null; - var minSV = null; - try { - var rangeObj = new Range(range, loose); - } catch (er) { - return null; - } - versions.forEach(function (v) { - if (rangeObj.test(v)) { // satisfies(v, range, loose) - if (!min || minSV.compare(v) === 1) { // compare(min, v, true) - min = v; - minSV = new SemVer(min, loose); - } - } - }) - return min; -} - -exports.validRange = validRange; -function validRange(range, loose) { - try { - // Return '*' instead of '' so that truthiness works. - // This will throw if it's invalid anyway - return new Range(range, loose).range || '*'; - } catch (er) { - return null; - } -} - -// Determine if version is less than all the versions possible in the range -exports.ltr = ltr; -function ltr(version, range, loose) { - return outside(version, range, '<', loose); -} - -// Determine if version is greater than all the versions possible in the range. -exports.gtr = gtr; -function gtr(version, range, loose) { - return outside(version, range, '>', loose); -} - -exports.outside = outside; -function outside(version, range, hilo, loose) { - version = new SemVer(version, loose); - range = new Range(range, loose); - - var gtfn, ltefn, ltfn, comp, ecomp; - switch (hilo) { - case '>': - gtfn = gt; - ltefn = lte; - ltfn = lt; - comp = '>'; - ecomp = '>='; - break; - case '<': - gtfn = lt; - ltefn = gte; - ltfn = gt; - comp = '<'; - ecomp = '<='; - break; - default: - throw new TypeError('Must provide a hilo val of "<" or ">"'); - } - - // If it satisifes the range it is not outside - if (satisfies(version, range, loose)) { - return false; - } - - // From now on, variable terms are as if we're in "gtr" mode. - // but note that everything is flipped for the "ltr" function. - - for (var i = 0; i < range.set.length; ++i) { - var comparators = range.set[i]; - - var high = null; - var low = null; - - comparators.forEach(function(comparator) { - if (comparator.semver === ANY) { - comparator = new Comparator('>=0.0.0') - } - high = high || comparator; - low = low || comparator; - if (gtfn(comparator.semver, high.semver, loose)) { - high = comparator; - } else if (ltfn(comparator.semver, low.semver, loose)) { - low = comparator; - } - }); - - // If the edge version comparator has a operator then our version - // isn't outside it - if (high.operator === comp || high.operator === ecomp) { - return false; - } - - // If the lowest version comparator has an operator and our version - // is less than it then it isn't higher than the range - if ((!low.operator || low.operator === comp) && - ltefn(version, low.semver)) { - return false; - } else if (low.operator === ecomp && ltfn(version, low.semver)) { - return false; - } - } - return true; -} - -exports.prerelease = prerelease; -function prerelease(version, loose) { - var parsed = parse(version, loose); - return (parsed && parsed.prerelease.length) ? parsed.prerelease : null; -} - -exports.intersects = intersects; -function intersects(r1, r2, loose) { - r1 = new Range(r1, loose) - r2 = new Range(r2, loose) - return r1.intersects(r2) -} - -exports.coerce = coerce; -function coerce(version) { - if (version instanceof SemVer) - return version; - - if (typeof version !== 'string') - return null; - - var match = version.match(re[COERCE]); - - if (match == null) - return null; - - return parse((match[1] || '0') + '.' + (match[2] || '0') + '.' + (match[3] || '0')); -} - - -/***/ }), -/* 23 */ -/***/ (function(module, exports) { - -module.exports = require("stream"); - -/***/ }), -/* 24 */ -/***/ (function(module, exports) { - -module.exports = require("url"); - -/***/ }), -/* 25 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Subscription; }); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_isArray__ = __webpack_require__(41); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__util_isObject__ = __webpack_require__(444); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util_isFunction__ = __webpack_require__(155); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util_tryCatch__ = __webpack_require__(57); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__util_errorObject__ = __webpack_require__(48); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__util_UnsubscriptionError__ = __webpack_require__(441); -/** PURE_IMPORTS_START _util_isArray,_util_isObject,_util_isFunction,_util_tryCatch,_util_errorObject,_util_UnsubscriptionError PURE_IMPORTS_END */ - - - - - - -var Subscription = /*@__PURE__*/ (function () { - function Subscription(unsubscribe) { - this.closed = false; - this._parent = null; - this._parents = null; - this._subscriptions = null; - if (unsubscribe) { - this._unsubscribe = unsubscribe; - } - } - Subscription.prototype.unsubscribe = function () { - var hasErrors = false; - var errors; - if (this.closed) { - return; - } - var _a = this, _parent = _a._parent, _parents = _a._parents, _unsubscribe = _a._unsubscribe, _subscriptions = _a._subscriptions; - this.closed = true; - this._parent = null; - this._parents = null; - this._subscriptions = null; - var index = -1; - var len = _parents ? _parents.length : 0; - while (_parent) { - _parent.remove(this); - _parent = ++index < len && _parents[index] || null; - } - if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util_isFunction__["a" /* isFunction */])(_unsubscribe)) { - var trial = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__util_tryCatch__["a" /* tryCatch */])(_unsubscribe).call(this); - if (trial === __WEBPACK_IMPORTED_MODULE_4__util_errorObject__["a" /* errorObject */]) { - hasErrors = true; - errors = errors || (__WEBPACK_IMPORTED_MODULE_4__util_errorObject__["a" /* errorObject */].e instanceof __WEBPACK_IMPORTED_MODULE_5__util_UnsubscriptionError__["a" /* UnsubscriptionError */] ? - flattenUnsubscriptionErrors(__WEBPACK_IMPORTED_MODULE_4__util_errorObject__["a" /* errorObject */].e.errors) : [__WEBPACK_IMPORTED_MODULE_4__util_errorObject__["a" /* errorObject */].e]); - } - } - if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__util_isArray__["a" /* isArray */])(_subscriptions)) { - index = -1; - len = _subscriptions.length; - while (++index < len) { - var sub = _subscriptions[index]; - if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__util_isObject__["a" /* isObject */])(sub)) { - var trial = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__util_tryCatch__["a" /* tryCatch */])(sub.unsubscribe).call(sub); - if (trial === __WEBPACK_IMPORTED_MODULE_4__util_errorObject__["a" /* errorObject */]) { - hasErrors = true; - errors = errors || []; - var err = __WEBPACK_IMPORTED_MODULE_4__util_errorObject__["a" /* errorObject */].e; - if (err instanceof __WEBPACK_IMPORTED_MODULE_5__util_UnsubscriptionError__["a" /* UnsubscriptionError */]) { - errors = errors.concat(flattenUnsubscriptionErrors(err.errors)); - } - else { - errors.push(err); - } - } - } - } - } - if (hasErrors) { - throw new __WEBPACK_IMPORTED_MODULE_5__util_UnsubscriptionError__["a" /* UnsubscriptionError */](errors); - } - }; - Subscription.prototype.add = function (teardown) { - if (!teardown || (teardown === Subscription.EMPTY)) { - return Subscription.EMPTY; - } - if (teardown === this) { - return this; - } - var subscription = teardown; - switch (typeof teardown) { - case 'function': - subscription = new Subscription(teardown); - case 'object': - if (subscription.closed || typeof subscription.unsubscribe !== 'function') { - return subscription; - } - else if (this.closed) { - subscription.unsubscribe(); - return subscription; - } - else if (typeof subscription._addParent !== 'function') { - var tmp = subscription; - subscription = new Subscription(); - subscription._subscriptions = [tmp]; - } - break; - default: - throw new Error('unrecognized teardown ' + teardown + ' added to Subscription.'); - } - var subscriptions = this._subscriptions || (this._subscriptions = []); - subscriptions.push(subscription); - subscription._addParent(this); - return subscription; - }; - Subscription.prototype.remove = function (subscription) { - var subscriptions = this._subscriptions; - if (subscriptions) { - var subscriptionIndex = subscriptions.indexOf(subscription); - if (subscriptionIndex !== -1) { - subscriptions.splice(subscriptionIndex, 1); - } - } - }; - Subscription.prototype._addParent = function (parent) { - var _a = this, _parent = _a._parent, _parents = _a._parents; - if (!_parent || _parent === parent) { - this._parent = parent; - } - else if (!_parents) { - this._parents = [parent]; - } - else if (_parents.indexOf(parent) === -1) { - _parents.push(parent); - } - }; - Subscription.EMPTY = (function (empty) { - empty.closed = true; - return empty; - }(new Subscription())); - return Subscription; -}()); - -function flattenUnsubscriptionErrors(errors) { - return errors.reduce(function (errs, err) { return errs.concat((err instanceof __WEBPACK_IMPORTED_MODULE_5__util_UnsubscriptionError__["a" /* UnsubscriptionError */]) ? err.errors : err); }, []); -} -//# sourceMappingURL=Subscription.js.map - - -/***/ }), -/* 26 */ -/***/ (function(module, exports, __webpack_require__) { - -// Copyright 2015 Joyent, Inc. - -module.exports = { - bufferSplit: bufferSplit, - addRSAMissing: addRSAMissing, - calculateDSAPublic: calculateDSAPublic, - calculateED25519Public: calculateED25519Public, - calculateX25519Public: calculateX25519Public, - mpNormalize: mpNormalize, - mpDenormalize: mpDenormalize, - ecNormalize: ecNormalize, - countZeros: countZeros, - assertCompatible: assertCompatible, - isCompatible: isCompatible, - opensslKeyDeriv: opensslKeyDeriv, - opensshCipherInfo: opensshCipherInfo, - publicFromPrivateECDSA: publicFromPrivateECDSA, - zeroPadToLength: zeroPadToLength, - writeBitString: writeBitString, - readBitString: readBitString -}; - -var assert = __webpack_require__(16); -var Buffer = __webpack_require__(15).Buffer; -var PrivateKey = __webpack_require__(33); -var Key = __webpack_require__(28); -var crypto = __webpack_require__(11); -var algs = __webpack_require__(32); -var asn1 = __webpack_require__(66); - -var ec, jsbn; -var nacl; - -var MAX_CLASS_DEPTH = 3; - -function isCompatible(obj, klass, needVer) { - if (obj === null || typeof (obj) !== 'object') - return (false); - if (needVer === undefined) - needVer = klass.prototype._sshpkApiVersion; - if (obj instanceof klass && - klass.prototype._sshpkApiVersion[0] == needVer[0]) - return (true); - var proto = Object.getPrototypeOf(obj); - var depth = 0; - while (proto.constructor.name !== klass.name) { - proto = Object.getPrototypeOf(proto); - if (!proto || ++depth > MAX_CLASS_DEPTH) - return (false); - } - if (proto.constructor.name !== klass.name) - return (false); - var ver = proto._sshpkApiVersion; - if (ver === undefined) - ver = klass._oldVersionDetect(obj); - if (ver[0] != needVer[0] || ver[1] < needVer[1]) - return (false); - return (true); -} - -function assertCompatible(obj, klass, needVer, name) { - if (name === undefined) - name = 'object'; - assert.ok(obj, name + ' must not be null'); - assert.object(obj, name + ' must be an object'); - if (needVer === undefined) - needVer = klass.prototype._sshpkApiVersion; - if (obj instanceof klass && - klass.prototype._sshpkApiVersion[0] == needVer[0]) - return; - var proto = Object.getPrototypeOf(obj); - var depth = 0; - while (proto.constructor.name !== klass.name) { - proto = Object.getPrototypeOf(proto); - assert.ok(proto && ++depth <= MAX_CLASS_DEPTH, - name + ' must be a ' + klass.name + ' instance'); - } - assert.strictEqual(proto.constructor.name, klass.name, - name + ' must be a ' + klass.name + ' instance'); - var ver = proto._sshpkApiVersion; - if (ver === undefined) - ver = klass._oldVersionDetect(obj); - assert.ok(ver[0] == needVer[0] && ver[1] >= needVer[1], - name + ' must be compatible with ' + klass.name + ' klass ' + - 'version ' + needVer[0] + '.' + needVer[1]); -} - -var CIPHER_LEN = { - 'des-ede3-cbc': { key: 7, iv: 8 }, - 'aes-128-cbc': { key: 16, iv: 16 } -}; -var PKCS5_SALT_LEN = 8; - -function opensslKeyDeriv(cipher, salt, passphrase, count) { - assert.buffer(salt, 'salt'); - assert.buffer(passphrase, 'passphrase'); - assert.number(count, 'iteration count'); - - var clen = CIPHER_LEN[cipher]; - assert.object(clen, 'supported cipher'); - - salt = salt.slice(0, PKCS5_SALT_LEN); - - var D, D_prev, bufs; - var material = Buffer.alloc(0); - while (material.length < clen.key + clen.iv) { - bufs = []; - if (D_prev) - bufs.push(D_prev); - bufs.push(passphrase); - bufs.push(salt); - D = Buffer.concat(bufs); - for (var j = 0; j < count; ++j) - D = crypto.createHash('md5').update(D).digest(); - material = Buffer.concat([material, D]); - D_prev = D; - } - - return ({ - key: material.slice(0, clen.key), - iv: material.slice(clen.key, clen.key + clen.iv) - }); -} - -/* Count leading zero bits on a buffer */ -function countZeros(buf) { - var o = 0, obit = 8; - while (o < buf.length) { - var mask = (1 << obit); - if ((buf[o] & mask) === mask) - break; - obit--; - if (obit < 0) { - o++; - obit = 8; - } - } - return (o*8 + (8 - obit) - 1); -} - -function bufferSplit(buf, chr) { - assert.buffer(buf); - assert.string(chr); - - var parts = []; - var lastPart = 0; - var matches = 0; - for (var i = 0; i < buf.length; ++i) { - if (buf[i] === chr.charCodeAt(matches)) - ++matches; - else if (buf[i] === chr.charCodeAt(0)) - matches = 1; - else - matches = 0; - - if (matches >= chr.length) { - var newPart = i + 1; - parts.push(buf.slice(lastPart, newPart - matches)); - lastPart = newPart; - matches = 0; - } - } - if (lastPart <= buf.length) - parts.push(buf.slice(lastPart, buf.length)); - - return (parts); -} - -function ecNormalize(buf, addZero) { - assert.buffer(buf); - if (buf[0] === 0x00 && buf[1] === 0x04) { - if (addZero) - return (buf); - return (buf.slice(1)); - } else if (buf[0] === 0x04) { - if (!addZero) - return (buf); - } else { - while (buf[0] === 0x00) - buf = buf.slice(1); - if (buf[0] === 0x02 || buf[0] === 0x03) - throw (new Error('Compressed elliptic curve points ' + - 'are not supported')); - if (buf[0] !== 0x04) - throw (new Error('Not a valid elliptic curve point')); - if (!addZero) - return (buf); - } - var b = Buffer.alloc(buf.length + 1); - b[0] = 0x0; - buf.copy(b, 1); - return (b); -} - -function readBitString(der, tag) { - if (tag === undefined) - tag = asn1.Ber.BitString; - var buf = der.readString(tag, true); - assert.strictEqual(buf[0], 0x00, 'bit strings with unused bits are ' + - 'not supported (0x' + buf[0].toString(16) + ')'); - return (buf.slice(1)); -} - -function writeBitString(der, buf, tag) { - if (tag === undefined) - tag = asn1.Ber.BitString; - var b = Buffer.alloc(buf.length + 1); - b[0] = 0x00; - buf.copy(b, 1); - der.writeBuffer(b, tag); -} - -function mpNormalize(buf) { - assert.buffer(buf); - while (buf.length > 1 && buf[0] === 0x00 && (buf[1] & 0x80) === 0x00) - buf = buf.slice(1); - if ((buf[0] & 0x80) === 0x80) { - var b = Buffer.alloc(buf.length + 1); - b[0] = 0x00; - buf.copy(b, 1); - buf = b; - } - return (buf); -} - -function mpDenormalize(buf) { - assert.buffer(buf); - while (buf.length > 1 && buf[0] === 0x00) - buf = buf.slice(1); - return (buf); -} - -function zeroPadToLength(buf, len) { - assert.buffer(buf); - assert.number(len); - while (buf.length > len) { - assert.equal(buf[0], 0x00); - buf = buf.slice(1); - } - while (buf.length < len) { - var b = Buffer.alloc(buf.length + 1); - b[0] = 0x00; - buf.copy(b, 1); - buf = b; - } - return (buf); -} - -function bigintToMpBuf(bigint) { - var buf = Buffer.from(bigint.toByteArray()); - buf = mpNormalize(buf); - return (buf); -} - -function calculateDSAPublic(g, p, x) { - assert.buffer(g); - assert.buffer(p); - assert.buffer(x); - try { - var bigInt = __webpack_require__(81).BigInteger; - } catch (e) { - throw (new Error('To load a PKCS#8 format DSA private key, ' + - 'the node jsbn library is required.')); - } - g = new bigInt(g); - p = new bigInt(p); - x = new bigInt(x); - var y = g.modPow(x, p); - var ybuf = bigintToMpBuf(y); - return (ybuf); -} - -function calculateED25519Public(k) { - assert.buffer(k); - - if (nacl === undefined) - nacl = __webpack_require__(76); - - var kp = nacl.sign.keyPair.fromSeed(new Uint8Array(k)); - return (Buffer.from(kp.publicKey)); -} - -function calculateX25519Public(k) { - assert.buffer(k); - - if (nacl === undefined) - nacl = __webpack_require__(76); - - var kp = nacl.box.keyPair.fromSeed(new Uint8Array(k)); - return (Buffer.from(kp.publicKey)); -} - -function addRSAMissing(key) { - assert.object(key); - assertCompatible(key, PrivateKey, [1, 1]); - try { - var bigInt = __webpack_require__(81).BigInteger; - } catch (e) { - throw (new Error('To write a PEM private key from ' + - 'this source, the node jsbn lib is required.')); - } - - var d = new bigInt(key.part.d.data); - var buf; - - if (!key.part.dmodp) { - var p = new bigInt(key.part.p.data); - var dmodp = d.mod(p.subtract(1)); - - buf = bigintToMpBuf(dmodp); - key.part.dmodp = {name: 'dmodp', data: buf}; - key.parts.push(key.part.dmodp); - } - if (!key.part.dmodq) { - var q = new bigInt(key.part.q.data); - var dmodq = d.mod(q.subtract(1)); - - buf = bigintToMpBuf(dmodq); - key.part.dmodq = {name: 'dmodq', data: buf}; - key.parts.push(key.part.dmodq); - } -} - -function publicFromPrivateECDSA(curveName, priv) { - assert.string(curveName, 'curveName'); - assert.buffer(priv); - if (ec === undefined) - ec = __webpack_require__(140); - if (jsbn === undefined) - jsbn = __webpack_require__(81).BigInteger; - var params = algs.curves[curveName]; - var p = new jsbn(params.p); - var a = new jsbn(params.a); - var b = new jsbn(params.b); - var curve = new ec.ECCurveFp(p, a, b); - var G = curve.decodePointHex(params.G.toString('hex')); - - var d = new jsbn(mpNormalize(priv)); - var pub = G.multiply(d); - pub = Buffer.from(curve.encodePointHex(pub), 'hex'); - - var parts = []; - parts.push({name: 'curve', data: Buffer.from(curveName)}); - parts.push({name: 'Q', data: pub}); - - var key = new Key({type: 'ecdsa', curve: curve, parts: parts}); - return (key); -} - -function opensshCipherInfo(cipher) { - var inf = {}; - switch (cipher) { - case '3des-cbc': - inf.keySize = 24; - inf.blockSize = 8; - inf.opensslName = 'des-ede3-cbc'; - break; - case 'blowfish-cbc': - inf.keySize = 16; - inf.blockSize = 8; - inf.opensslName = 'bf-cbc'; - break; - case 'aes128-cbc': - case 'aes128-ctr': - case 'aes128-gcm@openssh.com': - inf.keySize = 16; - inf.blockSize = 16; - inf.opensslName = 'aes-128-' + cipher.slice(7, 10); - break; - case 'aes192-cbc': - case 'aes192-ctr': - case 'aes192-gcm@openssh.com': - inf.keySize = 24; - inf.blockSize = 16; - inf.opensslName = 'aes-192-' + cipher.slice(7, 10); - break; - case 'aes256-cbc': - case 'aes256-ctr': - case 'aes256-gcm@openssh.com': - inf.keySize = 32; - inf.blockSize = 16; - inf.opensslName = 'aes-256-' + cipher.slice(7, 10); - break; - default: - throw (new Error( - 'Unsupported openssl cipher "' + cipher + '"')); - } - return (inf); -} - - -/***/ }), -/* 27 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - -const escapeStringRegexp = __webpack_require__(382); -const ansiStyles = __webpack_require__(474); -const stdoutColor = __webpack_require__(566).stdout; - -const template = __webpack_require__(567); - -const isSimpleWindowsTerm = process.platform === 'win32' && !(process.env.TERM || '').toLowerCase().startsWith('xterm'); - -// `supportsColor.level` → `ansiStyles.color[name]` mapping -const levelMapping = ['ansi', 'ansi', 'ansi256', 'ansi16m']; - -// `color-convert` models to exclude from the Chalk API due to conflicts and such -const skipModels = new Set(['gray']); - -const styles = Object.create(null); - -function applyOptions(obj, options) { - options = options || {}; - - // Detect level if not set manually - const scLevel = stdoutColor ? stdoutColor.level : 0; - obj.level = options.level === undefined ? scLevel : options.level; - obj.enabled = 'enabled' in options ? options.enabled : obj.level > 0; -} - -function Chalk(options) { - // We check for this.template here since calling `chalk.constructor()` - // by itself will have a `this` of a previously constructed chalk object - if (!this || !(this instanceof Chalk) || this.template) { - const chalk = {}; - applyOptions(chalk, options); - - chalk.template = function () { - const args = [].slice.call(arguments); - return chalkTag.apply(null, [chalk.template].concat(args)); - }; - - Object.setPrototypeOf(chalk, Chalk.prototype); - Object.setPrototypeOf(chalk.template, chalk); - - chalk.template.constructor = Chalk; - - return chalk.template; - } - - applyOptions(this, options); -} - -// Use bright blue on Windows as the normal blue color is illegible -if (isSimpleWindowsTerm) { - ansiStyles.blue.open = '\u001B[94m'; -} - -for (const key of Object.keys(ansiStyles)) { - ansiStyles[key].closeRe = new RegExp(escapeStringRegexp(ansiStyles[key].close), 'g'); - - styles[key] = { - get() { - const codes = ansiStyles[key]; - return build.call(this, this._styles ? this._styles.concat(codes) : [codes], this._empty, key); - } - }; -} - -styles.visible = { - get() { - return build.call(this, this._styles || [], true, 'visible'); - } -}; - -ansiStyles.color.closeRe = new RegExp(escapeStringRegexp(ansiStyles.color.close), 'g'); -for (const model of Object.keys(ansiStyles.color.ansi)) { - if (skipModels.has(model)) { - continue; - } - - styles[model] = { - get() { - const level = this.level; - return function () { - const open = ansiStyles.color[levelMapping[level]][model].apply(null, arguments); - const codes = { - open, - close: ansiStyles.color.close, - closeRe: ansiStyles.color.closeRe - }; - return build.call(this, this._styles ? this._styles.concat(codes) : [codes], this._empty, model); - }; - } - }; -} - -ansiStyles.bgColor.closeRe = new RegExp(escapeStringRegexp(ansiStyles.bgColor.close), 'g'); -for (const model of Object.keys(ansiStyles.bgColor.ansi)) { - if (skipModels.has(model)) { - continue; - } - - const bgModel = 'bg' + model[0].toUpperCase() + model.slice(1); - styles[bgModel] = { - get() { - const level = this.level; - return function () { - const open = ansiStyles.bgColor[levelMapping[level]][model].apply(null, arguments); - const codes = { - open, - close: ansiStyles.bgColor.close, - closeRe: ansiStyles.bgColor.closeRe - }; - return build.call(this, this._styles ? this._styles.concat(codes) : [codes], this._empty, model); - }; - } - }; -} - -const proto = Object.defineProperties(() => {}, styles); - -function build(_styles, _empty, key) { - const builder = function () { - return applyStyle.apply(builder, arguments); - }; - - builder._styles = _styles; - builder._empty = _empty; - - const self = this; - - Object.defineProperty(builder, 'level', { - enumerable: true, - get() { - return self.level; - }, - set(level) { - self.level = level; - } - }); - - Object.defineProperty(builder, 'enabled', { - enumerable: true, - get() { - return self.enabled; - }, - set(enabled) { - self.enabled = enabled; - } - }); - - // See below for fix regarding invisible grey/dim combination on Windows - builder.hasGrey = this.hasGrey || key === 'gray' || key === 'grey'; - - // `__proto__` is used because we must return a function, but there is - // no way to create a function with a different prototype - builder.__proto__ = proto; // eslint-disable-line no-proto - - return builder; -} - -function applyStyle() { - // Support varags, but simply cast to string in case there's only one arg - const args = arguments; - const argsLen = args.length; - let str = String(arguments[0]); - - if (argsLen === 0) { - return ''; - } - - if (argsLen > 1) { - // Don't slice `arguments`, it prevents V8 optimizations - for (let a = 1; a < argsLen; a++) { - str += ' ' + args[a]; - } - } - - if (!this.enabled || this.level <= 0 || !str) { - return this._empty ? '' : str; - } - - // Turns out that on Windows dimmed gray text becomes invisible in cmd.exe, - // see https://github.com/chalk/chalk/issues/58 - // If we're on Windows and we're dealing with a gray color, temporarily make 'dim' a noop. - const originalDim = ansiStyles.dim.open; - if (isSimpleWindowsTerm && this.hasGrey) { - ansiStyles.dim.open = ''; - } - - for (const code of this._styles.slice().reverse()) { - // Replace any instances already present with a re-opening code - // otherwise only the part of the string until said closing code - // will be colored, and the rest will simply be 'plain'. - str = code.open + str.replace(code.closeRe, code.open) + code.close; - - // Close the styling before a linebreak and reopen - // after next line to fix a bleed issue on macOS - // https://github.com/chalk/chalk/pull/92 - str = str.replace(/\r?\n/g, `${code.close}$&${code.open}`); - } - - // Reset the original `dim` if we changed it to work around the Windows dimmed gray issue - ansiStyles.dim.open = originalDim; - - return str; -} - -function chalkTag(chalk, strings) { - if (!Array.isArray(strings)) { - // If chalk() was called by itself or with a string, - // return the string itself as a string. - return [].slice.call(arguments, 1).join(' '); - } - - const args = [].slice.call(arguments, 2); - const parts = [strings.raw[0]]; - - for (let i = 1; i < strings.length; i++) { - parts.push(String(args[i - 1]).replace(/[{}\\]/g, '\\$&')); - parts.push(String(strings.raw[i])); - } - - return template(chalk, parts.join('')); -} - -Object.defineProperties(Chalk.prototype, styles); - -module.exports = Chalk(); // eslint-disable-line new-cap -module.exports.supportsColor = stdoutColor; -module.exports.default = module.exports; // For TypeScript - - -/***/ }), -/* 28 */ -/***/ (function(module, exports, __webpack_require__) { - -// Copyright 2017 Joyent, Inc. - -module.exports = Key; - -var assert = __webpack_require__(16); -var algs = __webpack_require__(32); -var crypto = __webpack_require__(11); -var Fingerprint = __webpack_require__(157); -var Signature = __webpack_require__(75); -var DiffieHellman = __webpack_require__(326).DiffieHellman; -var errs = __webpack_require__(74); -var utils = __webpack_require__(26); -var PrivateKey = __webpack_require__(33); -var edCompat; - -try { - edCompat = __webpack_require__(454); -} catch (e) { - /* Just continue through, and bail out if we try to use it. */ -} - -var InvalidAlgorithmError = errs.InvalidAlgorithmError; -var KeyParseError = errs.KeyParseError; - -var formats = {}; -formats['auto'] = __webpack_require__(455); -formats['pem'] = __webpack_require__(86); -formats['pkcs1'] = __webpack_require__(328); -formats['pkcs8'] = __webpack_require__(158); -formats['rfc4253'] = __webpack_require__(103); -formats['ssh'] = __webpack_require__(456); -formats['ssh-private'] = __webpack_require__(193); -formats['openssh'] = formats['ssh-private']; -formats['dnssec'] = __webpack_require__(327); - -function Key(opts) { - assert.object(opts, 'options'); - assert.arrayOfObject(opts.parts, 'options.parts'); - assert.string(opts.type, 'options.type'); - assert.optionalString(opts.comment, 'options.comment'); - - var algInfo = algs.info[opts.type]; - if (typeof (algInfo) !== 'object') - throw (new InvalidAlgorithmError(opts.type)); - - var partLookup = {}; - for (var i = 0; i < opts.parts.length; ++i) { - var part = opts.parts[i]; - partLookup[part.name] = part; - } - - this.type = opts.type; - this.parts = opts.parts; - this.part = partLookup; - this.comment = undefined; - this.source = opts.source; - - /* for speeding up hashing/fingerprint operations */ - this._rfc4253Cache = opts._rfc4253Cache; - this._hashCache = {}; - - var sz; - this.curve = undefined; - if (this.type === 'ecdsa') { - var curve = this.part.curve.data.toString(); - this.curve = curve; - sz = algs.curves[curve].size; - } else if (this.type === 'ed25519' || this.type === 'curve25519') { - sz = 256; - this.curve = 'curve25519'; - } else { - var szPart = this.part[algInfo.sizePart]; - sz = szPart.data.length; - sz = sz * 8 - utils.countZeros(szPart.data); - } - this.size = sz; -} - -Key.formats = formats; - -Key.prototype.toBuffer = function (format, options) { - if (format === undefined) - format = 'ssh'; - assert.string(format, 'format'); - assert.object(formats[format], 'formats[format]'); - assert.optionalObject(options, 'options'); - - if (format === 'rfc4253') { - if (this._rfc4253Cache === undefined) - this._rfc4253Cache = formats['rfc4253'].write(this); - return (this._rfc4253Cache); - } - - return (formats[format].write(this, options)); -}; - -Key.prototype.toString = function (format, options) { - return (this.toBuffer(format, options).toString()); -}; - -Key.prototype.hash = function (algo) { - assert.string(algo, 'algorithm'); - algo = algo.toLowerCase(); - if (algs.hashAlgs[algo] === undefined) - throw (new InvalidAlgorithmError(algo)); - - if (this._hashCache[algo]) - return (this._hashCache[algo]); - var hash = crypto.createHash(algo). - update(this.toBuffer('rfc4253')).digest(); - this._hashCache[algo] = hash; - return (hash); -}; - -Key.prototype.fingerprint = function (algo) { - if (algo === undefined) - algo = 'sha256'; - assert.string(algo, 'algorithm'); - var opts = { - type: 'key', - hash: this.hash(algo), - algorithm: algo - }; - return (new Fingerprint(opts)); -}; - -Key.prototype.defaultHashAlgorithm = function () { - var hashAlgo = 'sha1'; - if (this.type === 'rsa') - hashAlgo = 'sha256'; - if (this.type === 'dsa' && this.size > 1024) - hashAlgo = 'sha256'; - if (this.type === 'ed25519') - hashAlgo = 'sha512'; - if (this.type === 'ecdsa') { - if (this.size <= 256) - hashAlgo = 'sha256'; - else if (this.size <= 384) - hashAlgo = 'sha384'; - else - hashAlgo = 'sha512'; - } - return (hashAlgo); -}; - -Key.prototype.createVerify = function (hashAlgo) { - if (hashAlgo === undefined) - hashAlgo = this.defaultHashAlgorithm(); - assert.string(hashAlgo, 'hash algorithm'); - - /* ED25519 is not supported by OpenSSL, use a javascript impl. */ - if (this.type === 'ed25519' && edCompat !== undefined) - return (new edCompat.Verifier(this, hashAlgo)); - if (this.type === 'curve25519') - throw (new Error('Curve25519 keys are not suitable for ' + - 'signing or verification')); - - var v, nm, err; - try { - nm = hashAlgo.toUpperCase(); - v = crypto.createVerify(nm); - } catch (e) { - err = e; - } - if (v === undefined || (err instanceof Error && - err.message.match(/Unknown message digest/))) { - nm = 'RSA-'; - nm += hashAlgo.toUpperCase(); - v = crypto.createVerify(nm); - } - assert.ok(v, 'failed to create verifier'); - var oldVerify = v.verify.bind(v); - var key = this.toBuffer('pkcs8'); - var curve = this.curve; - var self = this; - v.verify = function (signature, fmt) { - if (Signature.isSignature(signature, [2, 0])) { - if (signature.type !== self.type) - return (false); - if (signature.hashAlgorithm && - signature.hashAlgorithm !== hashAlgo) - return (false); - if (signature.curve && self.type === 'ecdsa' && - signature.curve !== curve) - return (false); - return (oldVerify(key, signature.toBuffer('asn1'))); - - } else if (typeof (signature) === 'string' || - Buffer.isBuffer(signature)) { - return (oldVerify(key, signature, fmt)); - - /* - * Avoid doing this on valid arguments, walking the prototype - * chain can be quite slow. - */ - } else if (Signature.isSignature(signature, [1, 0])) { - throw (new Error('signature was created by too old ' + - 'a version of sshpk and cannot be verified')); - - } else { - throw (new TypeError('signature must be a string, ' + - 'Buffer, or Signature object')); - } - }; - return (v); -}; - -Key.prototype.createDiffieHellman = function () { - if (this.type === 'rsa') - throw (new Error('RSA keys do not support Diffie-Hellman')); - - return (new DiffieHellman(this)); -}; -Key.prototype.createDH = Key.prototype.createDiffieHellman; - -Key.parse = function (data, format, options) { - if (typeof (data) !== 'string') - assert.buffer(data, 'data'); - if (format === undefined) - format = 'auto'; - assert.string(format, 'format'); - if (typeof (options) === 'string') - options = { filename: options }; - assert.optionalObject(options, 'options'); - if (options === undefined) - options = {}; - assert.optionalString(options.filename, 'options.filename'); - if (options.filename === undefined) - options.filename = '(unnamed)'; - - assert.object(formats[format], 'formats[format]'); - - try { - var k = formats[format].read(data, options); - if (k instanceof PrivateKey) - k = k.toPublic(); - if (!k.comment) - k.comment = options.filename; - return (k); - } catch (e) { - if (e.name === 'KeyEncryptedError') - throw (e); - throw (new KeyParseError(options.filename, format, e)); - } -}; - -Key.isKey = function (obj, ver) { - return (utils.isCompatible(obj, Key, ver)); -}; - -/* - * API versions for Key: - * [1,0] -- initial ver, may take Signature for createVerify or may not - * [1,1] -- added pkcs1, pkcs8 formats - * [1,2] -- added auto, ssh-private, openssh formats - * [1,3] -- added defaultHashAlgorithm - * [1,4] -- added ed support, createDH - * [1,5] -- first explicitly tagged version - * [1,6] -- changed ed25519 part names - */ -Key.prototype._sshpkApiVersion = [1, 6]; - -Key._oldVersionDetect = function (obj) { - assert.func(obj.toBuffer); - assert.func(obj.fingerprint); - if (obj.createDH) - return ([1, 4]); - if (obj.defaultHashAlgorithm) - return ([1, 3]); - if (obj.formats['auto']) - return ([1, 2]); - if (obj.formats['pkcs1']) - return ([1, 1]); - return ([1, 0]); -}; - - -/***/ }), -/* 29 */ -/***/ (function(module, exports) { - -module.exports = require("assert"); - -/***/ }), -/* 30 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = nullify; -function nullify(obj = {}) { - if (Array.isArray(obj)) { - for (var _iterator = obj, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) { - var _ref; - - if (_isArray) { - if (_i >= _iterator.length) break; - _ref = _iterator[_i++]; - } else { - _i = _iterator.next(); - if (_i.done) break; - _ref = _i.value; - } - - const item = _ref; - - nullify(item); - } - } else if (obj !== null && typeof obj === 'object' || typeof obj === 'function') { - Object.setPrototypeOf(obj, null); - - // for..in can only be applied to 'object', not 'function' - if (typeof obj === 'object') { - for (const key in obj) { - nullify(obj[key]); - } - } - } - - return obj; -} - -/***/ }), -/* 31 */ -/***/ (function(module, exports) { - -var core = module.exports = { version: '2.5.7' }; -if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef - - -/***/ }), -/* 32 */ -/***/ (function(module, exports, __webpack_require__) { - -// Copyright 2015 Joyent, Inc. - -var Buffer = __webpack_require__(15).Buffer; - -var algInfo = { - 'dsa': { - parts: ['p', 'q', 'g', 'y'], - sizePart: 'p' - }, - 'rsa': { - parts: ['e', 'n'], - sizePart: 'n' - }, - 'ecdsa': { - parts: ['curve', 'Q'], - sizePart: 'Q' - }, - 'ed25519': { - parts: ['A'], - sizePart: 'A' - } -}; -algInfo['curve25519'] = algInfo['ed25519']; - -var algPrivInfo = { - 'dsa': { - parts: ['p', 'q', 'g', 'y', 'x'] - }, - 'rsa': { - parts: ['n', 'e', 'd', 'iqmp', 'p', 'q'] - }, - 'ecdsa': { - parts: ['curve', 'Q', 'd'] - }, - 'ed25519': { - parts: ['A', 'k'] - } -}; -algPrivInfo['curve25519'] = algPrivInfo['ed25519']; - -var hashAlgs = { - 'md5': true, - 'sha1': true, - 'sha256': true, - 'sha384': true, - 'sha512': true -}; - -/* - * Taken from - * http://csrc.nist.gov/groups/ST/toolkit/documents/dss/NISTReCur.pdf - */ -var curves = { - 'nistp256': { - size: 256, - pkcs8oid: '1.2.840.10045.3.1.7', - p: Buffer.from(('00' + - 'ffffffff 00000001 00000000 00000000' + - '00000000 ffffffff ffffffff ffffffff'). - replace(/ /g, ''), 'hex'), - a: Buffer.from(('00' + - 'FFFFFFFF 00000001 00000000 00000000' + - '00000000 FFFFFFFF FFFFFFFF FFFFFFFC'). - replace(/ /g, ''), 'hex'), - b: Buffer.from(( - '5ac635d8 aa3a93e7 b3ebbd55 769886bc' + - '651d06b0 cc53b0f6 3bce3c3e 27d2604b'). - replace(/ /g, ''), 'hex'), - s: Buffer.from(('00' + - 'c49d3608 86e70493 6a6678e1 139d26b7' + - '819f7e90'). - replace(/ /g, ''), 'hex'), - n: Buffer.from(('00' + - 'ffffffff 00000000 ffffffff ffffffff' + - 'bce6faad a7179e84 f3b9cac2 fc632551'). - replace(/ /g, ''), 'hex'), - G: Buffer.from(('04' + - '6b17d1f2 e12c4247 f8bce6e5 63a440f2' + - '77037d81 2deb33a0 f4a13945 d898c296' + - '4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16' + - '2bce3357 6b315ece cbb64068 37bf51f5'). - replace(/ /g, ''), 'hex') - }, - 'nistp384': { - size: 384, - pkcs8oid: '1.3.132.0.34', - p: Buffer.from(('00' + - 'ffffffff ffffffff ffffffff ffffffff' + - 'ffffffff ffffffff ffffffff fffffffe' + - 'ffffffff 00000000 00000000 ffffffff'). - replace(/ /g, ''), 'hex'), - a: Buffer.from(('00' + - 'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF' + - 'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE' + - 'FFFFFFFF 00000000 00000000 FFFFFFFC'). - replace(/ /g, ''), 'hex'), - b: Buffer.from(( - 'b3312fa7 e23ee7e4 988e056b e3f82d19' + - '181d9c6e fe814112 0314088f 5013875a' + - 'c656398d 8a2ed19d 2a85c8ed d3ec2aef'). - replace(/ /g, ''), 'hex'), - s: Buffer.from(('00' + - 'a335926a a319a27a 1d00896a 6773a482' + - '7acdac73'). - replace(/ /g, ''), 'hex'), - n: Buffer.from(('00' + - 'ffffffff ffffffff ffffffff ffffffff' + - 'ffffffff ffffffff c7634d81 f4372ddf' + - '581a0db2 48b0a77a ecec196a ccc52973'). - replace(/ /g, ''), 'hex'), - G: Buffer.from(('04' + - 'aa87ca22 be8b0537 8eb1c71e f320ad74' + - '6e1d3b62 8ba79b98 59f741e0 82542a38' + - '5502f25d bf55296c 3a545e38 72760ab7' + - '3617de4a 96262c6f 5d9e98bf 9292dc29' + - 'f8f41dbd 289a147c e9da3113 b5f0b8c0' + - '0a60b1ce 1d7e819d 7a431d7c 90ea0e5f'). - replace(/ /g, ''), 'hex') - }, - 'nistp521': { - size: 521, - pkcs8oid: '1.3.132.0.35', - p: Buffer.from(( - '01ffffff ffffffff ffffffff ffffffff' + - 'ffffffff ffffffff ffffffff ffffffff' + - 'ffffffff ffffffff ffffffff ffffffff' + - 'ffffffff ffffffff ffffffff ffffffff' + - 'ffff').replace(/ /g, ''), 'hex'), - a: Buffer.from(('01FF' + - 'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF' + - 'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF' + - 'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF' + - 'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFC'). - replace(/ /g, ''), 'hex'), - b: Buffer.from(('51' + - '953eb961 8e1c9a1f 929a21a0 b68540ee' + - 'a2da725b 99b315f3 b8b48991 8ef109e1' + - '56193951 ec7e937b 1652c0bd 3bb1bf07' + - '3573df88 3d2c34f1 ef451fd4 6b503f00'). - replace(/ /g, ''), 'hex'), - s: Buffer.from(('00' + - 'd09e8800 291cb853 96cc6717 393284aa' + - 'a0da64ba').replace(/ /g, ''), 'hex'), - n: Buffer.from(('01ff' + - 'ffffffff ffffffff ffffffff ffffffff' + - 'ffffffff ffffffff ffffffff fffffffa' + - '51868783 bf2f966b 7fcc0148 f709a5d0' + - '3bb5c9b8 899c47ae bb6fb71e 91386409'). - replace(/ /g, ''), 'hex'), - G: Buffer.from(('04' + - '00c6 858e06b7 0404e9cd 9e3ecb66 2395b442' + - '9c648139 053fb521 f828af60 6b4d3dba' + - 'a14b5e77 efe75928 fe1dc127 a2ffa8de' + - '3348b3c1 856a429b f97e7e31 c2e5bd66' + - '0118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9' + - '98f54449 579b4468 17afbd17 273e662c' + - '97ee7299 5ef42640 c550b901 3fad0761' + - '353c7086 a272c240 88be9476 9fd16650'). - replace(/ /g, ''), 'hex') - } -}; - -module.exports = { - info: algInfo, - privInfo: algPrivInfo, - hashAlgs: hashAlgs, - curves: curves -}; - - -/***/ }), -/* 33 */ -/***/ (function(module, exports, __webpack_require__) { - -// Copyright 2017 Joyent, Inc. - -module.exports = PrivateKey; - -var assert = __webpack_require__(16); -var Buffer = __webpack_require__(15).Buffer; -var algs = __webpack_require__(32); -var crypto = __webpack_require__(11); -var Fingerprint = __webpack_require__(157); -var Signature = __webpack_require__(75); -var errs = __webpack_require__(74); -var util = __webpack_require__(3); -var utils = __webpack_require__(26); -var dhe = __webpack_require__(326); -var generateECDSA = dhe.generateECDSA; -var generateED25519 = dhe.generateED25519; -var edCompat; -var nacl; - -try { - edCompat = __webpack_require__(454); -} catch (e) { - /* Just continue through, and bail out if we try to use it. */ -} - -var Key = __webpack_require__(28); - -var InvalidAlgorithmError = errs.InvalidAlgorithmError; -var KeyParseError = errs.KeyParseError; -var KeyEncryptedError = errs.KeyEncryptedError; - -var formats = {}; -formats['auto'] = __webpack_require__(455); -formats['pem'] = __webpack_require__(86); -formats['pkcs1'] = __webpack_require__(328); -formats['pkcs8'] = __webpack_require__(158); -formats['rfc4253'] = __webpack_require__(103); -formats['ssh-private'] = __webpack_require__(193); -formats['openssh'] = formats['ssh-private']; -formats['ssh'] = formats['ssh-private']; -formats['dnssec'] = __webpack_require__(327); - -function PrivateKey(opts) { - assert.object(opts, 'options'); - Key.call(this, opts); - - this._pubCache = undefined; -} -util.inherits(PrivateKey, Key); - -PrivateKey.formats = formats; - -PrivateKey.prototype.toBuffer = function (format, options) { - if (format === undefined) - format = 'pkcs1'; - assert.string(format, 'format'); - assert.object(formats[format], 'formats[format]'); - assert.optionalObject(options, 'options'); - - return (formats[format].write(this, options)); -}; - -PrivateKey.prototype.hash = function (algo) { - return (this.toPublic().hash(algo)); -}; - -PrivateKey.prototype.toPublic = function () { - if (this._pubCache) - return (this._pubCache); - - var algInfo = algs.info[this.type]; - var pubParts = []; - for (var i = 0; i < algInfo.parts.length; ++i) { - var p = algInfo.parts[i]; - pubParts.push(this.part[p]); - } - - this._pubCache = new Key({ - type: this.type, - source: this, - parts: pubParts - }); - if (this.comment) - this._pubCache.comment = this.comment; - return (this._pubCache); -}; - -PrivateKey.prototype.derive = function (newType) { - assert.string(newType, 'type'); - var priv, pub, pair; - - if (this.type === 'ed25519' && newType === 'curve25519') { - if (nacl === undefined) - nacl = __webpack_require__(76); - - priv = this.part.k.data; - if (priv[0] === 0x00) - priv = priv.slice(1); - - pair = nacl.box.keyPair.fromSecretKey(new Uint8Array(priv)); - pub = Buffer.from(pair.publicKey); - - return (new PrivateKey({ - type: 'curve25519', - parts: [ - { name: 'A', data: utils.mpNormalize(pub) }, - { name: 'k', data: utils.mpNormalize(priv) } - ] - })); - } else if (this.type === 'curve25519' && newType === 'ed25519') { - if (nacl === undefined) - nacl = __webpack_require__(76); - - priv = this.part.k.data; - if (priv[0] === 0x00) - priv = priv.slice(1); - - pair = nacl.sign.keyPair.fromSeed(new Uint8Array(priv)); - pub = Buffer.from(pair.publicKey); - - return (new PrivateKey({ - type: 'ed25519', - parts: [ - { name: 'A', data: utils.mpNormalize(pub) }, - { name: 'k', data: utils.mpNormalize(priv) } - ] - })); - } - throw (new Error('Key derivation not supported from ' + this.type + - ' to ' + newType)); -}; - -PrivateKey.prototype.createVerify = function (hashAlgo) { - return (this.toPublic().createVerify(hashAlgo)); -}; - -PrivateKey.prototype.createSign = function (hashAlgo) { - if (hashAlgo === undefined) - hashAlgo = this.defaultHashAlgorithm(); - assert.string(hashAlgo, 'hash algorithm'); - - /* ED25519 is not supported by OpenSSL, use a javascript impl. */ - if (this.type === 'ed25519' && edCompat !== undefined) - return (new edCompat.Signer(this, hashAlgo)); - if (this.type === 'curve25519') - throw (new Error('Curve25519 keys are not suitable for ' + - 'signing or verification')); - - var v, nm, err; - try { - nm = hashAlgo.toUpperCase(); - v = crypto.createSign(nm); - } catch (e) { - err = e; - } - if (v === undefined || (err instanceof Error && - err.message.match(/Unknown message digest/))) { - nm = 'RSA-'; - nm += hashAlgo.toUpperCase(); - v = crypto.createSign(nm); - } - assert.ok(v, 'failed to create verifier'); - var oldSign = v.sign.bind(v); - var key = this.toBuffer('pkcs1'); - var type = this.type; - var curve = this.curve; - v.sign = function () { - var sig = oldSign(key); - if (typeof (sig) === 'string') - sig = Buffer.from(sig, 'binary'); - sig = Signature.parse(sig, type, 'asn1'); - sig.hashAlgorithm = hashAlgo; - sig.curve = curve; - return (sig); - }; - return (v); -}; - -PrivateKey.parse = function (data, format, options) { - if (typeof (data) !== 'string') - assert.buffer(data, 'data'); - if (format === undefined) - format = 'auto'; - assert.string(format, 'format'); - if (typeof (options) === 'string') - options = { filename: options }; - assert.optionalObject(options, 'options'); - if (options === undefined) - options = {}; - assert.optionalString(options.filename, 'options.filename'); - if (options.filename === undefined) - options.filename = '(unnamed)'; - - assert.object(formats[format], 'formats[format]'); - - try { - var k = formats[format].read(data, options); - assert.ok(k instanceof PrivateKey, 'key is not a private key'); - if (!k.comment) - k.comment = options.filename; - return (k); - } catch (e) { - if (e.name === 'KeyEncryptedError') - throw (e); - throw (new KeyParseError(options.filename, format, e)); - } -}; - -PrivateKey.isPrivateKey = function (obj, ver) { - return (utils.isCompatible(obj, PrivateKey, ver)); -}; - -PrivateKey.generate = function (type, options) { - if (options === undefined) - options = {}; - assert.object(options, 'options'); - - switch (type) { - case 'ecdsa': - if (options.curve === undefined) - options.curve = 'nistp256'; - assert.string(options.curve, 'options.curve'); - return (generateECDSA(options.curve)); - case 'ed25519': - return (generateED25519()); - default: - throw (new Error('Key generation not supported with key ' + - 'type "' + type + '"')); - } -}; - -/* - * API versions for PrivateKey: - * [1,0] -- initial ver - * [1,1] -- added auto, pkcs[18], openssh/ssh-private formats - * [1,2] -- added defaultHashAlgorithm - * [1,3] -- added derive, ed, createDH - * [1,4] -- first tagged version - * [1,5] -- changed ed25519 part names and format - */ -PrivateKey.prototype._sshpkApiVersion = [1, 5]; - -PrivateKey._oldVersionDetect = function (obj) { - assert.func(obj.toPublic); - assert.func(obj.createSign); - if (obj.derive) - return ([1, 3]); - if (obj.defaultHashAlgorithm) - return ([1, 2]); - if (obj.formats['auto']) - return ([1, 1]); - return ([1, 0]); -}; - - -/***/ }), -/* 34 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.wrapLifecycle = exports.run = exports.install = exports.Install = undefined; - -var _extends2; - -function _load_extends() { - return _extends2 = _interopRequireDefault(__webpack_require__(20)); -} - -var _asyncToGenerator2; - -function _load_asyncToGenerator() { - return _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(2)); -} - -let install = exports.install = (() => { - var _ref29 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (config, reporter, flags, lockfile) { - yield wrapLifecycle(config, flags, (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - const install = new Install(flags, config, reporter, lockfile); - yield install.init(); - })); - }); - - return function install(_x7, _x8, _x9, _x10) { - return _ref29.apply(this, arguments); - }; -})(); - -let run = exports.run = (() => { - var _ref31 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (config, reporter, flags, args) { - let lockfile; - let error = 'installCommandRenamed'; - if (flags.lockfile === false) { - lockfile = new (_lockfile || _load_lockfile()).default(); - } else { - lockfile = yield (_lockfile || _load_lockfile()).default.fromDirectory(config.lockfileFolder, reporter); - } - - if (args.length) { - const exampleArgs = args.slice(); - - if (flags.saveDev) { - exampleArgs.push('--dev'); - } - if (flags.savePeer) { - exampleArgs.push('--peer'); - } - if (flags.saveOptional) { - exampleArgs.push('--optional'); - } - if (flags.saveExact) { - exampleArgs.push('--exact'); - } - if (flags.saveTilde) { - exampleArgs.push('--tilde'); - } - let command = 'add'; - if (flags.global) { - error = 'globalFlagRemoved'; - command = 'global add'; - } - throw new (_errors || _load_errors()).MessageError(reporter.lang(error, `yarn ${command} ${exampleArgs.join(' ')}`)); - } - - yield install(config, reporter, flags, lockfile); - }); - - return function run(_x11, _x12, _x13, _x14) { - return _ref31.apply(this, arguments); - }; -})(); - -let wrapLifecycle = exports.wrapLifecycle = (() => { - var _ref32 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (config, flags, factory) { - yield config.executeLifecycleScript('preinstall'); - - yield factory(); - - // npm behaviour, seems kinda funky but yay compatibility - yield config.executeLifecycleScript('install'); - yield config.executeLifecycleScript('postinstall'); - - if (!config.production) { - if (!config.disablePrepublish) { - yield config.executeLifecycleScript('prepublish'); - } - yield config.executeLifecycleScript('prepare'); - } - }); - - return function wrapLifecycle(_x15, _x16, _x17) { - return _ref32.apply(this, arguments); - }; -})(); - -exports.hasWrapper = hasWrapper; -exports.setFlags = setFlags; - -var _objectPath; - -function _load_objectPath() { - return _objectPath = _interopRequireDefault(__webpack_require__(304)); -} - -var _hooks; - -function _load_hooks() { - return _hooks = __webpack_require__(368); -} - -var _index; - -function _load_index() { - return _index = _interopRequireDefault(__webpack_require__(218)); -} - -var _errors; - -function _load_errors() { - return _errors = __webpack_require__(6); -} - -var _integrityChecker; - -function _load_integrityChecker() { - return _integrityChecker = _interopRequireDefault(__webpack_require__(206)); -} - -var _lockfile; - -function _load_lockfile() { - return _lockfile = _interopRequireDefault(__webpack_require__(19)); -} - -var _lockfile2; - -function _load_lockfile2() { - return _lockfile2 = __webpack_require__(19); -} - -var _packageFetcher; - -function _load_packageFetcher() { - return _packageFetcher = _interopRequireWildcard(__webpack_require__(208)); -} - -var _packageInstallScripts; - -function _load_packageInstallScripts() { - return _packageInstallScripts = _interopRequireDefault(__webpack_require__(525)); -} - -var _packageCompatibility; - -function _load_packageCompatibility() { - return _packageCompatibility = _interopRequireWildcard(__webpack_require__(207)); -} - -var _packageResolver; - -function _load_packageResolver() { - return _packageResolver = _interopRequireDefault(__webpack_require__(360)); -} - -var _packageLinker; - -function _load_packageLinker() { - return _packageLinker = _interopRequireDefault(__webpack_require__(209)); -} - -var _index2; - -function _load_index2() { - return _index2 = __webpack_require__(58); -} - -var _index3; - -function _load_index3() { - return _index3 = __webpack_require__(78); -} - -var _autoclean; - -function _load_autoclean() { - return _autoclean = __webpack_require__(348); -} - -var _constants; - -function _load_constants() { - return _constants = _interopRequireWildcard(__webpack_require__(8)); -} - -var _normalizePattern; - -function _load_normalizePattern() { - return _normalizePattern = __webpack_require__(37); -} - -var _fs; - -function _load_fs() { - return _fs = _interopRequireWildcard(__webpack_require__(5)); -} - -var _map; - -function _load_map() { - return _map = _interopRequireDefault(__webpack_require__(30)); -} - -var _yarnVersion; - -function _load_yarnVersion() { - return _yarnVersion = __webpack_require__(105); -} - -var _generatePnpMap; - -function _load_generatePnpMap() { - return _generatePnpMap = __webpack_require__(547); -} - -var _workspaceLayout; - -function _load_workspaceLayout() { - return _workspaceLayout = _interopRequireDefault(__webpack_require__(90)); -} - -var _resolutionMap; - -function _load_resolutionMap() { - return _resolutionMap = _interopRequireDefault(__webpack_require__(212)); -} - -var _guessName; - -function _load_guessName() { - return _guessName = _interopRequireDefault(__webpack_require__(169)); -} - -var _audit; - -function _load_audit() { - return _audit = _interopRequireDefault(__webpack_require__(347)); -} - -function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -const deepEqual = __webpack_require__(599); - -const emoji = __webpack_require__(302); -const invariant = __webpack_require__(9); -const path = __webpack_require__(0); -const semver = __webpack_require__(22); -const uuid = __webpack_require__(120); -const ssri = __webpack_require__(65); - -const ONE_DAY = 1000 * 60 * 60 * 24; - -/** - * Try and detect the installation method for Yarn and provide a command to update it with. - */ - -function getUpdateCommand(installationMethod) { - if (installationMethod === 'tar') { - return `curl --compressed -o- -L ${(_constants || _load_constants()).YARN_INSTALLER_SH} | bash`; - } - - if (installationMethod === 'homebrew') { - return 'brew upgrade yarn'; - } - - if (installationMethod === 'deb') { - return 'sudo apt-get update && sudo apt-get install yarn'; - } - - if (installationMethod === 'rpm') { - return 'sudo yum install yarn'; - } - - if (installationMethod === 'npm') { - return 'npm install --global yarn'; - } - - if (installationMethod === 'chocolatey') { - return 'choco upgrade yarn'; - } - - if (installationMethod === 'apk') { - return 'apk update && apk add -u yarn'; - } - - if (installationMethod === 'portage') { - return 'sudo emerge --sync && sudo emerge -au sys-apps/yarn'; - } - - return null; -} - -function getUpdateInstaller(installationMethod) { - // Windows - if (installationMethod === 'msi') { - return (_constants || _load_constants()).YARN_INSTALLER_MSI; - } - - return null; -} - -function normalizeFlags(config, rawFlags) { - const flags = { - // install - har: !!rawFlags.har, - ignorePlatform: !!rawFlags.ignorePlatform, - ignoreEngines: !!rawFlags.ignoreEngines, - ignoreScripts: !!rawFlags.ignoreScripts, - ignoreOptional: !!rawFlags.ignoreOptional, - force: !!rawFlags.force, - flat: !!rawFlags.flat, - lockfile: rawFlags.lockfile !== false, - pureLockfile: !!rawFlags.pureLockfile, - updateChecksums: !!rawFlags.updateChecksums, - skipIntegrityCheck: !!rawFlags.skipIntegrityCheck, - frozenLockfile: !!rawFlags.frozenLockfile, - linkDuplicates: !!rawFlags.linkDuplicates, - checkFiles: !!rawFlags.checkFiles, - audit: !!rawFlags.audit, - - // add - peer: !!rawFlags.peer, - dev: !!rawFlags.dev, - optional: !!rawFlags.optional, - exact: !!rawFlags.exact, - tilde: !!rawFlags.tilde, - ignoreWorkspaceRootCheck: !!rawFlags.ignoreWorkspaceRootCheck, - - // outdated, update-interactive - includeWorkspaceDeps: !!rawFlags.includeWorkspaceDeps, - - // add, remove, update - workspaceRootIsCwd: rawFlags.workspaceRootIsCwd !== false - }; - - if (config.getOption('ignore-scripts')) { - flags.ignoreScripts = true; - } - - if (config.getOption('ignore-platform')) { - flags.ignorePlatform = true; - } - - if (config.getOption('ignore-engines')) { - flags.ignoreEngines = true; - } - - if (config.getOption('ignore-optional')) { - flags.ignoreOptional = true; - } - - if (config.getOption('force')) { - flags.force = true; - } - - return flags; -} - -class Install { - constructor(flags, config, reporter, lockfile) { - this.rootManifestRegistries = []; - this.rootPatternsToOrigin = (0, (_map || _load_map()).default)(); - this.lockfile = lockfile; - this.reporter = reporter; - this.config = config; - this.flags = normalizeFlags(config, flags); - this.resolutions = (0, (_map || _load_map()).default)(); // Legacy resolutions field used for flat install mode - this.resolutionMap = new (_resolutionMap || _load_resolutionMap()).default(config); // Selective resolutions for nested dependencies - this.resolver = new (_packageResolver || _load_packageResolver()).default(config, lockfile, this.resolutionMap); - this.integrityChecker = new (_integrityChecker || _load_integrityChecker()).default(config); - this.linker = new (_packageLinker || _load_packageLinker()).default(config, this.resolver); - this.scripts = new (_packageInstallScripts || _load_packageInstallScripts()).default(config, this.resolver, this.flags.force); - } - - /** - * Create a list of dependency requests from the current directories manifests. - */ - - fetchRequestFromCwd(excludePatterns = [], ignoreUnusedPatterns = false) { - var _this = this; - - return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - const patterns = []; - const deps = []; - let resolutionDeps = []; - const manifest = {}; - - const ignorePatterns = []; - const usedPatterns = []; - let workspaceLayout; - - // some commands should always run in the context of the entire workspace - const cwd = _this.flags.includeWorkspaceDeps || _this.flags.workspaceRootIsCwd ? _this.config.lockfileFolder : _this.config.cwd; - - // non-workspaces are always root, otherwise check for workspace root - const cwdIsRoot = !_this.config.workspaceRootFolder || _this.config.lockfileFolder === cwd; - - // exclude package names that are in install args - const excludeNames = []; - for (var _iterator = excludePatterns, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) { - var _ref; - - if (_isArray) { - if (_i >= _iterator.length) break; - _ref = _iterator[_i++]; - } else { - _i = _iterator.next(); - if (_i.done) break; - _ref = _i.value; - } - - const pattern = _ref; - - if ((0, (_index3 || _load_index3()).getExoticResolver)(pattern)) { - excludeNames.push((0, (_guessName || _load_guessName()).default)(pattern)); - } else { - // extract the name - const parts = (0, (_normalizePattern || _load_normalizePattern()).normalizePattern)(pattern); - excludeNames.push(parts.name); - } - } - - const stripExcluded = function stripExcluded(manifest) { - for (var _iterator2 = excludeNames, _isArray2 = Array.isArray(_iterator2), _i2 = 0, _iterator2 = _isArray2 ? _iterator2 : _iterator2[Symbol.iterator]();;) { - var _ref2; - - if (_isArray2) { - if (_i2 >= _iterator2.length) break; - _ref2 = _iterator2[_i2++]; - } else { - _i2 = _iterator2.next(); - if (_i2.done) break; - _ref2 = _i2.value; - } - - const exclude = _ref2; - - if (manifest.dependencies && manifest.dependencies[exclude]) { - delete manifest.dependencies[exclude]; - } - if (manifest.devDependencies && manifest.devDependencies[exclude]) { - delete manifest.devDependencies[exclude]; - } - if (manifest.optionalDependencies && manifest.optionalDependencies[exclude]) { - delete manifest.optionalDependencies[exclude]; - } - } - }; - - for (var _iterator3 = Object.keys((_index2 || _load_index2()).registries), _isArray3 = Array.isArray(_iterator3), _i3 = 0, _iterator3 = _isArray3 ? _iterator3 : _iterator3[Symbol.iterator]();;) { - var _ref3; - - if (_isArray3) { - if (_i3 >= _iterator3.length) break; - _ref3 = _iterator3[_i3++]; - } else { - _i3 = _iterator3.next(); - if (_i3.done) break; - _ref3 = _i3.value; - } - - const registry = _ref3; - - const filename = (_index2 || _load_index2()).registries[registry].filename; - - const loc = path.join(cwd, filename); - if (!(yield (_fs || _load_fs()).exists(loc))) { - continue; - } - - _this.rootManifestRegistries.push(registry); - - const projectManifestJson = yield _this.config.readJson(loc); - yield (0, (_index || _load_index()).default)(projectManifestJson, cwd, _this.config, cwdIsRoot); - - Object.assign(_this.resolutions, projectManifestJson.resolutions); - Object.assign(manifest, projectManifestJson); - - _this.resolutionMap.init(_this.resolutions); - for (var _iterator4 = Object.keys(_this.resolutionMap.resolutionsByPackage), _isArray4 = Array.isArray(_iterator4), _i4 = 0, _iterator4 = _isArray4 ? _iterator4 : _iterator4[Symbol.iterator]();;) { - var _ref4; - - if (_isArray4) { - if (_i4 >= _iterator4.length) break; - _ref4 = _iterator4[_i4++]; - } else { - _i4 = _iterator4.next(); - if (_i4.done) break; - _ref4 = _i4.value; - } - - const packageName = _ref4; - - const optional = (_objectPath || _load_objectPath()).default.has(manifest.optionalDependencies, packageName) && _this.flags.ignoreOptional; - for (var _iterator8 = _this.resolutionMap.resolutionsByPackage[packageName], _isArray8 = Array.isArray(_iterator8), _i8 = 0, _iterator8 = _isArray8 ? _iterator8 : _iterator8[Symbol.iterator]();;) { - var _ref9; - - if (_isArray8) { - if (_i8 >= _iterator8.length) break; - _ref9 = _iterator8[_i8++]; - } else { - _i8 = _iterator8.next(); - if (_i8.done) break; - _ref9 = _i8.value; - } - - const _ref8 = _ref9; - const pattern = _ref8.pattern; - - resolutionDeps = [...resolutionDeps, { registry, pattern, optional, hint: 'resolution' }]; - } - } - - const pushDeps = function pushDeps(depType, manifest, { hint, optional }, isUsed) { - if (ignoreUnusedPatterns && !isUsed) { - return; - } - // We only take unused dependencies into consideration to get deterministic hoisting. - // Since flat mode doesn't care about hoisting and everything is top level and specified then we can safely - // leave these out. - if (_this.flags.flat && !isUsed) { - return; - } - const depMap = manifest[depType]; - for (const name in depMap) { - if (excludeNames.indexOf(name) >= 0) { - continue; - } - - let pattern = name; - if (!_this.lockfile.getLocked(pattern)) { - // when we use --save we save the dependency to the lockfile with just the name rather than the - // version combo - pattern += '@' + depMap[name]; - } - - // normalization made sure packages are mentioned only once - if (isUsed) { - usedPatterns.push(pattern); - } else { - ignorePatterns.push(pattern); - } - - _this.rootPatternsToOrigin[pattern] = depType; - patterns.push(pattern); - deps.push({ pattern, registry, hint, optional, workspaceName: manifest.name, workspaceLoc: manifest._loc }); - } - }; - - if (cwdIsRoot) { - pushDeps('dependencies', projectManifestJson, { hint: null, optional: false }, true); - pushDeps('devDependencies', projectManifestJson, { hint: 'dev', optional: false }, !_this.config.production); - pushDeps('optionalDependencies', projectManifestJson, { hint: 'optional', optional: true }, true); - } - - if (_this.config.workspaceRootFolder) { - const workspaceLoc = cwdIsRoot ? loc : path.join(_this.config.lockfileFolder, filename); - const workspacesRoot = path.dirname(workspaceLoc); - - let workspaceManifestJson = projectManifestJson; - if (!cwdIsRoot) { - // the manifest we read before was a child workspace, so get the root - workspaceManifestJson = yield _this.config.readJson(workspaceLoc); - yield (0, (_index || _load_index()).default)(workspaceManifestJson, workspacesRoot, _this.config, true); - } - - const workspaces = yield _this.config.resolveWorkspaces(workspacesRoot, workspaceManifestJson); - workspaceLayout = new (_workspaceLayout || _load_workspaceLayout()).default(workspaces, _this.config); - - // add virtual manifest that depends on all workspaces, this way package hoisters and resolvers will work fine - const workspaceDependencies = (0, (_extends2 || _load_extends()).default)({}, workspaceManifestJson.dependencies); - for (var _iterator5 = Object.keys(workspaces), _isArray5 = Array.isArray(_iterator5), _i5 = 0, _iterator5 = _isArray5 ? _iterator5 : _iterator5[Symbol.iterator]();;) { - var _ref5; - - if (_isArray5) { - if (_i5 >= _iterator5.length) break; - _ref5 = _iterator5[_i5++]; - } else { - _i5 = _iterator5.next(); - if (_i5.done) break; - _ref5 = _i5.value; - } - - const workspaceName = _ref5; - - const workspaceManifest = workspaces[workspaceName].manifest; - workspaceDependencies[workspaceName] = workspaceManifest.version; - - // include dependencies from all workspaces - if (_this.flags.includeWorkspaceDeps) { - pushDeps('dependencies', workspaceManifest, { hint: null, optional: false }, true); - pushDeps('devDependencies', workspaceManifest, { hint: 'dev', optional: false }, !_this.config.production); - pushDeps('optionalDependencies', workspaceManifest, { hint: 'optional', optional: true }, true); - } - } - const virtualDependencyManifest = { - _uid: '', - name: `workspace-aggregator-${uuid.v4()}`, - version: '1.0.0', - _registry: 'npm', - _loc: workspacesRoot, - dependencies: workspaceDependencies, - devDependencies: (0, (_extends2 || _load_extends()).default)({}, workspaceManifestJson.devDependencies), - optionalDependencies: (0, (_extends2 || _load_extends()).default)({}, workspaceManifestJson.optionalDependencies), - private: workspaceManifestJson.private, - workspaces: workspaceManifestJson.workspaces - }; - workspaceLayout.virtualManifestName = virtualDependencyManifest.name; - const virtualDep = {}; - virtualDep[virtualDependencyManifest.name] = virtualDependencyManifest.version; - workspaces[virtualDependencyManifest.name] = { loc: workspacesRoot, manifest: virtualDependencyManifest }; - - // ensure dependencies that should be excluded are stripped from the correct manifest - stripExcluded(cwdIsRoot ? virtualDependencyManifest : workspaces[projectManifestJson.name].manifest); - - pushDeps('workspaces', { workspaces: virtualDep }, { hint: 'workspaces', optional: false }, true); - - const implicitWorkspaceDependencies = (0, (_extends2 || _load_extends()).default)({}, workspaceDependencies); - - for (var _iterator6 = (_constants || _load_constants()).OWNED_DEPENDENCY_TYPES, _isArray6 = Array.isArray(_iterator6), _i6 = 0, _iterator6 = _isArray6 ? _iterator6 : _iterator6[Symbol.iterator]();;) { - var _ref6; - - if (_isArray6) { - if (_i6 >= _iterator6.length) break; - _ref6 = _iterator6[_i6++]; - } else { - _i6 = _iterator6.next(); - if (_i6.done) break; - _ref6 = _i6.value; - } - - const type = _ref6; - - for (var _iterator7 = Object.keys(projectManifestJson[type] || {}), _isArray7 = Array.isArray(_iterator7), _i7 = 0, _iterator7 = _isArray7 ? _iterator7 : _iterator7[Symbol.iterator]();;) { - var _ref7; - - if (_isArray7) { - if (_i7 >= _iterator7.length) break; - _ref7 = _iterator7[_i7++]; - } else { - _i7 = _iterator7.next(); - if (_i7.done) break; - _ref7 = _i7.value; - } - - const dependencyName = _ref7; - - delete implicitWorkspaceDependencies[dependencyName]; - } - } - - pushDeps('dependencies', { dependencies: implicitWorkspaceDependencies }, { hint: 'workspaces', optional: false }, true); - } - - break; - } - - // inherit root flat flag - if (manifest.flat) { - _this.flags.flat = true; - } - - return { - requests: [...resolutionDeps, ...deps], - patterns, - manifest, - usedPatterns, - ignorePatterns, - workspaceLayout - }; - })(); - } - - /** - * TODO description - */ - - prepareRequests(requests) { - return requests; - } - - preparePatterns(patterns) { - return patterns; - } - preparePatternsForLinking(patterns, cwdManifest, cwdIsRoot) { - return patterns; - } - - prepareManifests() { - var _this2 = this; - - return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - const manifests = yield _this2.config.getRootManifests(); - return manifests; - })(); - } - - bailout(patterns, workspaceLayout) { - var _this3 = this; - - return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - // We don't want to skip the audit - it could yield important errors - if (_this3.flags.audit) { - return false; - } - // PNP is so fast that the integrity check isn't pertinent - if (_this3.config.plugnplayEnabled) { - return false; - } - if (_this3.flags.skipIntegrityCheck || _this3.flags.force) { - return false; - } - const lockfileCache = _this3.lockfile.cache; - if (!lockfileCache) { - return false; - } - const lockfileClean = _this3.lockfile.parseResultType === 'success'; - const match = yield _this3.integrityChecker.check(patterns, lockfileCache, _this3.flags, workspaceLayout); - if (_this3.flags.frozenLockfile && (!lockfileClean || match.missingPatterns.length > 0)) { - throw new (_errors || _load_errors()).MessageError(_this3.reporter.lang('frozenLockfileError')); - } - - const haveLockfile = yield (_fs || _load_fs()).exists(path.join(_this3.config.lockfileFolder, (_constants || _load_constants()).LOCKFILE_FILENAME)); - - const lockfileIntegrityPresent = !_this3.lockfile.hasEntriesExistWithoutIntegrity(); - const integrityBailout = lockfileIntegrityPresent || !_this3.config.autoAddIntegrity; - - if (match.integrityMatches && haveLockfile && lockfileClean && integrityBailout) { - _this3.reporter.success(_this3.reporter.lang('upToDate')); - return true; - } - - if (match.integrityFileMissing && haveLockfile) { - // Integrity file missing, force script installations - _this3.scripts.setForce(true); - return false; - } - - if (match.hardRefreshRequired) { - // e.g. node version doesn't match, force script installations - _this3.scripts.setForce(true); - return false; - } - - if (!patterns.length && !match.integrityFileMissing) { - _this3.reporter.success(_this3.reporter.lang('nothingToInstall')); - yield _this3.createEmptyManifestFolders(); - yield _this3.saveLockfileAndIntegrity(patterns, workspaceLayout); - return true; - } - - return false; - })(); - } - - /** - * Produce empty folders for all used root manifests. - */ - - createEmptyManifestFolders() { - var _this4 = this; - - return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - if (_this4.config.modulesFolder) { - // already created - return; - } - - for (var _iterator9 = _this4.rootManifestRegistries, _isArray9 = Array.isArray(_iterator9), _i9 = 0, _iterator9 = _isArray9 ? _iterator9 : _iterator9[Symbol.iterator]();;) { - var _ref10; - - if (_isArray9) { - if (_i9 >= _iterator9.length) break; - _ref10 = _iterator9[_i9++]; - } else { - _i9 = _iterator9.next(); - if (_i9.done) break; - _ref10 = _i9.value; - } - - const registryName = _ref10; - const folder = _this4.config.registries[registryName].folder; - - yield (_fs || _load_fs()).mkdirp(path.join(_this4.config.lockfileFolder, folder)); - } - })(); - } - - /** - * TODO description - */ - - markIgnored(patterns) { - for (var _iterator10 = patterns, _isArray10 = Array.isArray(_iterator10), _i10 = 0, _iterator10 = _isArray10 ? _iterator10 : _iterator10[Symbol.iterator]();;) { - var _ref11; - - if (_isArray10) { - if (_i10 >= _iterator10.length) break; - _ref11 = _iterator10[_i10++]; - } else { - _i10 = _iterator10.next(); - if (_i10.done) break; - _ref11 = _i10.value; - } - - const pattern = _ref11; - - const manifest = this.resolver.getStrictResolvedPattern(pattern); - const ref = manifest._reference; - invariant(ref, 'expected package reference'); - - // just mark the package as ignored. if the package is used by a required package, the hoister - // will take care of that. - ref.ignore = true; - } - } - - /** - * helper method that gets only recent manifests - * used by global.ls command - */ - getFlattenedDeps() { - var _this5 = this; - - return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - var _ref12 = yield _this5.fetchRequestFromCwd(); - - const depRequests = _ref12.requests, - rawPatterns = _ref12.patterns; - - - yield _this5.resolver.init(depRequests, {}); - - const manifests = yield (_packageFetcher || _load_packageFetcher()).fetch(_this5.resolver.getManifests(), _this5.config); - _this5.resolver.updateManifests(manifests); - - return _this5.flatten(rawPatterns); - })(); - } - - /** - * TODO description - */ - - init() { - var _this6 = this; - - return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - _this6.checkUpdate(); - - // warn if we have a shrinkwrap - if (yield (_fs || _load_fs()).exists(path.join(_this6.config.lockfileFolder, (_constants || _load_constants()).NPM_SHRINKWRAP_FILENAME))) { - _this6.reporter.warn(_this6.reporter.lang('shrinkwrapWarning')); - } - - // warn if we have an npm lockfile - if (yield (_fs || _load_fs()).exists(path.join(_this6.config.lockfileFolder, (_constants || _load_constants()).NPM_LOCK_FILENAME))) { - _this6.reporter.warn(_this6.reporter.lang('npmLockfileWarning')); - } - - if (_this6.config.plugnplayEnabled) { - _this6.reporter.info(_this6.reporter.lang('plugnplaySuggestV2L1')); - _this6.reporter.info(_this6.reporter.lang('plugnplaySuggestV2L2')); - } - - let flattenedTopLevelPatterns = []; - const steps = []; - - var _ref13 = yield _this6.fetchRequestFromCwd(); - - const depRequests = _ref13.requests, - rawPatterns = _ref13.patterns, - ignorePatterns = _ref13.ignorePatterns, - workspaceLayout = _ref13.workspaceLayout, - manifest = _ref13.manifest; - - let topLevelPatterns = []; - - const artifacts = yield _this6.integrityChecker.getArtifacts(); - if (artifacts) { - _this6.linker.setArtifacts(artifacts); - _this6.scripts.setArtifacts(artifacts); - } - - if ((_packageCompatibility || _load_packageCompatibility()).shouldCheck(manifest, _this6.flags)) { - steps.push((() => { - var _ref14 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (curr, total) { - _this6.reporter.step(curr, total, _this6.reporter.lang('checkingManifest'), emoji.get('mag')); - yield _this6.checkCompatibility(); - }); - - return function (_x, _x2) { - return _ref14.apply(this, arguments); - }; - })()); - } - - const audit = new (_audit || _load_audit()).default(_this6.config, _this6.reporter, { groups: (_constants || _load_constants()).OWNED_DEPENDENCY_TYPES }); - let auditFoundProblems = false; - - steps.push(function (curr, total) { - return (0, (_hooks || _load_hooks()).callThroughHook)('resolveStep', (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - _this6.reporter.step(curr, total, _this6.reporter.lang('resolvingPackages'), emoji.get('mag')); - yield _this6.resolver.init(_this6.prepareRequests(depRequests), { - isFlat: _this6.flags.flat, - isFrozen: _this6.flags.frozenLockfile, - workspaceLayout - }); - topLevelPatterns = _this6.preparePatterns(rawPatterns); - flattenedTopLevelPatterns = yield _this6.flatten(topLevelPatterns); - return { bailout: !_this6.flags.audit && (yield _this6.bailout(topLevelPatterns, workspaceLayout)) }; - })); - }); - - if (_this6.flags.audit) { - steps.push(function (curr, total) { - return (0, (_hooks || _load_hooks()).callThroughHook)('auditStep', (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - _this6.reporter.step(curr, total, _this6.reporter.lang('auditRunning'), emoji.get('mag')); - if (_this6.flags.offline) { - _this6.reporter.warn(_this6.reporter.lang('auditOffline')); - return { bailout: false }; - } - const preparedManifests = yield _this6.prepareManifests(); - // $FlowFixMe - Flow considers `m` in the map operation to be "mixed", so does not recognize `m.object` - const mergedManifest = Object.assign({}, ...Object.values(preparedManifests).map(function (m) { - return m.object; - })); - const auditVulnerabilityCounts = yield audit.performAudit(mergedManifest, _this6.lockfile, _this6.resolver, _this6.linker, topLevelPatterns); - auditFoundProblems = auditVulnerabilityCounts.info || auditVulnerabilityCounts.low || auditVulnerabilityCounts.moderate || auditVulnerabilityCounts.high || auditVulnerabilityCounts.critical; - return { bailout: yield _this6.bailout(topLevelPatterns, workspaceLayout) }; - })); - }); - } - - steps.push(function (curr, total) { - return (0, (_hooks || _load_hooks()).callThroughHook)('fetchStep', (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - _this6.markIgnored(ignorePatterns); - _this6.reporter.step(curr, total, _this6.reporter.lang('fetchingPackages'), emoji.get('truck')); - const manifests = yield (_packageFetcher || _load_packageFetcher()).fetch(_this6.resolver.getManifests(), _this6.config); - _this6.resolver.updateManifests(manifests); - yield (_packageCompatibility || _load_packageCompatibility()).check(_this6.resolver.getManifests(), _this6.config, _this6.flags.ignoreEngines); - })); - }); - - steps.push(function (curr, total) { - return (0, (_hooks || _load_hooks()).callThroughHook)('linkStep', (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - // remove integrity hash to make this operation atomic - yield _this6.integrityChecker.removeIntegrityFile(); - _this6.reporter.step(curr, total, _this6.reporter.lang('linkingDependencies'), emoji.get('link')); - flattenedTopLevelPatterns = _this6.preparePatternsForLinking(flattenedTopLevelPatterns, manifest, _this6.config.lockfileFolder === _this6.config.cwd); - yield _this6.linker.init(flattenedTopLevelPatterns, workspaceLayout, { - linkDuplicates: _this6.flags.linkDuplicates, - ignoreOptional: _this6.flags.ignoreOptional - }); - })); - }); - - if (_this6.config.plugnplayEnabled) { - steps.push(function (curr, total) { - return (0, (_hooks || _load_hooks()).callThroughHook)('pnpStep', (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - const pnpPath = `${_this6.config.lockfileFolder}/${(_constants || _load_constants()).PNP_FILENAME}`; - - const code = yield (0, (_generatePnpMap || _load_generatePnpMap()).generatePnpMap)(_this6.config, flattenedTopLevelPatterns, { - resolver: _this6.resolver, - reporter: _this6.reporter, - targetPath: pnpPath, - workspaceLayout - }); - - try { - const file = yield (_fs || _load_fs()).readFile(pnpPath); - if (file === code) { - return; - } - } catch (error) {} - - yield (_fs || _load_fs()).writeFile(pnpPath, code); - yield (_fs || _load_fs()).chmod(pnpPath, 0o755); - })); - }); - } - - steps.push(function (curr, total) { - return (0, (_hooks || _load_hooks()).callThroughHook)('buildStep', (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - _this6.reporter.step(curr, total, _this6.flags.force ? _this6.reporter.lang('rebuildingPackages') : _this6.reporter.lang('buildingFreshPackages'), emoji.get('hammer')); - - if (_this6.config.ignoreScripts) { - _this6.reporter.warn(_this6.reporter.lang('ignoredScripts')); - } else { - yield _this6.scripts.init(flattenedTopLevelPatterns); - } - })); - }); - - if (_this6.flags.har) { - steps.push((() => { - var _ref21 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (curr, total) { - const formattedDate = new Date().toISOString().replace(/:/g, '-'); - const filename = `yarn-install_${formattedDate}.har`; - _this6.reporter.step(curr, total, _this6.reporter.lang('savingHar', filename), emoji.get('black_circle_for_record')); - yield _this6.config.requestManager.saveHar(filename); - }); - - return function (_x3, _x4) { - return _ref21.apply(this, arguments); - }; - })()); - } - - if (yield _this6.shouldClean()) { - steps.push((() => { - var _ref22 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (curr, total) { - _this6.reporter.step(curr, total, _this6.reporter.lang('cleaningModules'), emoji.get('recycle')); - yield (0, (_autoclean || _load_autoclean()).clean)(_this6.config, _this6.reporter); - }); - - return function (_x5, _x6) { - return _ref22.apply(this, arguments); - }; - })()); - } - - let currentStep = 0; - for (var _iterator11 = steps, _isArray11 = Array.isArray(_iterator11), _i11 = 0, _iterator11 = _isArray11 ? _iterator11 : _iterator11[Symbol.iterator]();;) { - var _ref23; - - if (_isArray11) { - if (_i11 >= _iterator11.length) break; - _ref23 = _iterator11[_i11++]; - } else { - _i11 = _iterator11.next(); - if (_i11.done) break; - _ref23 = _i11.value; - } - - const step = _ref23; - - const stepResult = yield step(++currentStep, steps.length); - if (stepResult && stepResult.bailout) { - if (_this6.flags.audit) { - audit.summary(); - } - if (auditFoundProblems) { - _this6.reporter.warn(_this6.reporter.lang('auditRunAuditForDetails')); - } - _this6.maybeOutputUpdate(); - return flattenedTopLevelPatterns; - } - } - - // fin! - if (_this6.flags.audit) { - audit.summary(); - } - if (auditFoundProblems) { - _this6.reporter.warn(_this6.reporter.lang('auditRunAuditForDetails')); - } - yield _this6.saveLockfileAndIntegrity(topLevelPatterns, workspaceLayout); - yield _this6.persistChanges(); - _this6.maybeOutputUpdate(); - _this6.config.requestManager.clearCache(); - return flattenedTopLevelPatterns; - })(); - } - - checkCompatibility() { - var _this7 = this; - - return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - var _ref24 = yield _this7.fetchRequestFromCwd(); - - const manifest = _ref24.manifest; - - yield (_packageCompatibility || _load_packageCompatibility()).checkOne(manifest, _this7.config, _this7.flags.ignoreEngines); - })(); - } - - persistChanges() { - var _this8 = this; - - return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - // get all the different registry manifests in this folder - const manifests = yield _this8.config.getRootManifests(); - - if (yield _this8.applyChanges(manifests)) { - yield _this8.config.saveRootManifests(manifests); - } - })(); - } - - applyChanges(manifests) { - let hasChanged = false; - - if (this.config.plugnplayPersist) { - const object = manifests.npm.object; - - - if (typeof object.installConfig !== 'object') { - object.installConfig = {}; - } - - if (this.config.plugnplayEnabled && object.installConfig.pnp !== true) { - object.installConfig.pnp = true; - hasChanged = true; - } else if (!this.config.plugnplayEnabled && typeof object.installConfig.pnp !== 'undefined') { - delete object.installConfig.pnp; - hasChanged = true; - } - - if (Object.keys(object.installConfig).length === 0) { - delete object.installConfig; - } - } - - return Promise.resolve(hasChanged); - } - - /** - * Check if we should run the cleaning step. - */ - - shouldClean() { - return (_fs || _load_fs()).exists(path.join(this.config.lockfileFolder, (_constants || _load_constants()).CLEAN_FILENAME)); - } - - /** - * TODO - */ - - flatten(patterns) { - var _this9 = this; - - return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - if (!_this9.flags.flat) { - return patterns; - } - - const flattenedPatterns = []; - - for (var _iterator12 = _this9.resolver.getAllDependencyNamesByLevelOrder(patterns), _isArray12 = Array.isArray(_iterator12), _i12 = 0, _iterator12 = _isArray12 ? _iterator12 : _iterator12[Symbol.iterator]();;) { - var _ref25; - - if (_isArray12) { - if (_i12 >= _iterator12.length) break; - _ref25 = _iterator12[_i12++]; - } else { - _i12 = _iterator12.next(); - if (_i12.done) break; - _ref25 = _i12.value; - } - - const name = _ref25; - - const infos = _this9.resolver.getAllInfoForPackageName(name).filter(function (manifest) { - const ref = manifest._reference; - invariant(ref, 'expected package reference'); - return !ref.ignore; - }); - - if (infos.length === 0) { - continue; - } - - if (infos.length === 1) { - // single version of this package - // take out a single pattern as multiple patterns may have resolved to this package - flattenedPatterns.push(_this9.resolver.patternsByPackage[name][0]); - continue; - } - - const options = infos.map(function (info) { - const ref = info._reference; - invariant(ref, 'expected reference'); - return { - // TODO `and is required by {PARENT}`, - name: _this9.reporter.lang('manualVersionResolutionOption', ref.patterns.join(', '), info.version), - - value: info.version - }; - }); - const versions = infos.map(function (info) { - return info.version; - }); - let version; - - const resolutionVersion = _this9.resolutions[name]; - if (resolutionVersion && versions.indexOf(resolutionVersion) >= 0) { - // use json `resolution` version - version = resolutionVersion; - } else { - version = yield _this9.reporter.select(_this9.reporter.lang('manualVersionResolution', name), _this9.reporter.lang('answer'), options); - _this9.resolutions[name] = version; - } - - flattenedPatterns.push(_this9.resolver.collapseAllVersionsOfPackage(name, version)); - } - - // save resolutions to their appropriate root manifest - if (Object.keys(_this9.resolutions).length) { - const manifests = yield _this9.config.getRootManifests(); - - for (const name in _this9.resolutions) { - const version = _this9.resolutions[name]; - - const patterns = _this9.resolver.patternsByPackage[name]; - if (!patterns) { - continue; - } - - let manifest; - for (var _iterator13 = patterns, _isArray13 = Array.isArray(_iterator13), _i13 = 0, _iterator13 = _isArray13 ? _iterator13 : _iterator13[Symbol.iterator]();;) { - var _ref26; - - if (_isArray13) { - if (_i13 >= _iterator13.length) break; - _ref26 = _iterator13[_i13++]; - } else { - _i13 = _iterator13.next(); - if (_i13.done) break; - _ref26 = _i13.value; - } - - const pattern = _ref26; - - manifest = _this9.resolver.getResolvedPattern(pattern); - if (manifest) { - break; - } - } - invariant(manifest, 'expected manifest'); - - const ref = manifest._reference; - invariant(ref, 'expected reference'); - - const object = manifests[ref.registry].object; - object.resolutions = object.resolutions || {}; - object.resolutions[name] = version; - } - - yield _this9.config.saveRootManifests(manifests); - } - - return flattenedPatterns; - })(); - } - - /** - * Remove offline tarballs that are no longer required - */ - - pruneOfflineMirror(lockfile) { - var _this10 = this; - - return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - const mirror = _this10.config.getOfflineMirrorPath(); - if (!mirror) { - return; - } - - const requiredTarballs = new Set(); - for (const dependency in lockfile) { - const resolved = lockfile[dependency].resolved; - if (resolved) { - const basename = path.basename(resolved.split('#')[0]); - if (dependency[0] === '@' && basename[0] !== '@') { - requiredTarballs.add(`${dependency.split('/')[0]}-${basename}`); - } - requiredTarballs.add(basename); - } - } - - const mirrorFiles = yield (_fs || _load_fs()).walk(mirror); - for (var _iterator14 = mirrorFiles, _isArray14 = Array.isArray(_iterator14), _i14 = 0, _iterator14 = _isArray14 ? _iterator14 : _iterator14[Symbol.iterator]();;) { - var _ref27; - - if (_isArray14) { - if (_i14 >= _iterator14.length) break; - _ref27 = _iterator14[_i14++]; - } else { - _i14 = _iterator14.next(); - if (_i14.done) break; - _ref27 = _i14.value; - } - - const file = _ref27; - - const isTarball = path.extname(file.basename) === '.tgz'; - // if using experimental-pack-script-packages-in-mirror flag, don't unlink prebuilt packages - const hasPrebuiltPackage = file.relative.startsWith('prebuilt/'); - if (isTarball && !hasPrebuiltPackage && !requiredTarballs.has(file.basename)) { - yield (_fs || _load_fs()).unlink(file.absolute); - } - } - })(); - } - - /** - * Save updated integrity and lockfiles. - */ - - saveLockfileAndIntegrity(patterns, workspaceLayout) { - var _this11 = this; - - return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - const resolvedPatterns = {}; - Object.keys(_this11.resolver.patterns).forEach(function (pattern) { - if (!workspaceLayout || !workspaceLayout.getManifestByPattern(pattern)) { - resolvedPatterns[pattern] = _this11.resolver.patterns[pattern]; - } - }); - - // TODO this code is duplicated in a few places, need a common way to filter out workspace patterns from lockfile - patterns = patterns.filter(function (p) { - return !workspaceLayout || !workspaceLayout.getManifestByPattern(p); - }); - - const lockfileBasedOnResolver = _this11.lockfile.getLockfile(resolvedPatterns); - - if (_this11.config.pruneOfflineMirror) { - yield _this11.pruneOfflineMirror(lockfileBasedOnResolver); - } - - // write integrity hash - if (!_this11.config.plugnplayEnabled) { - yield _this11.integrityChecker.save(patterns, lockfileBasedOnResolver, _this11.flags, workspaceLayout, _this11.scripts.getArtifacts()); - } - - // --no-lockfile or --pure-lockfile or --frozen-lockfile - if (_this11.flags.lockfile === false || _this11.flags.pureLockfile || _this11.flags.frozenLockfile) { - return; - } - - const lockFileHasAllPatterns = patterns.every(function (p) { - return _this11.lockfile.getLocked(p); - }); - const lockfilePatternsMatch = Object.keys(_this11.lockfile.cache || {}).every(function (p) { - return lockfileBasedOnResolver[p]; - }); - const resolverPatternsAreSameAsInLockfile = Object.keys(lockfileBasedOnResolver).every(function (pattern) { - const manifest = _this11.lockfile.getLocked(pattern); - return manifest && manifest.resolved === lockfileBasedOnResolver[pattern].resolved && deepEqual(manifest.prebuiltVariants, lockfileBasedOnResolver[pattern].prebuiltVariants); - }); - const integrityPatternsAreSameAsInLockfile = Object.keys(lockfileBasedOnResolver).every(function (pattern) { - const existingIntegrityInfo = lockfileBasedOnResolver[pattern].integrity; - if (!existingIntegrityInfo) { - // if this entry does not have an integrity, no need to re-write the lockfile because of it - return true; - } - const manifest = _this11.lockfile.getLocked(pattern); - if (manifest && manifest.integrity) { - const manifestIntegrity = ssri.stringify(manifest.integrity); - return manifestIntegrity === existingIntegrityInfo; - } - return false; - }); - - // remove command is followed by install with force, lockfile will be rewritten in any case then - if (!_this11.flags.force && _this11.lockfile.parseResultType === 'success' && lockFileHasAllPatterns && lockfilePatternsMatch && resolverPatternsAreSameAsInLockfile && integrityPatternsAreSameAsInLockfile && patterns.length) { - return; - } - - // build lockfile location - const loc = path.join(_this11.config.lockfileFolder, (_constants || _load_constants()).LOCKFILE_FILENAME); - - // write lockfile - const lockSource = (0, (_lockfile2 || _load_lockfile2()).stringify)(lockfileBasedOnResolver, false, _this11.config.enableLockfileVersions); - yield (_fs || _load_fs()).writeFilePreservingEol(loc, lockSource); - - _this11._logSuccessSaveLockfile(); - })(); - } - - _logSuccessSaveLockfile() { - this.reporter.success(this.reporter.lang('savedLockfile')); - } - - /** - * Load the dependency graph of the current install. Only does package resolving and wont write to the cwd. - */ - hydrate(ignoreUnusedPatterns) { - var _this12 = this; - - return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - const request = yield _this12.fetchRequestFromCwd([], ignoreUnusedPatterns); - const depRequests = request.requests, - rawPatterns = request.patterns, - ignorePatterns = request.ignorePatterns, - workspaceLayout = request.workspaceLayout; - - - yield _this12.resolver.init(depRequests, { - isFlat: _this12.flags.flat, - isFrozen: _this12.flags.frozenLockfile, - workspaceLayout - }); - yield _this12.flatten(rawPatterns); - _this12.markIgnored(ignorePatterns); - - // fetch packages, should hit cache most of the time - const manifests = yield (_packageFetcher || _load_packageFetcher()).fetch(_this12.resolver.getManifests(), _this12.config); - _this12.resolver.updateManifests(manifests); - yield (_packageCompatibility || _load_packageCompatibility()).check(_this12.resolver.getManifests(), _this12.config, _this12.flags.ignoreEngines); - - // expand minimal manifests - for (var _iterator15 = _this12.resolver.getManifests(), _isArray15 = Array.isArray(_iterator15), _i15 = 0, _iterator15 = _isArray15 ? _iterator15 : _iterator15[Symbol.iterator]();;) { - var _ref28; - - if (_isArray15) { - if (_i15 >= _iterator15.length) break; - _ref28 = _iterator15[_i15++]; - } else { - _i15 = _iterator15.next(); - if (_i15.done) break; - _ref28 = _i15.value; - } - - const manifest = _ref28; - - const ref = manifest._reference; - invariant(ref, 'expected reference'); - const type = ref.remote.type; - // link specifier won't ever hit cache - - let loc = ''; - if (type === 'link') { - continue; - } else if (type === 'workspace') { - if (!ref.remote.reference) { - continue; - } - loc = ref.remote.reference; - } else { - loc = _this12.config.generateModuleCachePath(ref); - } - const newPkg = yield _this12.config.readManifest(loc); - yield _this12.resolver.updateManifest(ref, newPkg); - } - - return request; - })(); - } - - /** - * Check for updates every day and output a nag message if there's a newer version. - */ - - checkUpdate() { - if (this.config.nonInteractive) { - // don't show upgrade dialog on CI or non-TTY terminals - return; - } - - // don't check if disabled - if (this.config.getOption('disable-self-update-check')) { - return; - } - - // only check for updates once a day - const lastUpdateCheck = Number(this.config.getOption('lastUpdateCheck')) || 0; - if (lastUpdateCheck && Date.now() - lastUpdateCheck < ONE_DAY) { - return; - } - - // don't bug for updates on tagged releases - if ((_yarnVersion || _load_yarnVersion()).version.indexOf('-') >= 0) { - return; - } - - this._checkUpdate().catch(() => { - // swallow errors - }); - } - - _checkUpdate() { - var _this13 = this; - - return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { - let latestVersion = yield _this13.config.requestManager.request({ - url: (_constants || _load_constants()).SELF_UPDATE_VERSION_URL - }); - invariant(typeof latestVersion === 'string', 'expected string'); - latestVersion = latestVersion.trim(); - if (!semver.valid(latestVersion)) { - return; - } - - // ensure we only check for updates periodically - _this13.config.registries.yarn.saveHomeConfig({ - lastUpdateCheck: Date.now() - }); - - if (semver.gt(latestVersion, (_yarnVersion || _load_yarnVersion()).version)) { - const installationMethod = yield (0, (_yarnVersion || _load_yarnVersion()).getInstallationMethod)(); - _this13.maybeOutputUpdate = function () { - _this13.reporter.warn(_this13.reporter.lang('yarnOutdated', latestVersion, (_yarnVersion || _load_yarnVersion()).version)); - - const command = getUpdateCommand(installationMethod); - if (command) { - _this13.reporter.info(_this13.reporter.lang('yarnOutdatedCommand')); - _this13.reporter.command(command); - } else { - const installer = getUpdateInstaller(installationMethod); - if (installer) { - _this13.reporter.info(_this13.reporter.lang('yarnOutdatedInstaller', installer)); - } - } - }; - } - })(); - } - - /** - * Method to override with a possible upgrade message. - */ - - maybeOutputUpdate() {} -} - -exports.Install = Install; -function hasWrapper(commander, args) { - return true; -} - -function setFlags(commander) { - commander.description('Yarn install is used to install all dependencies for a project.'); - commander.usage('install [flags]'); - commander.option('-A, --audit', 'Run vulnerability audit on installed packages'); - commander.option('-g, --global', 'DEPRECATED'); - commander.option('-S, --save', 'DEPRECATED - save package to your `dependencies`'); - commander.option('-D, --save-dev', 'DEPRECATED - save package to your `devDependencies`'); - commander.option('-P, --save-peer', 'DEPRECATED - save package to your `peerDependencies`'); - commander.option('-O, --save-optional', 'DEPRECATED - save package to your `optionalDependencies`'); - commander.option('-E, --save-exact', 'DEPRECATED'); - commander.option('-T, --save-tilde', 'DEPRECATED'); -} - -/***/ }), -/* 35 */ -/***/ (function(module, exports, __webpack_require__) { - -var isObject = __webpack_require__(53); -module.exports = function (it) { - if (!isObject(it)) throw TypeError(it + ' is not an object!'); - return it; -}; - - -/***/ }), -/* 36 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return SubjectSubscriber; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Subject; }); -/* unused harmony export AnonymousSubject */ -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tslib__ = __webpack_require__(1); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__Observable__ = __webpack_require__(12); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__Subscriber__ = __webpack_require__(7); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__Subscription__ = __webpack_require__(25); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__util_ObjectUnsubscribedError__ = __webpack_require__(190); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__SubjectSubscription__ = __webpack_require__(422); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__internal_symbol_rxSubscriber__ = __webpack_require__(322); -/** PURE_IMPORTS_START tslib,_Observable,_Subscriber,_Subscription,_util_ObjectUnsubscribedError,_SubjectSubscription,_internal_symbol_rxSubscriber PURE_IMPORTS_END */ - - - - - - - -var SubjectSubscriber = /*@__PURE__*/ (function (_super) { - __WEBPACK_IMPORTED_MODULE_0_tslib__["a" /* __extends */](SubjectSubscriber, _super); - function SubjectSubscriber(destination) { - var _this = _super.call(this, destination) || this; - _this.destination = destination; - return _this; - } - return SubjectSubscriber; -}(__WEBPACK_IMPORTED_MODULE_2__Subscriber__["a" /* Subscriber */])); - -var Subject = /*@__PURE__*/ (function (_super) { - __WEBPACK_IMPORTED_MODULE_0_tslib__["a" /* __extends */](Subject, _super); - function Subject() { - var _this = _super.call(this) || this; - _this.observers = []; - _this.closed = false; - _this.isStopped = false; - _this.hasError = false; - _this.thrownError = null; - return _this; - } - Subject.prototype[__WEBPACK_IMPORTED_MODULE_6__internal_symbol_rxSubscriber__["a" /* rxSubscriber */]] = function () { - return new SubjectSubscriber(this); - }; - Subject.prototype.lift = function (operator) { - var subject = new AnonymousSubject(this, this); - subject.operator = operator; - return subject; - }; - Subject.prototype.next = function (value) { - if (this.closed) { - throw new __WEBPACK_IMPORTED_MODULE_4__util_ObjectUnsubscribedError__["a" /* ObjectUnsubscribedError */](); - } - if (!this.isStopped) { - var observers = this.observers; - var len = observers.length; - var copy = observers.slice(); - for (var i = 0; i < len; i++) { - copy[i].next(value); - } - } - }; - Subject.prototype.error = function (err) { - if (this.closed) { - throw new __WEBPACK_IMPORTED_MODULE_4__util_ObjectUnsubscribedError__["a" /* ObjectUnsubscribedError */](); - } - this.hasError = true; - this.thrownError = err; - this.isStopped = true; - var observers = this.observers; - var len = observers.length; - var copy = observers.slice(); - for (var i = 0; i < len; i++) { - copy[i].error(err); - } - this.observers.length = 0; - }; - Subject.prototype.complete = function () { - if (this.closed) { - throw new __WEBPACK_IMPORTED_MODULE_4__util_ObjectUnsubscribedError__["a" /* ObjectUnsubscribedError */](); - } - this.isStopped = true; - var observers = this.observers; - var len = observers.length; - var copy = observers.slice(); - for (var i = 0; i < len; i++) { - copy[i].complete(); - } - this.observers.length = 0; - }; - Subject.prototype.unsubscribe = function () { - this.isStopped = true; - this.closed = true; - this.observers = null; - }; - Subject.prototype._trySubscribe = function (subscriber) { - if (this.closed) { - throw new __WEBPACK_IMPORTED_MODULE_4__util_ObjectUnsubscribedError__["a" /* ObjectUnsubscribedError */](); - } - else { - return _super.prototype._trySubscribe.call(this, subscriber); - } - }; - Subject.prototype._subscribe = function (subscriber) { - if (this.closed) { - throw new __WEBPACK_IMPORTED_MODULE_4__util_ObjectUnsubscribedError__["a" /* ObjectUnsubscribedError */](); - } - else if (this.hasError) { - subscriber.error(this.thrownError); - return __WEBPACK_IMPORTED_MODULE_3__Subscription__["a" /* Subscription */].EMPTY; - } - else if (this.isStopped) { - subscriber.complete(); - return __WEBPACK_IMPORTED_MODULE_3__Subscription__["a" /* Subscription */].EMPTY; - } - else { - this.observers.push(subscriber); - return new __WEBPACK_IMPORTED_MODULE_5__SubjectSubscription__["a" /* SubjectSubscription */](this, subscriber); - } - }; - Subject.prototype.asObservable = function () { - var observable = new __WEBPACK_IMPORTED_MODULE_1__Observable__["a" /* Observable */](); - observable.source = this; - return observable; - }; - Subject.create = function (destination, source) { - return new AnonymousSubject(destination, source); - }; - return Subject; -}(__WEBPACK_IMPORTED_MODULE_1__Observable__["a" /* Observable */])); - -var AnonymousSubject = /*@__PURE__*/ (function (_super) { - __WEBPACK_IMPORTED_MODULE_0_tslib__["a" /* __extends */](AnonymousSubject, _super); - function AnonymousSubject(destination, source) { - var _this = _super.call(this) || this; - _this.destination = destination; - _this.source = source; - return _this; - } - AnonymousSubject.prototype.next = function (value) { - var destination = this.destination; - if (destination && destination.next) { - destination.next(value); - } - }; - AnonymousSubject.prototype.error = function (err) { - var destination = this.destination; - if (destination && destination.error) { - this.destination.error(err); - } - }; - AnonymousSubject.prototype.complete = function () { - var destination = this.destination; - if (destination && destination.complete) { - this.destination.complete(); - } - }; - AnonymousSubject.prototype._subscribe = function (subscriber) { - var source = this.source; - if (source) { - return this.source.subscribe(subscriber); - } - else { - return __WEBPACK_IMPORTED_MODULE_3__Subscription__["a" /* Subscription */].EMPTY; - } - }; - return AnonymousSubject; -}(Subject)); - -//# sourceMappingURL=Subject.js.map - - -/***/ }), -/* 37 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.normalizePattern = normalizePattern; - -/** - * Explode and normalize a pattern into its name and range. - */ - -function normalizePattern(pattern) { - let hasVersion = false; - let range = 'latest'; - let name = pattern; - - // if we're a scope then remove the @ and add it back later - let isScoped = false; - if (name[0] === '@') { - isScoped = true; - name = name.slice(1); - } - - // take first part as the name - const parts = name.split('@'); - if (parts.length > 1) { - name = parts.shift(); - range = parts.join('@'); - - if (range) { - hasVersion = true; - } else { - range = '*'; - } - } - - // add back @ scope suffix - if (isScoped) { - name = `@${name}`; - } - - return { name, range, hasVersion }; -} - -/***/ }), -/* 38 */ -/***/ (function(module, exports, __webpack_require__) { - -/* WEBPACK VAR INJECTION */(function(module) {var __WEBPACK_AMD_DEFINE_RESULT__;/** - * @license - * Lodash - * Copyright JS Foundation and other contributors - * Released under MIT license - * Based on Underscore.js 1.8.3 - * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors - */ -;(function() { - - /** Used as a safe reference for `undefined` in pre-ES5 environments. */ - var undefined; - - /** Used as the semantic version number. */ - var VERSION = '4.17.10'; - - /** Used as the size to enable large array optimizations. */ - var LARGE_ARRAY_SIZE = 200; - - /** Error message constants. */ - var CORE_ERROR_TEXT = 'Unsupported core-js use. Try https://npms.io/search?q=ponyfill.', - FUNC_ERROR_TEXT = 'Expected a function'; - - /** Used to stand-in for `undefined` hash values. */ - var HASH_UNDEFINED = '__lodash_hash_undefined__'; - - /** Used as the maximum memoize cache size. */ - var MAX_MEMOIZE_SIZE = 500; - - /** Used as the internal argument placeholder. */ - var PLACEHOLDER = '__lodash_placeholder__'; - - /** Used to compose bitmasks for cloning. */ - var CLONE_DEEP_FLAG = 1, - CLONE_FLAT_FLAG = 2, - CLONE_SYMBOLS_FLAG = 4; - - /** Used to compose bitmasks for value comparisons. */ - var COMPARE_PARTIAL_FLAG = 1, - COMPARE_UNORDERED_FLAG = 2; - - /** Used to compose bitmasks for function metadata. */ - var WRAP_BIND_FLAG = 1, - WRAP_BIND_KEY_FLAG = 2, - WRAP_CURRY_BOUND_FLAG = 4, - WRAP_CURRY_FLAG = 8, - WRAP_CURRY_RIGHT_FLAG = 16, - WRAP_PARTIAL_FLAG = 32, - WRAP_PARTIAL_RIGHT_FLAG = 64, - WRAP_ARY_FLAG = 128, - WRAP_REARG_FLAG = 256, - WRAP_FLIP_FLAG = 512; - - /** Used as default options for `_.truncate`. */ - var DEFAULT_TRUNC_LENGTH = 30, - DEFAULT_TRUNC_OMISSION = '...'; - - /** Used to detect hot functions by number of calls within a span of milliseconds. */ - var HOT_COUNT = 800, - HOT_SPAN = 16; - - /** Used to indicate the type of lazy iteratees. */ - var LAZY_FILTER_FLAG = 1, - LAZY_MAP_FLAG = 2, - LAZY_WHILE_FLAG = 3; - - /** Used as references for various `Number` constants. */ - var INFINITY = 1 / 0, - MAX_SAFE_INTEGER = 9007199254740991, - MAX_INTEGER = 1.7976931348623157e+308, - NAN = 0 / 0; - - /** Used as references for the maximum length and index of an array. */ - var MAX_ARRAY_LENGTH = 4294967295, - MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1, - HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1; - - /** Used to associate wrap methods with their bit flags. */ - var wrapFlags = [ - ['ary', WRAP_ARY_FLAG], - ['bind', WRAP_BIND_FLAG], - ['bindKey', WRAP_BIND_KEY_FLAG], - ['curry', WRAP_CURRY_FLAG], - ['curryRight', WRAP_CURRY_RIGHT_FLAG], - ['flip', WRAP_FLIP_FLAG], - ['partial', WRAP_PARTIAL_FLAG], - ['partialRight', WRAP_PARTIAL_RIGHT_FLAG], - ['rearg', WRAP_REARG_FLAG] - ]; - - /** `Object#toString` result references. */ - var argsTag = '[object Arguments]', - arrayTag = '[object Array]', - asyncTag = '[object AsyncFunction]', - boolTag = '[object Boolean]', - dateTag = '[object Date]', - domExcTag = '[object DOMException]', - errorTag = '[object Error]', - funcTag = '[object Function]', - genTag = '[object GeneratorFunction]', - mapTag = '[object Map]', - numberTag = '[object Number]', - nullTag = '[object Null]', - objectTag = '[object Object]', - promiseTag = '[object Promise]', - proxyTag = '[object Proxy]', - regexpTag = '[object RegExp]', - setTag = '[object Set]', - stringTag = '[object String]', - symbolTag = '[object Symbol]', - undefinedTag = '[object Undefined]', - weakMapTag = '[object WeakMap]', - weakSetTag = '[object WeakSet]'; - - var arrayBufferTag = '[object ArrayBuffer]', - dataViewTag = '[object DataView]', - float32Tag = '[object Float32Array]', - float64Tag = '[object Float64Array]', - int8Tag = '[object Int8Array]', - int16Tag = '[object Int16Array]', - int32Tag = '[object Int32Array]', - uint8Tag = '[object Uint8Array]', - uint8ClampedTag = '[object Uint8ClampedArray]', - uint16Tag = '[object Uint16Array]', - uint32Tag = '[object Uint32Array]'; - - /** Used to match empty string literals in compiled template source. */ - var reEmptyStringLeading = /\b__p \+= '';/g, - reEmptyStringMiddle = /\b(__p \+=) '' \+/g, - reEmptyStringTrailing = /(__e\(.*?\)|\b__t\)) \+\n'';/g; - - /** Used to match HTML entities and HTML characters. */ - var reEscapedHtml = /&(?:amp|lt|gt|quot|#39);/g, - reUnescapedHtml = /[&<>"']/g, - reHasEscapedHtml = RegExp(reEscapedHtml.source), - reHasUnescapedHtml = RegExp(reUnescapedHtml.source); - - /** Used to match template delimiters. */ - var reEscape = /<%-([\s\S]+?)%>/g, - reEvaluate = /<%([\s\S]+?)%>/g, - reInterpolate = /<%=([\s\S]+?)%>/g; - - /** Used to match property names within property paths. */ - var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, - reIsPlainProp = /^\w*$/, - rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; - - /** - * Used to match `RegExp` - * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns). - */ - var reRegExpChar = /[\\^$.*+?()[\]{}|]/g, - reHasRegExpChar = RegExp(reRegExpChar.source); - - /** Used to match leading and trailing whitespace. */ - var reTrim = /^\s+|\s+$/g, - reTrimStart = /^\s+/, - reTrimEnd = /\s+$/; - - /** Used to match wrap detail comments. */ - var reWrapComment = /\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/, - reWrapDetails = /\{\n\/\* \[wrapped with (.+)\] \*/, - reSplitDetails = /,? & /; - - /** Used to match words composed of alphanumeric characters. */ - var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g; - - /** Used to match backslashes in property paths. */ - var reEscapeChar = /\\(\\)?/g; - - /** - * Used to match - * [ES template delimiters](http://ecma-international.org/ecma-262/7.0/#sec-template-literal-lexical-components). - */ - var reEsTemplate = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g; - - /** Used to match `RegExp` flags from their coerced string values. */ - var reFlags = /\w*$/; - - /** Used to detect bad signed hexadecimal string values. */ - var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; - - /** Used to detect binary string values. */ - var reIsBinary = /^0b[01]+$/i; - - /** Used to detect host constructors (Safari). */ - var reIsHostCtor = /^\[object .+?Constructor\]$/; - - /** Used to detect octal string values. */ - var reIsOctal = /^0o[0-7]+$/i; - - /** Used to detect unsigned integer values. */ - var reIsUint = /^(?:0|[1-9]\d*)$/; - - /** Used to match Latin Unicode letters (excluding mathematical operators). */ - var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g; - - /** Used to ensure capturing order of template delimiters. */ - var reNoMatch = /($^)/; - - /** Used to match unescaped characters in compiled string literals. */ - var reUnescapedString = /['\n\r\u2028\u2029\\]/g; - - /** Used to compose unicode character classes. */ - var rsAstralRange = '\\ud800-\\udfff', - rsComboMarksRange = '\\u0300-\\u036f', - reComboHalfMarksRange = '\\ufe20-\\ufe2f', - rsComboSymbolsRange = '\\u20d0-\\u20ff', - rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, - rsDingbatRange = '\\u2700-\\u27bf', - rsLowerRange = 'a-z\\xdf-\\xf6\\xf8-\\xff', - rsMathOpRange = '\\xac\\xb1\\xd7\\xf7', - rsNonCharRange = '\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf', - rsPunctuationRange = '\\u2000-\\u206f', - rsSpaceRange = ' \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000', - rsUpperRange = 'A-Z\\xc0-\\xd6\\xd8-\\xde', - rsVarRange = '\\ufe0e\\ufe0f', - rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange; - - /** Used to compose unicode capture groups. */ - var rsApos = "['\u2019]", - rsAstral = '[' + rsAstralRange + ']', - rsBreak = '[' + rsBreakRange + ']', - rsCombo = '[' + rsComboRange + ']', - rsDigits = '\\d+', - rsDingbat = '[' + rsDingbatRange + ']', - rsLower = '[' + rsLowerRange + ']', - rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']', - rsFitz = '\\ud83c[\\udffb-\\udfff]', - rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')', - rsNonAstral = '[^' + rsAstralRange + ']', - rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}', - rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]', - rsUpper = '[' + rsUpperRange + ']', - rsZWJ = '\\u200d'; - - /** Used to compose unicode regexes. */ - var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')', - rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')', - rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?', - rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?', - reOptMod = rsModifier + '?', - rsOptVar = '[' + rsVarRange + ']?', - rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*', - rsOrdLower = '\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])', - rsOrdUpper = '\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])', - rsSeq = rsOptVar + reOptMod + rsOptJoin, - rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq, - rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')'; - - /** Used to match apostrophes. */ - var reApos = RegExp(rsApos, 'g'); - - /** - * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and - * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols). - */ - var reComboMark = RegExp(rsCombo, 'g'); - - /** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */ - var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g'); - - /** Used to match complex or compound words. */ - var reUnicodeWord = RegExp([ - rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')', - rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')', - rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower, - rsUpper + '+' + rsOptContrUpper, - rsOrdUpper, - rsOrdLower, - rsDigits, - rsEmoji - ].join('|'), 'g'); - - /** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */ - var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']'); - - /** Used to detect strings that need a more robust regexp to match words. */ - var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/; - - /** Used to assign default `context` object properties. */ - var contextProps = [ - 'Array', 'Buffer', 'DataView', 'Date', 'Error', 'Float32Array', 'Float64Array', - 'Function', 'Int8Array', 'Int16Array', 'Int32Array', 'Map', 'Math', 'Object', - 'Promise', 'RegExp', 'Set', 'String', 'Symbol', 'TypeError', 'Uint8Array', - 'Uint8ClampedArray', 'Uint16Array', 'Uint32Array', 'WeakMap', - '_', 'clearTimeout', 'isFinite', 'parseInt', 'setTimeout' - ]; - - /** Used to make template sourceURLs easier to identify. */ - var templateCounter = -1; - - /** Used to identify `toStringTag` values of typed arrays. */ - var typedArrayTags = {}; - typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = - typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = - typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = - typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = - typedArrayTags[uint32Tag] = true; - typedArrayTags[argsTag] = typedArrayTags[arrayTag] = - typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = - typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = - typedArrayTags[errorTag] = typedArrayTags[funcTag] = - typedArrayTags[mapTag] = typedArrayTags[numberTag] = - typedArrayTags[objectTag] = typedArrayTags[regexpTag] = - typedArrayTags[setTag] = typedArrayTags[stringTag] = - typedArrayTags[weakMapTag] = false; - - /** Used to identify `toStringTag` values supported by `_.clone`. */ - var cloneableTags = {}; - cloneableTags[argsTag] = cloneableTags[arrayTag] = - cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] = - cloneableTags[boolTag] = cloneableTags[dateTag] = - cloneableTags[float32Tag] = cloneableTags[float64Tag] = - cloneableTags[int8Tag] = cloneableTags[int16Tag] = - cloneableTags[int32Tag] = cloneableTags[mapTag] = - cloneableTags[numberTag] = cloneableTags[objectTag] = - cloneableTags[regexpTag] = cloneableTags[setTag] = - cloneableTags[stringTag] = cloneableTags[symbolTag] = - cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = - cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true; - cloneableTags[errorTag] = cloneableTags[funcTag] = - cloneableTags[weakMapTag] = false; - - /** Used to map Latin Unicode letters to basic Latin letters. */ - var deburredLetters = { - // Latin-1 Supplement block. - '\xc0': 'A', '\xc1': 'A', '\xc2': 'A', '\xc3': 'A', '\xc4': 'A', '\xc5': 'A', - '\xe0': 'a', '\xe1': 'a', '\xe2': 'a', '\xe3': 'a', '\xe4': 'a', '\xe5': 'a', - '\xc7': 'C', '\xe7': 'c', - '\xd0': 'D', '\xf0': 'd', - '\xc8': 'E', '\xc9': 'E', '\xca': 'E', '\xcb': 'E', - '\xe8': 'e', '\xe9': 'e', '\xea': 'e', '\xeb': 'e', - '\xcc': 'I', '\xcd': 'I', '\xce': 'I', '\xcf': 'I', - '\xec': 'i', '\xed': 'i', '\xee': 'i', '\xef': 'i', - '\xd1': 'N', '\xf1': 'n', - '\xd2': 'O', '\xd3': 'O', '\xd4': 'O', '\xd5': 'O', '\xd6': 'O', '\xd8': 'O', - '\xf2': 'o', '\xf3': 'o', '\xf4': 'o', '\xf5': 'o', '\xf6': 'o', '\xf8': 'o', - '\xd9': 'U', '\xda': 'U', '\xdb': 'U', '\xdc': 'U', - '\xf9': 'u', '\xfa': 'u', '\xfb': 'u', '\xfc': 'u', - '\xdd': 'Y', '\xfd': 'y', '\xff': 'y', - '\xc6': 'Ae', '\xe6': 'ae', - '\xde': 'Th', '\xfe': 'th', - '\xdf': 'ss', - // Latin Extended-A block. - '\u0100': 'A', '\u0102': 'A', '\u0104': 'A', - '\u0101': 'a', '\u0103': 'a', '\u0105': 'a', - '\u0106': 'C', '\u0108': 'C', '\u010a': 'C', '\u010c': 'C', - '\u0107': 'c', '\u0109': 'c', '\u010b': 'c', '\u010d': 'c', - '\u010e': 'D', '\u0110': 'D', '\u010f': 'd', '\u0111': 'd', - '\u0112': 'E', '\u0114': 'E', '\u0116': 'E', '\u0118': 'E', '\u011a': 'E', - '\u0113': 'e', '\u0115': 'e', '\u0117': 'e', '\u0119': 'e', '\u011b': 'e', - '\u011c': 'G', '\u011e': 'G', '\u0120': 'G', '\u0122': 'G', - '\u011d': 'g', '\u011f': 'g', '\u0121': 'g', '\u0123': 'g', - '\u0124': 'H', '\u0126': 'H', '\u0125': 'h', '\u0127': 'h', - '\u0128': 'I', '\u012a': 'I', '\u012c': 'I', '\u012e': 'I', '\u0130': 'I', - '\u0129': 'i', '\u012b': 'i', '\u012d': 'i', '\u012f': 'i', '\u0131': 'i', - '\u0134': 'J', '\u0135': 'j', - '\u0136': 'K', '\u0137': 'k', '\u0138': 'k', - '\u0139': 'L', '\u013b': 'L', '\u013d': 'L', '\u013f': 'L', '\u0141': 'L', - '\u013a': 'l', '\u013c': 'l', '\u013e': 'l', '\u0140': 'l', '\u0142': 'l', - '\u0143': 'N', '\u0145': 'N', '\u0147': 'N', '\u014a': 'N', - '\u0144': 'n', '\u0146': 'n', '\u0148': 'n', '\u014b': 'n', - '\u014c': 'O', '\u014e': 'O', '\u0150': 'O', - '\u014d': 'o', '\u014f': 'o', '\u0151': 'o', - '\u0154': 'R', '\u0156': 'R', '\u0158': 'R', - '\u0155': 'r', '\u0157': 'r', '\u0159': 'r', - '\u015a': 'S', '\u015c': 'S', '\u015e': 'S', '\u0160': 'S', - '\u015b': 's', '\u015d': 's', '\u015f': 's', '\u0161': 's', - '\u0162': 'T', '\u0164': 'T', '\u0166': 'T', - '\u0163': 't', '\u0165': 't', '\u0167': 't', - '\u0168': 'U', '\u016a': 'U', '\u016c': 'U', '\u016e': 'U', '\u0170': 'U', '\u0172': 'U', - '\u0169': 'u', '\u016b': 'u', '\u016d': 'u', '\u016f': 'u', '\u0171': 'u', '\u0173': 'u', - '\u0174': 'W', '\u0175': 'w', - '\u0176': 'Y', '\u0177': 'y', '\u0178': 'Y', - '\u0179': 'Z', '\u017b': 'Z', '\u017d': 'Z', - '\u017a': 'z', '\u017c': 'z', '\u017e': 'z', - '\u0132': 'IJ', '\u0133': 'ij', - '\u0152': 'Oe', '\u0153': 'oe', - '\u0149': "'n", '\u017f': 's' - }; - - /** Used to map characters to HTML entities. */ - var htmlEscapes = { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - "'": ''' - }; - - /** Used to map HTML entities to characters. */ - var htmlUnescapes = { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - ''': "'" - }; - - /** Used to escape characters for inclusion in compiled string literals. */ - var stringEscapes = { - '\\': '\\', - "'": "'", - '\n': 'n', - '\r': 'r', - '\u2028': 'u2028', - '\u2029': 'u2029' - }; - - /** Built-in method references without a dependency on `root`. */ - var freeParseFloat = parseFloat, - freeParseInt = parseInt; - - /** Detect free variable `global` from Node.js. */ - var freeGlobal = typeof global == 'object' && global && global.Object === Object && global; - - /** Detect free variable `self`. */ - var freeSelf = typeof self == 'object' && self && self.Object === Object && self; - - /** Used as a reference to the global object. */ - var root = freeGlobal || freeSelf || Function('return this')(); - - /** Detect free variable `exports`. */ - var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; - - /** Detect free variable `module`. */ - var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; - - /** Detect the popular CommonJS extension `module.exports`. */ - var moduleExports = freeModule && freeModule.exports === freeExports; - - /** Detect free variable `process` from Node.js. */ - var freeProcess = moduleExports && freeGlobal.process; - - /** Used to access faster Node.js helpers. */ - var nodeUtil = (function() { - try { - // Use `util.types` for Node.js 10+. - var types = freeModule && freeModule.require && freeModule.require('util').types; - - if (types) { - return types; - } - - // Legacy `process.binding('util')` for Node.js < 10. - return freeProcess && freeProcess.binding && freeProcess.binding('util'); - } catch (e) {} - }()); - - /* Node.js helper references. */ - var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer, - nodeIsDate = nodeUtil && nodeUtil.isDate, - nodeIsMap = nodeUtil && nodeUtil.isMap, - nodeIsRegExp = nodeUtil && nodeUtil.isRegExp, - nodeIsSet = nodeUtil && nodeUtil.isSet, - nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; - - /*--------------------------------------------------------------------------*/ - - /** - * A faster alternative to `Function#apply`, this function invokes `func` - * with the `this` binding of `thisArg` and the arguments of `args`. - * - * @private - * @param {Function} func The function to invoke. - * @param {*} thisArg The `this` binding of `func`. - * @param {Array} args The arguments to invoke `func` with. - * @returns {*} Returns the result of `func`. - */ - function apply(func, thisArg, args) { - switch (args.length) { - case 0: return func.call(thisArg); - case 1: return func.call(thisArg, args[0]); - case 2: return func.call(thisArg, args[0], args[1]); - case 3: return func.call(thisArg, args[0], args[1], args[2]); - } - return func.apply(thisArg, args); - } - - /** - * A specialized version of `baseAggregator` for arrays. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} setter The function to set `accumulator` values. - * @param {Function} iteratee The iteratee to transform keys. - * @param {Object} accumulator The initial aggregated object. - * @returns {Function} Returns `accumulator`. - */ - function arrayAggregator(array, setter, iteratee, accumulator) { - var index = -1, - length = array == null ? 0 : array.length; - - while (++index < length) { - var value = array[index]; - setter(accumulator, value, iteratee(value), array); - } - return accumulator; - } - - /** - * A specialized version of `_.forEach` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array} Returns `array`. - */ - function arrayEach(array, iteratee) { - var index = -1, - length = array == null ? 0 : array.length; - - while (++index < length) { - if (iteratee(array[index], index, array) === false) { - break; - } - } - return array; - } - - /** - * A specialized version of `_.forEachRight` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array} Returns `array`. - */ - function arrayEachRight(array, iteratee) { - var length = array == null ? 0 : array.length; - - while (length--) { - if (iteratee(array[length], length, array) === false) { - break; - } - } - return array; - } - - /** - * A specialized version of `_.every` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {boolean} Returns `true` if all elements pass the predicate check, - * else `false`. - */ - function arrayEvery(array, predicate) { - var index = -1, - length = array == null ? 0 : array.length; - - while (++index < length) { - if (!predicate(array[index], index, array)) { - return false; - } - } - return true; - } - - /** - * A specialized version of `_.filter` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {Array} Returns the new filtered array. - */ - function arrayFilter(array, predicate) { - var index = -1, - length = array == null ? 0 : array.length, - resIndex = 0, - result = []; - - while (++index < length) { - var value = array[index]; - if (predicate(value, index, array)) { - result[resIndex++] = value; - } - } - return result; - } - - /** - * A specialized version of `_.includes` for arrays without support for - * specifying an index to search from. - * - * @private - * @param {Array} [array] The array to inspect. - * @param {*} target The value to search for. - * @returns {boolean} Returns `true` if `target` is found, else `false`. - */ - function arrayIncludes(array, value) { - var length = array == null ? 0 : array.length; - return !!length && baseIndexOf(array, value, 0) > -1; - } - - /** - * This function is like `arrayIncludes` except that it accepts a comparator. - * - * @private - * @param {Array} [array] The array to inspect. - * @param {*} target The value to search for. - * @param {Function} comparator The comparator invoked per element. - * @returns {boolean} Returns `true` if `target` is found, else `false`. - */ - function arrayIncludesWith(array, value, comparator) { - var index = -1, - length = array == null ? 0 : array.length; - - while (++index < length) { - if (comparator(value, array[index])) { - return true; - } - } - return false; - } - - /** - * A specialized version of `_.map` for arrays without support for iteratee - * shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array} Returns the new mapped array. - */ - function arrayMap(array, iteratee) { - var index = -1, - length = array == null ? 0 : array.length, - result = Array(length); - - while (++index < length) { - result[index] = iteratee(array[index], index, array); - } - return result; - } - - /** - * Appends the elements of `values` to `array`. - * - * @private - * @param {Array} array The array to modify. - * @param {Array} values The values to append. - * @returns {Array} Returns `array`. - */ - function arrayPush(array, values) { - var index = -1, - length = values.length, - offset = array.length; - - while (++index < length) { - array[offset + index] = values[index]; - } - return array; - } - - /** - * A specialized version of `_.reduce` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @param {*} [accumulator] The initial value. - * @param {boolean} [initAccum] Specify using the first element of `array` as - * the initial value. - * @returns {*} Returns the accumulated value. - */ - function arrayReduce(array, iteratee, accumulator, initAccum) { - var index = -1, - length = array == null ? 0 : array.length; - - if (initAccum && length) { - accumulator = array[++index]; - } - while (++index < length) { - accumulator = iteratee(accumulator, array[index], index, array); - } - return accumulator; - } - - /** - * A specialized version of `_.reduceRight` for arrays without support for - * iteratee shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @param {*} [accumulator] The initial value. - * @param {boolean} [initAccum] Specify using the last element of `array` as - * the initial value. - * @returns {*} Returns the accumulated value. - */ - function arrayReduceRight(array, iteratee, accumulator, initAccum) { - var length = array == null ? 0 : array.length; - if (initAccum && length) { - accumulator = array[--length]; - } - while (length--) { - accumulator = iteratee(accumulator, array[length], length, array); - } - return accumulator; - } - - /** - * A specialized version of `_.some` for arrays without support for iteratee - * shorthands. - * - * @private - * @param {Array} [array] The array to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {boolean} Returns `true` if any element passes the predicate check, - * else `false`. - */ - function arraySome(array, predicate) { - var index = -1, - length = array == null ? 0 : array.length; - - while (++index < length) { - if (predicate(array[index], index, array)) { - return true; - } - } - return false; - } - - /** - * Gets the size of an ASCII `string`. - * - * @private - * @param {string} string The string inspect. - * @returns {number} Returns the string size. - */ - var asciiSize = baseProperty('length'); - - /** - * Converts an ASCII `string` to an array. - * - * @private - * @param {string} string The string to convert. - * @returns {Array} Returns the converted array. - */ - function asciiToArray(string) { - return string.split(''); - } - - /** - * Splits an ASCII `string` into an array of its words. - * - * @private - * @param {string} The string to inspect. - * @returns {Array} Returns the words of `string`. - */ - function asciiWords(string) { - return string.match(reAsciiWord) || []; - } - - /** - * The base implementation of methods like `_.findKey` and `_.findLastKey`, - * without support for iteratee shorthands, which iterates over `collection` - * using `eachFunc`. - * - * @private - * @param {Array|Object} collection The collection to inspect. - * @param {Function} predicate The function invoked per iteration. - * @param {Function} eachFunc The function to iterate over `collection`. - * @returns {*} Returns the found element or its key, else `undefined`. - */ - function baseFindKey(collection, predicate, eachFunc) { - var result; - eachFunc(collection, function(value, key, collection) { - if (predicate(value, key, collection)) { - result = key; - return false; - } - }); - return result; - } - - /** - * The base implementation of `_.findIndex` and `_.findLastIndex` without - * support for iteratee shorthands. - * - * @private - * @param {Array} array The array to inspect. - * @param {Function} predicate The function invoked per iteration. - * @param {number} fromIndex The index to search from. - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {number} Returns the index of the matched value, else `-1`. - */ - function baseFindIndex(array, predicate, fromIndex, fromRight) { - var length = array.length, - index = fromIndex + (fromRight ? 1 : -1); - - while ((fromRight ? index-- : ++index < length)) { - if (predicate(array[index], index, array)) { - return index; - } - } - return -1; - } - - /** - * The base implementation of `_.indexOf` without `fromIndex` bounds checks. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @param {number} fromIndex The index to search from. - * @returns {number} Returns the index of the matched value, else `-1`. - */ - function baseIndexOf(array, value, fromIndex) { - return value === value - ? strictIndexOf(array, value, fromIndex) - : baseFindIndex(array, baseIsNaN, fromIndex); - } - - /** - * This function is like `baseIndexOf` except that it accepts a comparator. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @param {number} fromIndex The index to search from. - * @param {Function} comparator The comparator invoked per element. - * @returns {number} Returns the index of the matched value, else `-1`. - */ - function baseIndexOfWith(array, value, fromIndex, comparator) { - var index = fromIndex - 1, - length = array.length; - - while (++index < length) { - if (comparator(array[index], value)) { - return index; - } - } - return -1; - } - - /** - * The base implementation of `_.isNaN` without support for number objects. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. - */ - function baseIsNaN(value) { - return value !== value; - } - - /** - * The base implementation of `_.mean` and `_.meanBy` without support for - * iteratee shorthands. - * - * @private - * @param {Array} array The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {number} Returns the mean. - */ - function baseMean(array, iteratee) { - var length = array == null ? 0 : array.length; - return length ? (baseSum(array, iteratee) / length) : NAN; - } - - /** - * The base implementation of `_.property` without support for deep paths. - * - * @private - * @param {string} key The key of the property to get. - * @returns {Function} Returns the new accessor function. - */ - function baseProperty(key) { - return function(object) { - return object == null ? undefined : object[key]; - }; - } - - /** - * The base implementation of `_.propertyOf` without support for deep paths. - * - * @private - * @param {Object} object The object to query. - * @returns {Function} Returns the new accessor function. - */ - function basePropertyOf(object) { - return function(key) { - return object == null ? undefined : object[key]; - }; - } - - /** - * The base implementation of `_.reduce` and `_.reduceRight`, without support - * for iteratee shorthands, which iterates over `collection` using `eachFunc`. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @param {*} accumulator The initial value. - * @param {boolean} initAccum Specify using the first or last element of - * `collection` as the initial value. - * @param {Function} eachFunc The function to iterate over `collection`. - * @returns {*} Returns the accumulated value. - */ - function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) { - eachFunc(collection, function(value, index, collection) { - accumulator = initAccum - ? (initAccum = false, value) - : iteratee(accumulator, value, index, collection); - }); - return accumulator; - } - - /** - * The base implementation of `_.sortBy` which uses `comparer` to define the - * sort order of `array` and replaces criteria objects with their corresponding - * values. - * - * @private - * @param {Array} array The array to sort. - * @param {Function} comparer The function to define sort order. - * @returns {Array} Returns `array`. - */ - function baseSortBy(array, comparer) { - var length = array.length; - - array.sort(comparer); - while (length--) { - array[length] = array[length].value; - } - return array; - } - - /** - * The base implementation of `_.sum` and `_.sumBy` without support for - * iteratee shorthands. - * - * @private - * @param {Array} array The array to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {number} Returns the sum. - */ - function baseSum(array, iteratee) { - var result, - index = -1, - length = array.length; - - while (++index < length) { - var current = iteratee(array[index]); - if (current !== undefined) { - result = result === undefined ? current : (result + current); - } - } - return result; - } - - /** - * The base implementation of `_.times` without support for iteratee shorthands - * or max array length checks. - * - * @private - * @param {number} n The number of times to invoke `iteratee`. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array} Returns the array of results. - */ - function baseTimes(n, iteratee) { - var index = -1, - result = Array(n); - - while (++index < n) { - result[index] = iteratee(index); - } - return result; - } - - /** - * The base implementation of `_.toPairs` and `_.toPairsIn` which creates an array - * of key-value pairs for `object` corresponding to the property names of `props`. - * - * @private - * @param {Object} object The object to query. - * @param {Array} props The property names to get values for. - * @returns {Object} Returns the key-value pairs. - */ - function baseToPairs(object, props) { - return arrayMap(props, function(key) { - return [key, object[key]]; - }); - } - - /** - * The base implementation of `_.unary` without support for storing metadata. - * - * @private - * @param {Function} func The function to cap arguments for. - * @returns {Function} Returns the new capped function. - */ - function baseUnary(func) { - return function(value) { - return func(value); - }; - } - - /** - * The base implementation of `_.values` and `_.valuesIn` which creates an - * array of `object` property values corresponding to the property names - * of `props`. - * - * @private - * @param {Object} object The object to query. - * @param {Array} props The property names to get values for. - * @returns {Object} Returns the array of property values. - */ - function baseValues(object, props) { - return arrayMap(props, function(key) { - return object[key]; - }); - } - - /** - * Checks if a `cache` value for `key` exists. - * - * @private - * @param {Object} cache The cache to query. - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ - function cacheHas(cache, key) { - return cache.has(key); - } - - /** - * Used by `_.trim` and `_.trimStart` to get the index of the first string symbol - * that is not found in the character symbols. - * - * @private - * @param {Array} strSymbols The string symbols to inspect. - * @param {Array} chrSymbols The character symbols to find. - * @returns {number} Returns the index of the first unmatched string symbol. - */ - function charsStartIndex(strSymbols, chrSymbols) { - var index = -1, - length = strSymbols.length; - - while (++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {} - return index; - } - - /** - * Used by `_.trim` and `_.trimEnd` to get the index of the last string symbol - * that is not found in the character symbols. - * - * @private - * @param {Array} strSymbols The string symbols to inspect. - * @param {Array} chrSymbols The character symbols to find. - * @returns {number} Returns the index of the last unmatched string symbol. - */ - function charsEndIndex(strSymbols, chrSymbols) { - var index = strSymbols.length; - - while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {} - return index; - } - - /** - * Gets the number of `placeholder` occurrences in `array`. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} placeholder The placeholder to search for. - * @returns {number} Returns the placeholder count. - */ - function countHolders(array, placeholder) { - var length = array.length, - result = 0; - - while (length--) { - if (array[length] === placeholder) { - ++result; - } - } - return result; - } - - /** - * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A - * letters to basic Latin letters. - * - * @private - * @param {string} letter The matched letter to deburr. - * @returns {string} Returns the deburred letter. - */ - var deburrLetter = basePropertyOf(deburredLetters); - - /** - * Used by `_.escape` to convert characters to HTML entities. - * - * @private - * @param {string} chr The matched character to escape. - * @returns {string} Returns the escaped character. - */ - var escapeHtmlChar = basePropertyOf(htmlEscapes); - - /** - * Used by `_.template` to escape characters for inclusion in compiled string literals. - * - * @private - * @param {string} chr The matched character to escape. - * @returns {string} Returns the escaped character. - */ - function escapeStringChar(chr) { - return '\\' + stringEscapes[chr]; - } - - /** - * Gets the value at `key` of `object`. - * - * @private - * @param {Object} [object] The object to query. - * @param {string} key The key of the property to get. - * @returns {*} Returns the property value. - */ - function getValue(object, key) { - return object == null ? undefined : object[key]; - } - - /** - * Checks if `string` contains Unicode symbols. - * - * @private - * @param {string} string The string to inspect. - * @returns {boolean} Returns `true` if a symbol is found, else `false`. - */ - function hasUnicode(string) { - return reHasUnicode.test(string); - } - - /** - * Checks if `string` contains a word composed of Unicode symbols. - * - * @private - * @param {string} string The string to inspect. - * @returns {boolean} Returns `true` if a word is found, else `false`. - */ - function hasUnicodeWord(string) { - return reHasUnicodeWord.test(string); - } - - /** - * Converts `iterator` to an array. - * - * @private - * @param {Object} iterator The iterator to convert. - * @returns {Array} Returns the converted array. - */ - function iteratorToArray(iterator) { - var data, - result = []; - - while (!(data = iterator.next()).done) { - result.push(data.value); - } - return result; - } - - /** - * Converts `map` to its key-value pairs. - * - * @private - * @param {Object} map The map to convert. - * @returns {Array} Returns the key-value pairs. - */ - function mapToArray(map) { - var index = -1, - result = Array(map.size); - - map.forEach(function(value, key) { - result[++index] = [key, value]; - }); - return result; - } - - /** - * Creates a unary function that invokes `func` with its argument transformed. - * - * @private - * @param {Function} func The function to wrap. - * @param {Function} transform The argument transform. - * @returns {Function} Returns the new function. - */ - function overArg(func, transform) { - return function(arg) { - return func(transform(arg)); - }; - } - - /** - * Replaces all `placeholder` elements in `array` with an internal placeholder - * and returns an array of their indexes. - * - * @private - * @param {Array} array The array to modify. - * @param {*} placeholder The placeholder to replace. - * @returns {Array} Returns the new array of placeholder indexes. - */ - function replaceHolders(array, placeholder) { - var index = -1, - length = array.length, - resIndex = 0, - result = []; - - while (++index < length) { - var value = array[index]; - if (value === placeholder || value === PLACEHOLDER) { - array[index] = PLACEHOLDER; - result[resIndex++] = index; - } - } - return result; - } - - /** - * Gets the value at `key`, unless `key` is "__proto__". - * - * @private - * @param {Object} object The object to query. - * @param {string} key The key of the property to get. - * @returns {*} Returns the property value. - */ - function safeGet(object, key) { - return key == '__proto__' - ? undefined - : object[key]; - } - - /** - * Converts `set` to an array of its values. - * - * @private - * @param {Object} set The set to convert. - * @returns {Array} Returns the values. - */ - function setToArray(set) { - var index = -1, - result = Array(set.size); - - set.forEach(function(value) { - result[++index] = value; - }); - return result; - } - - /** - * Converts `set` to its value-value pairs. - * - * @private - * @param {Object} set The set to convert. - * @returns {Array} Returns the value-value pairs. - */ - function setToPairs(set) { - var index = -1, - result = Array(set.size); - - set.forEach(function(value) { - result[++index] = [value, value]; - }); - return result; - } - - /** - * A specialized version of `_.indexOf` which performs strict equality - * comparisons of values, i.e. `===`. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @param {number} fromIndex The index to search from. - * @returns {number} Returns the index of the matched value, else `-1`. - */ - function strictIndexOf(array, value, fromIndex) { - var index = fromIndex - 1, - length = array.length; - - while (++index < length) { - if (array[index] === value) { - return index; - } - } - return -1; - } - - /** - * A specialized version of `_.lastIndexOf` which performs strict equality - * comparisons of values, i.e. `===`. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @param {number} fromIndex The index to search from. - * @returns {number} Returns the index of the matched value, else `-1`. - */ - function strictLastIndexOf(array, value, fromIndex) { - var index = fromIndex + 1; - while (index--) { - if (array[index] === value) { - return index; - } - } - return index; - } - - /** - * Gets the number of symbols in `string`. - * - * @private - * @param {string} string The string to inspect. - * @returns {number} Returns the string size. - */ - function stringSize(string) { - return hasUnicode(string) - ? unicodeSize(string) - : asciiSize(string); - } - - /** - * Converts `string` to an array. - * - * @private - * @param {string} string The string to convert. - * @returns {Array} Returns the converted array. - */ - function stringToArray(string) { - return hasUnicode(string) - ? unicodeToArray(string) - : asciiToArray(string); - } - - /** - * Used by `_.unescape` to convert HTML entities to characters. - * - * @private - * @param {string} chr The matched character to unescape. - * @returns {string} Returns the unescaped character. - */ - var unescapeHtmlChar = basePropertyOf(htmlUnescapes); - - /** - * Gets the size of a Unicode `string`. - * - * @private - * @param {string} string The string inspect. - * @returns {number} Returns the string size. - */ - function unicodeSize(string) { - var result = reUnicode.lastIndex = 0; - while (reUnicode.test(string)) { - ++result; - } - return result; - } - - /** - * Converts a Unicode `string` to an array. - * - * @private - * @param {string} string The string to convert. - * @returns {Array} Returns the converted array. - */ - function unicodeToArray(string) { - return string.match(reUnicode) || []; - } - - /** - * Splits a Unicode `string` into an array of its words. - * - * @private - * @param {string} The string to inspect. - * @returns {Array} Returns the words of `string`. - */ - function unicodeWords(string) { - return string.match(reUnicodeWord) || []; - } - - /*--------------------------------------------------------------------------*/ - - /** - * Create a new pristine `lodash` function using the `context` object. - * - * @static - * @memberOf _ - * @since 1.1.0 - * @category Util - * @param {Object} [context=root] The context object. - * @returns {Function} Returns a new `lodash` function. - * @example - * - * _.mixin({ 'foo': _.constant('foo') }); - * - * var lodash = _.runInContext(); - * lodash.mixin({ 'bar': lodash.constant('bar') }); - * - * _.isFunction(_.foo); - * // => true - * _.isFunction(_.bar); - * // => false - * - * lodash.isFunction(lodash.foo); - * // => false - * lodash.isFunction(lodash.bar); - * // => true - * - * // Create a suped-up `defer` in Node.js. - * var defer = _.runInContext({ 'setTimeout': setImmediate }).defer; - */ - var runInContext = (function runInContext(context) { - context = context == null ? root : _.defaults(root.Object(), context, _.pick(root, contextProps)); - - /** Built-in constructor references. */ - var Array = context.Array, - Date = context.Date, - Error = context.Error, - Function = context.Function, - Math = context.Math, - Object = context.Object, - RegExp = context.RegExp, - String = context.String, - TypeError = context.TypeError; - - /** Used for built-in method references. */ - var arrayProto = Array.prototype, - funcProto = Function.prototype, - objectProto = Object.prototype; - - /** Used to detect overreaching core-js shims. */ - var coreJsData = context['__core-js_shared__']; - - /** Used to resolve the decompiled source of functions. */ - var funcToString = funcProto.toString; - - /** Used to check objects for own properties. */ - var hasOwnProperty = objectProto.hasOwnProperty; - - /** Used to generate unique IDs. */ - var idCounter = 0; - - /** Used to detect methods masquerading as native. */ - var maskSrcKey = (function() { - var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ''); - return uid ? ('Symbol(src)_1.' + uid) : ''; - }()); - - /** - * Used to resolve the - * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) - * of values. - */ - var nativeObjectToString = objectProto.toString; - - /** Used to infer the `Object` constructor. */ - var objectCtorString = funcToString.call(Object); - - /** Used to restore the original `_` reference in `_.noConflict`. */ - var oldDash = root._; - - /** Used to detect if a method is native. */ - var reIsNative = RegExp('^' + - funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&') - .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$' - ); - - /** Built-in value references. */ - var Buffer = moduleExports ? context.Buffer : undefined, - Symbol = context.Symbol, - Uint8Array = context.Uint8Array, - allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined, - getPrototype = overArg(Object.getPrototypeOf, Object), - objectCreate = Object.create, - propertyIsEnumerable = objectProto.propertyIsEnumerable, - splice = arrayProto.splice, - spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined, - symIterator = Symbol ? Symbol.iterator : undefined, - symToStringTag = Symbol ? Symbol.toStringTag : undefined; - - var defineProperty = (function() { - try { - var func = getNative(Object, 'defineProperty'); - func({}, '', {}); - return func; - } catch (e) {} - }()); - - /** Mocked built-ins. */ - var ctxClearTimeout = context.clearTimeout !== root.clearTimeout && context.clearTimeout, - ctxNow = Date && Date.now !== root.Date.now && Date.now, - ctxSetTimeout = context.setTimeout !== root.setTimeout && context.setTimeout; - - /* Built-in method references for those with the same name as other `lodash` methods. */ - var nativeCeil = Math.ceil, - nativeFloor = Math.floor, - nativeGetSymbols = Object.getOwnPropertySymbols, - nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined, - nativeIsFinite = context.isFinite, - nativeJoin = arrayProto.join, - nativeKeys = overArg(Object.keys, Object), - nativeMax = Math.max, - nativeMin = Math.min, - nativeNow = Date.now, - nativeParseInt = context.parseInt, - nativeRandom = Math.random, - nativeReverse = arrayProto.reverse; - - /* Built-in method references that are verified to be native. */ - var DataView = getNative(context, 'DataView'), - Map = getNative(context, 'Map'), - Promise = getNative(context, 'Promise'), - Set = getNative(context, 'Set'), - WeakMap = getNative(context, 'WeakMap'), - nativeCreate = getNative(Object, 'create'); - - /** Used to store function metadata. */ - var metaMap = WeakMap && new WeakMap; - - /** Used to lookup unminified function names. */ - var realNames = {}; - - /** Used to detect maps, sets, and weakmaps. */ - var dataViewCtorString = toSource(DataView), - mapCtorString = toSource(Map), - promiseCtorString = toSource(Promise), - setCtorString = toSource(Set), - weakMapCtorString = toSource(WeakMap); - - /** Used to convert symbols to primitives and strings. */ - var symbolProto = Symbol ? Symbol.prototype : undefined, - symbolValueOf = symbolProto ? symbolProto.valueOf : undefined, - symbolToString = symbolProto ? symbolProto.toString : undefined; - - /*------------------------------------------------------------------------*/ - - /** - * Creates a `lodash` object which wraps `value` to enable implicit method - * chain sequences. Methods that operate on and return arrays, collections, - * and functions can be chained together. Methods that retrieve a single value - * or may return a primitive value will automatically end the chain sequence - * and return the unwrapped value. Otherwise, the value must be unwrapped - * with `_#value`. - * - * Explicit chain sequences, which must be unwrapped with `_#value`, may be - * enabled using `_.chain`. - * - * The execution of chained methods is lazy, that is, it's deferred until - * `_#value` is implicitly or explicitly called. - * - * Lazy evaluation allows several methods to support shortcut fusion. - * Shortcut fusion is an optimization to merge iteratee calls; this avoids - * the creation of intermediate arrays and can greatly reduce the number of - * iteratee executions. Sections of a chain sequence qualify for shortcut - * fusion if the section is applied to an array and iteratees accept only - * one argument. The heuristic for whether a section qualifies for shortcut - * fusion is subject to change. - * - * Chaining is supported in custom builds as long as the `_#value` method is - * directly or indirectly included in the build. - * - * In addition to lodash methods, wrappers have `Array` and `String` methods. - * - * The wrapper `Array` methods are: - * `concat`, `join`, `pop`, `push`, `shift`, `sort`, `splice`, and `unshift` - * - * The wrapper `String` methods are: - * `replace` and `split` - * - * The wrapper methods that support shortcut fusion are: - * `at`, `compact`, `drop`, `dropRight`, `dropWhile`, `filter`, `find`, - * `findLast`, `head`, `initial`, `last`, `map`, `reject`, `reverse`, `slice`, - * `tail`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, and `toArray` - * - * The chainable wrapper methods are: - * `after`, `ary`, `assign`, `assignIn`, `assignInWith`, `assignWith`, `at`, - * `before`, `bind`, `bindAll`, `bindKey`, `castArray`, `chain`, `chunk`, - * `commit`, `compact`, `concat`, `conforms`, `constant`, `countBy`, `create`, - * `curry`, `debounce`, `defaults`, `defaultsDeep`, `defer`, `delay`, - * `difference`, `differenceBy`, `differenceWith`, `drop`, `dropRight`, - * `dropRightWhile`, `dropWhile`, `extend`, `extendWith`, `fill`, `filter`, - * `flatMap`, `flatMapDeep`, `flatMapDepth`, `flatten`, `flattenDeep`, - * `flattenDepth`, `flip`, `flow`, `flowRight`, `fromPairs`, `functions`, - * `functionsIn`, `groupBy`, `initial`, `intersection`, `intersectionBy`, - * `intersectionWith`, `invert`, `invertBy`, `invokeMap`, `iteratee`, `keyBy`, - * `keys`, `keysIn`, `map`, `mapKeys`, `mapValues`, `matches`, `matchesProperty`, - * `memoize`, `merge`, `mergeWith`, `method`, `methodOf`, `mixin`, `negate`, - * `nthArg`, `omit`, `omitBy`, `once`, `orderBy`, `over`, `overArgs`, - * `overEvery`, `overSome`, `partial`, `partialRight`, `partition`, `pick`, - * `pickBy`, `plant`, `property`, `propertyOf`, `pull`, `pullAll`, `pullAllBy`, - * `pullAllWith`, `pullAt`, `push`, `range`, `rangeRight`, `rearg`, `reject`, - * `remove`, `rest`, `reverse`, `sampleSize`, `set`, `setWith`, `shuffle`, - * `slice`, `sort`, `sortBy`, `splice`, `spread`, `tail`, `take`, `takeRight`, - * `takeRightWhile`, `takeWhile`, `tap`, `throttle`, `thru`, `toArray`, - * `toPairs`, `toPairsIn`, `toPath`, `toPlainObject`, `transform`, `unary`, - * `union`, `unionBy`, `unionWith`, `uniq`, `uniqBy`, `uniqWith`, `unset`, - * `unshift`, `unzip`, `unzipWith`, `update`, `updateWith`, `values`, - * `valuesIn`, `without`, `wrap`, `xor`, `xorBy`, `xorWith`, `zip`, - * `zipObject`, `zipObjectDeep`, and `zipWith` - * - * The wrapper methods that are **not** chainable by default are: - * `add`, `attempt`, `camelCase`, `capitalize`, `ceil`, `clamp`, `clone`, - * `cloneDeep`, `cloneDeepWith`, `cloneWith`, `conformsTo`, `deburr`, - * `defaultTo`, `divide`, `each`, `eachRight`, `endsWith`, `eq`, `escape`, - * `escapeRegExp`, `every`, `find`, `findIndex`, `findKey`, `findLast`, - * `findLastIndex`, `findLastKey`, `first`, `floor`, `forEach`, `forEachRight`, - * `forIn`, `forInRight`, `forOwn`, `forOwnRight`, `get`, `gt`, `gte`, `has`, - * `hasIn`, `head`, `identity`, `includes`, `indexOf`, `inRange`, `invoke`, - * `isArguments`, `isArray`, `isArrayBuffer`, `isArrayLike`, `isArrayLikeObject`, - * `isBoolean`, `isBuffer`, `isDate`, `isElement`, `isEmpty`, `isEqual`, - * `isEqualWith`, `isError`, `isFinite`, `isFunction`, `isInteger`, `isLength`, - * `isMap`, `isMatch`, `isMatchWith`, `isNaN`, `isNative`, `isNil`, `isNull`, - * `isNumber`, `isObject`, `isObjectLike`, `isPlainObject`, `isRegExp`, - * `isSafeInteger`, `isSet`, `isString`, `isUndefined`, `isTypedArray`, - * `isWeakMap`, `isWeakSet`, `join`, `kebabCase`, `last`, `lastIndexOf`, - * `lowerCase`, `lowerFirst`, `lt`, `lte`, `max`, `maxBy`, `mean`, `meanBy`, - * `min`, `minBy`, `multiply`, `noConflict`, `noop`, `now`, `nth`, `pad`, - * `padEnd`, `padStart`, `parseInt`, `pop`, `random`, `reduce`, `reduceRight`, - * `repeat`, `result`, `round`, `runInContext`, `sample`, `shift`, `size`, - * `snakeCase`, `some`, `sortedIndex`, `sortedIndexBy`, `sortedLastIndex`, - * `sortedLastIndexBy`, `startCase`, `startsWith`, `stubArray`, `stubFalse`, - * `stubObject`, `stubString`, `stubTrue`, `subtract`, `sum`, `sumBy`, - * `template`, `times`, `toFinite`, `toInteger`, `toJSON`, `toLength`, - * `toLower`, `toNumber`, `toSafeInteger`, `toString`, `toUpper`, `trim`, - * `trimEnd`, `trimStart`, `truncate`, `unescape`, `uniqueId`, `upperCase`, - * `upperFirst`, `value`, and `words` - * - * @name _ - * @constructor - * @category Seq - * @param {*} value The value to wrap in a `lodash` instance. - * @returns {Object} Returns the new `lodash` wrapper instance. - * @example - * - * function square(n) { - * return n * n; - * } - * - * var wrapped = _([1, 2, 3]); - * - * // Returns an unwrapped value. - * wrapped.reduce(_.add); - * // => 6 - * - * // Returns a wrapped value. - * var squares = wrapped.map(square); - * - * _.isArray(squares); - * // => false - * - * _.isArray(squares.value()); - * // => true - */ - function lodash(value) { - if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) { - if (value instanceof LodashWrapper) { - return value; - } - if (hasOwnProperty.call(value, '__wrapped__')) { - return wrapperClone(value); - } - } - return new LodashWrapper(value); - } - - /** - * The base implementation of `_.create` without support for assigning - * properties to the created object. - * - * @private - * @param {Object} proto The object to inherit from. - * @returns {Object} Returns the new object. - */ - var baseCreate = (function() { - function object() {} - return function(proto) { - if (!isObject(proto)) { - return {}; - } - if (objectCreate) { - return objectCreate(proto); - } - object.prototype = proto; - var result = new object; - object.prototype = undefined; - return result; - }; - }()); - - /** - * The function whose prototype chain sequence wrappers inherit from. - * - * @private - */ - function baseLodash() { - // No operation performed. - } - - /** - * The base constructor for creating `lodash` wrapper objects. - * - * @private - * @param {*} value The value to wrap. - * @param {boolean} [chainAll] Enable explicit method chain sequences. - */ - function LodashWrapper(value, chainAll) { - this.__wrapped__ = value; - this.__actions__ = []; - this.__chain__ = !!chainAll; - this.__index__ = 0; - this.__values__ = undefined; - } - - /** - * By default, the template delimiters used by lodash are like those in - * embedded Ruby (ERB) as well as ES2015 template strings. Change the - * following template settings to use alternative delimiters. - * - * @static - * @memberOf _ - * @type {Object} - */ - lodash.templateSettings = { - - /** - * Used to detect `data` property values to be HTML-escaped. - * - * @memberOf _.templateSettings - * @type {RegExp} - */ - 'escape': reEscape, - - /** - * Used to detect code to be evaluated. - * - * @memberOf _.templateSettings - * @type {RegExp} - */ - 'evaluate': reEvaluate, - - /** - * Used to detect `data` property values to inject. - * - * @memberOf _.templateSettings - * @type {RegExp} - */ - 'interpolate': reInterpolate, - - /** - * Used to reference the data object in the template text. - * - * @memberOf _.templateSettings - * @type {string} - */ - 'variable': '', - - /** - * Used to import variables into the compiled template. - * - * @memberOf _.templateSettings - * @type {Object} - */ - 'imports': { - - /** - * A reference to the `lodash` function. - * - * @memberOf _.templateSettings.imports - * @type {Function} - */ - '_': lodash - } - }; - - // Ensure wrappers are instances of `baseLodash`. - lodash.prototype = baseLodash.prototype; - lodash.prototype.constructor = lodash; - - LodashWrapper.prototype = baseCreate(baseLodash.prototype); - LodashWrapper.prototype.constructor = LodashWrapper; - - /*------------------------------------------------------------------------*/ - - /** - * Creates a lazy wrapper object which wraps `value` to enable lazy evaluation. - * - * @private - * @constructor - * @param {*} value The value to wrap. - */ - function LazyWrapper(value) { - this.__wrapped__ = value; - this.__actions__ = []; - this.__dir__ = 1; - this.__filtered__ = false; - this.__iteratees__ = []; - this.__takeCount__ = MAX_ARRAY_LENGTH; - this.__views__ = []; - } - - /** - * Creates a clone of the lazy wrapper object. - * - * @private - * @name clone - * @memberOf LazyWrapper - * @returns {Object} Returns the cloned `LazyWrapper` object. - */ - function lazyClone() { - var result = new LazyWrapper(this.__wrapped__); - result.__actions__ = copyArray(this.__actions__); - result.__dir__ = this.__dir__; - result.__filtered__ = this.__filtered__; - result.__iteratees__ = copyArray(this.__iteratees__); - result.__takeCount__ = this.__takeCount__; - result.__views__ = copyArray(this.__views__); - return result; - } - - /** - * Reverses the direction of lazy iteration. - * - * @private - * @name reverse - * @memberOf LazyWrapper - * @returns {Object} Returns the new reversed `LazyWrapper` object. - */ - function lazyReverse() { - if (this.__filtered__) { - var result = new LazyWrapper(this); - result.__dir__ = -1; - result.__filtered__ = true; - } else { - result = this.clone(); - result.__dir__ *= -1; - } - return result; - } - - /** - * Extracts the unwrapped value from its lazy wrapper. - * - * @private - * @name value - * @memberOf LazyWrapper - * @returns {*} Returns the unwrapped value. - */ - function lazyValue() { - var array = this.__wrapped__.value(), - dir = this.__dir__, - isArr = isArray(array), - isRight = dir < 0, - arrLength = isArr ? array.length : 0, - view = getView(0, arrLength, this.__views__), - start = view.start, - end = view.end, - length = end - start, - index = isRight ? end : (start - 1), - iteratees = this.__iteratees__, - iterLength = iteratees.length, - resIndex = 0, - takeCount = nativeMin(length, this.__takeCount__); - - if (!isArr || (!isRight && arrLength == length && takeCount == length)) { - return baseWrapperValue(array, this.__actions__); - } - var result = []; - - outer: - while (length-- && resIndex < takeCount) { - index += dir; - - var iterIndex = -1, - value = array[index]; - - while (++iterIndex < iterLength) { - var data = iteratees[iterIndex], - iteratee = data.iteratee, - type = data.type, - computed = iteratee(value); - - if (type == LAZY_MAP_FLAG) { - value = computed; - } else if (!computed) { - if (type == LAZY_FILTER_FLAG) { - continue outer; - } else { - break outer; - } - } - } - result[resIndex++] = value; - } - return result; - } - - // Ensure `LazyWrapper` is an instance of `baseLodash`. - LazyWrapper.prototype = baseCreate(baseLodash.prototype); - LazyWrapper.prototype.constructor = LazyWrapper; - - /*------------------------------------------------------------------------*/ - - /** - * Creates a hash object. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ - function Hash(entries) { - var index = -1, - length = entries == null ? 0 : entries.length; - - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); - } - } - - /** - * Removes all key-value entries from the hash. - * - * @private - * @name clear - * @memberOf Hash - */ - function hashClear() { - this.__data__ = nativeCreate ? nativeCreate(null) : {}; - this.size = 0; - } - - /** - * Removes `key` and its value from the hash. - * - * @private - * @name delete - * @memberOf Hash - * @param {Object} hash The hash to modify. - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ - function hashDelete(key) { - var result = this.has(key) && delete this.__data__[key]; - this.size -= result ? 1 : 0; - return result; - } - - /** - * Gets the hash value for `key`. - * - * @private - * @name get - * @memberOf Hash - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ - function hashGet(key) { - var data = this.__data__; - if (nativeCreate) { - var result = data[key]; - return result === HASH_UNDEFINED ? undefined : result; - } - return hasOwnProperty.call(data, key) ? data[key] : undefined; - } - - /** - * Checks if a hash value for `key` exists. - * - * @private - * @name has - * @memberOf Hash - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ - function hashHas(key) { - var data = this.__data__; - return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key); - } - - /** - * Sets the hash `key` to `value`. - * - * @private - * @name set - * @memberOf Hash - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the hash instance. - */ - function hashSet(key, value) { - var data = this.__data__; - this.size += this.has(key) ? 0 : 1; - data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value; - return this; - } - - // Add methods to `Hash`. - Hash.prototype.clear = hashClear; - Hash.prototype['delete'] = hashDelete; - Hash.prototype.get = hashGet; - Hash.prototype.has = hashHas; - Hash.prototype.set = hashSet; - - /*------------------------------------------------------------------------*/ - - /** - * Creates an list cache object. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ - function ListCache(entries) { - var index = -1, - length = entries == null ? 0 : entries.length; - - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); - } - } - - /** - * Removes all key-value entries from the list cache. - * - * @private - * @name clear - * @memberOf ListCache - */ - function listCacheClear() { - this.__data__ = []; - this.size = 0; - } - - /** - * Removes `key` and its value from the list cache. - * - * @private - * @name delete - * @memberOf ListCache - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ - function listCacheDelete(key) { - var data = this.__data__, - index = assocIndexOf(data, key); - - if (index < 0) { - return false; - } - var lastIndex = data.length - 1; - if (index == lastIndex) { - data.pop(); - } else { - splice.call(data, index, 1); - } - --this.size; - return true; - } - - /** - * Gets the list cache value for `key`. - * - * @private - * @name get - * @memberOf ListCache - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ - function listCacheGet(key) { - var data = this.__data__, - index = assocIndexOf(data, key); - - return index < 0 ? undefined : data[index][1]; - } - - /** - * Checks if a list cache value for `key` exists. - * - * @private - * @name has - * @memberOf ListCache - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ - function listCacheHas(key) { - return assocIndexOf(this.__data__, key) > -1; - } - - /** - * Sets the list cache `key` to `value`. - * - * @private - * @name set - * @memberOf ListCache - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the list cache instance. - */ - function listCacheSet(key, value) { - var data = this.__data__, - index = assocIndexOf(data, key); - - if (index < 0) { - ++this.size; - data.push([key, value]); - } else { - data[index][1] = value; - } - return this; - } - - // Add methods to `ListCache`. - ListCache.prototype.clear = listCacheClear; - ListCache.prototype['delete'] = listCacheDelete; - ListCache.prototype.get = listCacheGet; - ListCache.prototype.has = listCacheHas; - ListCache.prototype.set = listCacheSet; - - /*------------------------------------------------------------------------*/ - - /** - * Creates a map cache object to store key-value pairs. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ - function MapCache(entries) { - var index = -1, - length = entries == null ? 0 : entries.length; - - this.clear(); - while (++index < length) { - var entry = entries[index]; - this.set(entry[0], entry[1]); - } - } - - /** - * Removes all key-value entries from the map. - * - * @private - * @name clear - * @memberOf MapCache - */ - function mapCacheClear() { - this.size = 0; - this.__data__ = { - 'hash': new Hash, - 'map': new (Map || ListCache), - 'string': new Hash - }; - } - - /** - * Removes `key` and its value from the map. - * - * @private - * @name delete - * @memberOf MapCache - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ - function mapCacheDelete(key) { - var result = getMapData(this, key)['delete'](key); - this.size -= result ? 1 : 0; - return result; - } - - /** - * Gets the map value for `key`. - * - * @private - * @name get - * @memberOf MapCache - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ - function mapCacheGet(key) { - return getMapData(this, key).get(key); - } - - /** - * Checks if a map value for `key` exists. - * - * @private - * @name has - * @memberOf MapCache - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ - function mapCacheHas(key) { - return getMapData(this, key).has(key); - } - - /** - * Sets the map `key` to `value`. - * - * @private - * @name set - * @memberOf MapCache - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the map cache instance. - */ - function mapCacheSet(key, value) { - var data = getMapData(this, key), - size = data.size; - - data.set(key, value); - this.size += data.size == size ? 0 : 1; - return this; - } - - // Add methods to `MapCache`. - MapCache.prototype.clear = mapCacheClear; - MapCache.prototype['delete'] = mapCacheDelete; - MapCache.prototype.get = mapCacheGet; - MapCache.prototype.has = mapCacheHas; - MapCache.prototype.set = mapCacheSet; - - /*------------------------------------------------------------------------*/ - - /** - * - * Creates an array cache object to store unique values. - * - * @private - * @constructor - * @param {Array} [values] The values to cache. - */ - function SetCache(values) { - var index = -1, - length = values == null ? 0 : values.length; - - this.__data__ = new MapCache; - while (++index < length) { - this.add(values[index]); - } - } - - /** - * Adds `value` to the array cache. - * - * @private - * @name add - * @memberOf SetCache - * @alias push - * @param {*} value The value to cache. - * @returns {Object} Returns the cache instance. - */ - function setCacheAdd(value) { - this.__data__.set(value, HASH_UNDEFINED); - return this; - } - - /** - * Checks if `value` is in the array cache. - * - * @private - * @name has - * @memberOf SetCache - * @param {*} value The value to search for. - * @returns {number} Returns `true` if `value` is found, else `false`. - */ - function setCacheHas(value) { - return this.__data__.has(value); - } - - // Add methods to `SetCache`. - SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; - SetCache.prototype.has = setCacheHas; - - /*------------------------------------------------------------------------*/ - - /** - * Creates a stack cache object to store key-value pairs. - * - * @private - * @constructor - * @param {Array} [entries] The key-value pairs to cache. - */ - function Stack(entries) { - var data = this.__data__ = new ListCache(entries); - this.size = data.size; - } - - /** - * Removes all key-value entries from the stack. - * - * @private - * @name clear - * @memberOf Stack - */ - function stackClear() { - this.__data__ = new ListCache; - this.size = 0; - } - - /** - * Removes `key` and its value from the stack. - * - * @private - * @name delete - * @memberOf Stack - * @param {string} key The key of the value to remove. - * @returns {boolean} Returns `true` if the entry was removed, else `false`. - */ - function stackDelete(key) { - var data = this.__data__, - result = data['delete'](key); - - this.size = data.size; - return result; - } - - /** - * Gets the stack value for `key`. - * - * @private - * @name get - * @memberOf Stack - * @param {string} key The key of the value to get. - * @returns {*} Returns the entry value. - */ - function stackGet(key) { - return this.__data__.get(key); - } - - /** - * Checks if a stack value for `key` exists. - * - * @private - * @name has - * @memberOf Stack - * @param {string} key The key of the entry to check. - * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. - */ - function stackHas(key) { - return this.__data__.has(key); - } - - /** - * Sets the stack `key` to `value`. - * - * @private - * @name set - * @memberOf Stack - * @param {string} key The key of the value to set. - * @param {*} value The value to set. - * @returns {Object} Returns the stack cache instance. - */ - function stackSet(key, value) { - var data = this.__data__; - if (data instanceof ListCache) { - var pairs = data.__data__; - if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) { - pairs.push([key, value]); - this.size = ++data.size; - return this; - } - data = this.__data__ = new MapCache(pairs); - } - data.set(key, value); - this.size = data.size; - return this; - } - - // Add methods to `Stack`. - Stack.prototype.clear = stackClear; - Stack.prototype['delete'] = stackDelete; - Stack.prototype.get = stackGet; - Stack.prototype.has = stackHas; - Stack.prototype.set = stackSet; - - /*------------------------------------------------------------------------*/ - - /** - * Creates an array of the enumerable property names of the array-like `value`. - * - * @private - * @param {*} value The value to query. - * @param {boolean} inherited Specify returning inherited property names. - * @returns {Array} Returns the array of property names. - */ - function arrayLikeKeys(value, inherited) { - var isArr = isArray(value), - isArg = !isArr && isArguments(value), - isBuff = !isArr && !isArg && isBuffer(value), - isType = !isArr && !isArg && !isBuff && isTypedArray(value), - skipIndexes = isArr || isArg || isBuff || isType, - result = skipIndexes ? baseTimes(value.length, String) : [], - length = result.length; - - for (var key in value) { - if ((inherited || hasOwnProperty.call(value, key)) && - !(skipIndexes && ( - // Safari 9 has enumerable `arguments.length` in strict mode. - key == 'length' || - // Node.js 0.10 has enumerable non-index properties on buffers. - (isBuff && (key == 'offset' || key == 'parent')) || - // PhantomJS 2 has enumerable non-index properties on typed arrays. - (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) || - // Skip index properties. - isIndex(key, length) - ))) { - result.push(key); - } - } - return result; - } - - /** - * A specialized version of `_.sample` for arrays. - * - * @private - * @param {Array} array The array to sample. - * @returns {*} Returns the random element. - */ - function arraySample(array) { - var length = array.length; - return length ? array[baseRandom(0, length - 1)] : undefined; - } - - /** - * A specialized version of `_.sampleSize` for arrays. - * - * @private - * @param {Array} array The array to sample. - * @param {number} n The number of elements to sample. - * @returns {Array} Returns the random elements. - */ - function arraySampleSize(array, n) { - return shuffleSelf(copyArray(array), baseClamp(n, 0, array.length)); - } - - /** - * A specialized version of `_.shuffle` for arrays. - * - * @private - * @param {Array} array The array to shuffle. - * @returns {Array} Returns the new shuffled array. - */ - function arrayShuffle(array) { - return shuffleSelf(copyArray(array)); - } - - /** - * This function is like `assignValue` except that it doesn't assign - * `undefined` values. - * - * @private - * @param {Object} object The object to modify. - * @param {string} key The key of the property to assign. - * @param {*} value The value to assign. - */ - function assignMergeValue(object, key, value) { - if ((value !== undefined && !eq(object[key], value)) || - (value === undefined && !(key in object))) { - baseAssignValue(object, key, value); - } - } - - /** - * Assigns `value` to `key` of `object` if the existing value is not equivalent - * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. - * - * @private - * @param {Object} object The object to modify. - * @param {string} key The key of the property to assign. - * @param {*} value The value to assign. - */ - function assignValue(object, key, value) { - var objValue = object[key]; - if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) || - (value === undefined && !(key in object))) { - baseAssignValue(object, key, value); - } - } - - /** - * Gets the index at which the `key` is found in `array` of key-value pairs. - * - * @private - * @param {Array} array The array to inspect. - * @param {*} key The key to search for. - * @returns {number} Returns the index of the matched value, else `-1`. - */ - function assocIndexOf(array, key) { - var length = array.length; - while (length--) { - if (eq(array[length][0], key)) { - return length; - } - } - return -1; - } - - /** - * Aggregates elements of `collection` on `accumulator` with keys transformed - * by `iteratee` and values set by `setter`. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} setter The function to set `accumulator` values. - * @param {Function} iteratee The iteratee to transform keys. - * @param {Object} accumulator The initial aggregated object. - * @returns {Function} Returns `accumulator`. - */ - function baseAggregator(collection, setter, iteratee, accumulator) { - baseEach(collection, function(value, key, collection) { - setter(accumulator, value, iteratee(value), collection); - }); - return accumulator; - } - - /** - * The base implementation of `_.assign` without support for multiple sources - * or `customizer` functions. - * - * @private - * @param {Object} object The destination object. - * @param {Object} source The source object. - * @returns {Object} Returns `object`. - */ - function baseAssign(object, source) { - return object && copyObject(source, keys(source), object); - } - - /** - * The base implementation of `_.assignIn` without support for multiple sources - * or `customizer` functions. - * - * @private - * @param {Object} object The destination object. - * @param {Object} source The source object. - * @returns {Object} Returns `object`. - */ - function baseAssignIn(object, source) { - return object && copyObject(source, keysIn(source), object); - } - - /** - * The base implementation of `assignValue` and `assignMergeValue` without - * value checks. - * - * @private - * @param {Object} object The object to modify. - * @param {string} key The key of the property to assign. - * @param {*} value The value to assign. - */ - function baseAssignValue(object, key, value) { - if (key == '__proto__' && defineProperty) { - defineProperty(object, key, { - 'configurable': true, - 'enumerable': true, - 'value': value, - 'writable': true - }); - } else { - object[key] = value; - } - } - - /** - * The base implementation of `_.at` without support for individual paths. - * - * @private - * @param {Object} object The object to iterate over. - * @param {string[]} paths The property paths to pick. - * @returns {Array} Returns the picked elements. - */ - function baseAt(object, paths) { - var index = -1, - length = paths.length, - result = Array(length), - skip = object == null; - - while (++index < length) { - result[index] = skip ? undefined : get(object, paths[index]); - } - return result; - } - - /** - * The base implementation of `_.clamp` which doesn't coerce arguments. - * - * @private - * @param {number} number The number to clamp. - * @param {number} [lower] The lower bound. - * @param {number} upper The upper bound. - * @returns {number} Returns the clamped number. - */ - function baseClamp(number, lower, upper) { - if (number === number) { - if (upper !== undefined) { - number = number <= upper ? number : upper; - } - if (lower !== undefined) { - number = number >= lower ? number : lower; - } - } - return number; - } - - /** - * The base implementation of `_.clone` and `_.cloneDeep` which tracks - * traversed objects. - * - * @private - * @param {*} value The value to clone. - * @param {boolean} bitmask The bitmask flags. - * 1 - Deep clone - * 2 - Flatten inherited properties - * 4 - Clone symbols - * @param {Function} [customizer] The function to customize cloning. - * @param {string} [key] The key of `value`. - * @param {Object} [object] The parent object of `value`. - * @param {Object} [stack] Tracks traversed objects and their clone counterparts. - * @returns {*} Returns the cloned value. - */ - function baseClone(value, bitmask, customizer, key, object, stack) { - var result, - isDeep = bitmask & CLONE_DEEP_FLAG, - isFlat = bitmask & CLONE_FLAT_FLAG, - isFull = bitmask & CLONE_SYMBOLS_FLAG; - - if (customizer) { - result = object ? customizer(value, key, object, stack) : customizer(value); - } - if (result !== undefined) { - return result; - } - if (!isObject(value)) { - return value; - } - var isArr = isArray(value); - if (isArr) { - result = initCloneArray(value); - if (!isDeep) { - return copyArray(value, result); - } - } else { - var tag = getTag(value), - isFunc = tag == funcTag || tag == genTag; - - if (isBuffer(value)) { - return cloneBuffer(value, isDeep); - } - if (tag == objectTag || tag == argsTag || (isFunc && !object)) { - result = (isFlat || isFunc) ? {} : initCloneObject(value); - if (!isDeep) { - return isFlat - ? copySymbolsIn(value, baseAssignIn(result, value)) - : copySymbols(value, baseAssign(result, value)); - } - } else { - if (!cloneableTags[tag]) { - return object ? value : {}; - } - result = initCloneByTag(value, tag, isDeep); - } - } - // Check for circular references and return its corresponding clone. - stack || (stack = new Stack); - var stacked = stack.get(value); - if (stacked) { - return stacked; - } - stack.set(value, result); - - if (isSet(value)) { - value.forEach(function(subValue) { - result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack)); - }); - - return result; - } - - if (isMap(value)) { - value.forEach(function(subValue, key) { - result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack)); - }); - - return result; - } - - var keysFunc = isFull - ? (isFlat ? getAllKeysIn : getAllKeys) - : (isFlat ? keysIn : keys); - - var props = isArr ? undefined : keysFunc(value); - arrayEach(props || value, function(subValue, key) { - if (props) { - key = subValue; - subValue = value[key]; - } - // Recursively populate clone (susceptible to call stack limits). - assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack)); - }); - return result; - } - - /** - * The base implementation of `_.conforms` which doesn't clone `source`. - * - * @private - * @param {Object} source The object of property predicates to conform to. - * @returns {Function} Returns the new spec function. - */ - function baseConforms(source) { - var props = keys(source); - return function(object) { - return baseConformsTo(object, source, props); - }; - } - - /** - * The base implementation of `_.conformsTo` which accepts `props` to check. - * - * @private - * @param {Object} object The object to inspect. - * @param {Object} source The object of property predicates to conform to. - * @returns {boolean} Returns `true` if `object` conforms, else `false`. - */ - function baseConformsTo(object, source, props) { - var length = props.length; - if (object == null) { - return !length; - } - object = Object(object); - while (length--) { - var key = props[length], - predicate = source[key], - value = object[key]; - - if ((value === undefined && !(key in object)) || !predicate(value)) { - return false; - } - } - return true; - } - - /** - * The base implementation of `_.delay` and `_.defer` which accepts `args` - * to provide to `func`. - * - * @private - * @param {Function} func The function to delay. - * @param {number} wait The number of milliseconds to delay invocation. - * @param {Array} args The arguments to provide to `func`. - * @returns {number|Object} Returns the timer id or timeout object. - */ - function baseDelay(func, wait, args) { - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - return setTimeout(function() { func.apply(undefined, args); }, wait); - } - - /** - * The base implementation of methods like `_.difference` without support - * for excluding multiple arrays or iteratee shorthands. - * - * @private - * @param {Array} array The array to inspect. - * @param {Array} values The values to exclude. - * @param {Function} [iteratee] The iteratee invoked per element. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new array of filtered values. - */ - function baseDifference(array, values, iteratee, comparator) { - var index = -1, - includes = arrayIncludes, - isCommon = true, - length = array.length, - result = [], - valuesLength = values.length; - - if (!length) { - return result; - } - if (iteratee) { - values = arrayMap(values, baseUnary(iteratee)); - } - if (comparator) { - includes = arrayIncludesWith; - isCommon = false; - } - else if (values.length >= LARGE_ARRAY_SIZE) { - includes = cacheHas; - isCommon = false; - values = new SetCache(values); - } - outer: - while (++index < length) { - var value = array[index], - computed = iteratee == null ? value : iteratee(value); - - value = (comparator || value !== 0) ? value : 0; - if (isCommon && computed === computed) { - var valuesIndex = valuesLength; - while (valuesIndex--) { - if (values[valuesIndex] === computed) { - continue outer; - } - } - result.push(value); - } - else if (!includes(values, computed, comparator)) { - result.push(value); - } - } - return result; - } - - /** - * The base implementation of `_.forEach` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array|Object} Returns `collection`. - */ - var baseEach = createBaseEach(baseForOwn); - - /** - * The base implementation of `_.forEachRight` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array|Object} Returns `collection`. - */ - var baseEachRight = createBaseEach(baseForOwnRight, true); - - /** - * The base implementation of `_.every` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {boolean} Returns `true` if all elements pass the predicate check, - * else `false` - */ - function baseEvery(collection, predicate) { - var result = true; - baseEach(collection, function(value, index, collection) { - result = !!predicate(value, index, collection); - return result; - }); - return result; - } - - /** - * The base implementation of methods like `_.max` and `_.min` which accepts a - * `comparator` to determine the extremum value. - * - * @private - * @param {Array} array The array to iterate over. - * @param {Function} iteratee The iteratee invoked per iteration. - * @param {Function} comparator The comparator used to compare values. - * @returns {*} Returns the extremum value. - */ - function baseExtremum(array, iteratee, comparator) { - var index = -1, - length = array.length; - - while (++index < length) { - var value = array[index], - current = iteratee(value); - - if (current != null && (computed === undefined - ? (current === current && !isSymbol(current)) - : comparator(current, computed) - )) { - var computed = current, - result = value; - } - } - return result; - } - - /** - * The base implementation of `_.fill` without an iteratee call guard. - * - * @private - * @param {Array} array The array to fill. - * @param {*} value The value to fill `array` with. - * @param {number} [start=0] The start position. - * @param {number} [end=array.length] The end position. - * @returns {Array} Returns `array`. - */ - function baseFill(array, value, start, end) { - var length = array.length; - - start = toInteger(start); - if (start < 0) { - start = -start > length ? 0 : (length + start); - } - end = (end === undefined || end > length) ? length : toInteger(end); - if (end < 0) { - end += length; - } - end = start > end ? 0 : toLength(end); - while (start < end) { - array[start++] = value; - } - return array; - } - - /** - * The base implementation of `_.filter` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {Array} Returns the new filtered array. - */ - function baseFilter(collection, predicate) { - var result = []; - baseEach(collection, function(value, index, collection) { - if (predicate(value, index, collection)) { - result.push(value); - } - }); - return result; - } - - /** - * The base implementation of `_.flatten` with support for restricting flattening. - * - * @private - * @param {Array} array The array to flatten. - * @param {number} depth The maximum recursion depth. - * @param {boolean} [predicate=isFlattenable] The function invoked per iteration. - * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks. - * @param {Array} [result=[]] The initial result value. - * @returns {Array} Returns the new flattened array. - */ - function baseFlatten(array, depth, predicate, isStrict, result) { - var index = -1, - length = array.length; - - predicate || (predicate = isFlattenable); - result || (result = []); - - while (++index < length) { - var value = array[index]; - if (depth > 0 && predicate(value)) { - if (depth > 1) { - // Recursively flatten arrays (susceptible to call stack limits). - baseFlatten(value, depth - 1, predicate, isStrict, result); - } else { - arrayPush(result, value); - } - } else if (!isStrict) { - result[result.length] = value; - } - } - return result; - } - - /** - * The base implementation of `baseForOwn` which iterates over `object` - * properties returned by `keysFunc` and invokes `iteratee` for each property. - * Iteratee functions may exit iteration early by explicitly returning `false`. - * - * @private - * @param {Object} object The object to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @param {Function} keysFunc The function to get the keys of `object`. - * @returns {Object} Returns `object`. - */ - var baseFor = createBaseFor(); - - /** - * This function is like `baseFor` except that it iterates over properties - * in the opposite order. - * - * @private - * @param {Object} object The object to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @param {Function} keysFunc The function to get the keys of `object`. - * @returns {Object} Returns `object`. - */ - var baseForRight = createBaseFor(true); - - /** - * The base implementation of `_.forOwn` without support for iteratee shorthands. - * - * @private - * @param {Object} object The object to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Object} Returns `object`. - */ - function baseForOwn(object, iteratee) { - return object && baseFor(object, iteratee, keys); - } - - /** - * The base implementation of `_.forOwnRight` without support for iteratee shorthands. - * - * @private - * @param {Object} object The object to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Object} Returns `object`. - */ - function baseForOwnRight(object, iteratee) { - return object && baseForRight(object, iteratee, keys); - } - - /** - * The base implementation of `_.functions` which creates an array of - * `object` function property names filtered from `props`. - * - * @private - * @param {Object} object The object to inspect. - * @param {Array} props The property names to filter. - * @returns {Array} Returns the function names. - */ - function baseFunctions(object, props) { - return arrayFilter(props, function(key) { - return isFunction(object[key]); - }); - } - - /** - * The base implementation of `_.get` without support for default values. - * - * @private - * @param {Object} object The object to query. - * @param {Array|string} path The path of the property to get. - * @returns {*} Returns the resolved value. - */ - function baseGet(object, path) { - path = castPath(path, object); - - var index = 0, - length = path.length; - - while (object != null && index < length) { - object = object[toKey(path[index++])]; - } - return (index && index == length) ? object : undefined; - } - - /** - * The base implementation of `getAllKeys` and `getAllKeysIn` which uses - * `keysFunc` and `symbolsFunc` to get the enumerable property names and - * symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @param {Function} keysFunc The function to get the keys of `object`. - * @param {Function} symbolsFunc The function to get the symbols of `object`. - * @returns {Array} Returns the array of property names and symbols. - */ - function baseGetAllKeys(object, keysFunc, symbolsFunc) { - var result = keysFunc(object); - return isArray(object) ? result : arrayPush(result, symbolsFunc(object)); - } - - /** - * The base implementation of `getTag` without fallbacks for buggy environments. - * - * @private - * @param {*} value The value to query. - * @returns {string} Returns the `toStringTag`. - */ - function baseGetTag(value) { - if (value == null) { - return value === undefined ? undefinedTag : nullTag; - } - return (symToStringTag && symToStringTag in Object(value)) - ? getRawTag(value) - : objectToString(value); - } - - /** - * The base implementation of `_.gt` which doesn't coerce arguments. - * - * @private - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if `value` is greater than `other`, - * else `false`. - */ - function baseGt(value, other) { - return value > other; - } - - /** - * The base implementation of `_.has` without support for deep paths. - * - * @private - * @param {Object} [object] The object to query. - * @param {Array|string} key The key to check. - * @returns {boolean} Returns `true` if `key` exists, else `false`. - */ - function baseHas(object, key) { - return object != null && hasOwnProperty.call(object, key); - } - - /** - * The base implementation of `_.hasIn` without support for deep paths. - * - * @private - * @param {Object} [object] The object to query. - * @param {Array|string} key The key to check. - * @returns {boolean} Returns `true` if `key` exists, else `false`. - */ - function baseHasIn(object, key) { - return object != null && key in Object(object); - } - - /** - * The base implementation of `_.inRange` which doesn't coerce arguments. - * - * @private - * @param {number} number The number to check. - * @param {number} start The start of the range. - * @param {number} end The end of the range. - * @returns {boolean} Returns `true` if `number` is in the range, else `false`. - */ - function baseInRange(number, start, end) { - return number >= nativeMin(start, end) && number < nativeMax(start, end); - } - - /** - * The base implementation of methods like `_.intersection`, without support - * for iteratee shorthands, that accepts an array of arrays to inspect. - * - * @private - * @param {Array} arrays The arrays to inspect. - * @param {Function} [iteratee] The iteratee invoked per element. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new array of shared values. - */ - function baseIntersection(arrays, iteratee, comparator) { - var includes = comparator ? arrayIncludesWith : arrayIncludes, - length = arrays[0].length, - othLength = arrays.length, - othIndex = othLength, - caches = Array(othLength), - maxLength = Infinity, - result = []; - - while (othIndex--) { - var array = arrays[othIndex]; - if (othIndex && iteratee) { - array = arrayMap(array, baseUnary(iteratee)); - } - maxLength = nativeMin(array.length, maxLength); - caches[othIndex] = !comparator && (iteratee || (length >= 120 && array.length >= 120)) - ? new SetCache(othIndex && array) - : undefined; - } - array = arrays[0]; - - var index = -1, - seen = caches[0]; - - outer: - while (++index < length && result.length < maxLength) { - var value = array[index], - computed = iteratee ? iteratee(value) : value; - - value = (comparator || value !== 0) ? value : 0; - if (!(seen - ? cacheHas(seen, computed) - : includes(result, computed, comparator) - )) { - othIndex = othLength; - while (--othIndex) { - var cache = caches[othIndex]; - if (!(cache - ? cacheHas(cache, computed) - : includes(arrays[othIndex], computed, comparator)) - ) { - continue outer; - } - } - if (seen) { - seen.push(computed); - } - result.push(value); - } - } - return result; - } - - /** - * The base implementation of `_.invert` and `_.invertBy` which inverts - * `object` with values transformed by `iteratee` and set by `setter`. - * - * @private - * @param {Object} object The object to iterate over. - * @param {Function} setter The function to set `accumulator` values. - * @param {Function} iteratee The iteratee to transform values. - * @param {Object} accumulator The initial inverted object. - * @returns {Function} Returns `accumulator`. - */ - function baseInverter(object, setter, iteratee, accumulator) { - baseForOwn(object, function(value, key, object) { - setter(accumulator, iteratee(value), key, object); - }); - return accumulator; - } - - /** - * The base implementation of `_.invoke` without support for individual - * method arguments. - * - * @private - * @param {Object} object The object to query. - * @param {Array|string} path The path of the method to invoke. - * @param {Array} args The arguments to invoke the method with. - * @returns {*} Returns the result of the invoked method. - */ - function baseInvoke(object, path, args) { - path = castPath(path, object); - object = parent(object, path); - var func = object == null ? object : object[toKey(last(path))]; - return func == null ? undefined : apply(func, object, args); - } - - /** - * The base implementation of `_.isArguments`. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an `arguments` object, - */ - function baseIsArguments(value) { - return isObjectLike(value) && baseGetTag(value) == argsTag; - } - - /** - * The base implementation of `_.isArrayBuffer` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`. - */ - function baseIsArrayBuffer(value) { - return isObjectLike(value) && baseGetTag(value) == arrayBufferTag; - } - - /** - * The base implementation of `_.isDate` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a date object, else `false`. - */ - function baseIsDate(value) { - return isObjectLike(value) && baseGetTag(value) == dateTag; - } - - /** - * The base implementation of `_.isEqual` which supports partial comparisons - * and tracks traversed objects. - * - * @private - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @param {boolean} bitmask The bitmask flags. - * 1 - Unordered comparison - * 2 - Partial comparison - * @param {Function} [customizer] The function to customize comparisons. - * @param {Object} [stack] Tracks traversed `value` and `other` objects. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - */ - function baseIsEqual(value, other, bitmask, customizer, stack) { - if (value === other) { - return true; - } - if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) { - return value !== value && other !== other; - } - return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack); - } - - /** - * A specialized version of `baseIsEqual` for arrays and objects which performs - * deep comparisons and tracks traversed objects enabling objects with circular - * references to be compared. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} [stack] Tracks traversed `object` and `other` objects. - * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. - */ - function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { - var objIsArr = isArray(object), - othIsArr = isArray(other), - objTag = objIsArr ? arrayTag : getTag(object), - othTag = othIsArr ? arrayTag : getTag(other); - - objTag = objTag == argsTag ? objectTag : objTag; - othTag = othTag == argsTag ? objectTag : othTag; - - var objIsObj = objTag == objectTag, - othIsObj = othTag == objectTag, - isSameTag = objTag == othTag; - - if (isSameTag && isBuffer(object)) { - if (!isBuffer(other)) { - return false; - } - objIsArr = true; - objIsObj = false; - } - if (isSameTag && !objIsObj) { - stack || (stack = new Stack); - return (objIsArr || isTypedArray(object)) - ? equalArrays(object, other, bitmask, customizer, equalFunc, stack) - : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack); - } - if (!(bitmask & COMPARE_PARTIAL_FLAG)) { - var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'), - othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__'); - - if (objIsWrapped || othIsWrapped) { - var objUnwrapped = objIsWrapped ? object.value() : object, - othUnwrapped = othIsWrapped ? other.value() : other; - - stack || (stack = new Stack); - return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); - } - } - if (!isSameTag) { - return false; - } - stack || (stack = new Stack); - return equalObjects(object, other, bitmask, customizer, equalFunc, stack); - } - - /** - * The base implementation of `_.isMap` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a map, else `false`. - */ - function baseIsMap(value) { - return isObjectLike(value) && getTag(value) == mapTag; - } - - /** - * The base implementation of `_.isMatch` without support for iteratee shorthands. - * - * @private - * @param {Object} object The object to inspect. - * @param {Object} source The object of property values to match. - * @param {Array} matchData The property names, values, and compare flags to match. - * @param {Function} [customizer] The function to customize comparisons. - * @returns {boolean} Returns `true` if `object` is a match, else `false`. - */ - function baseIsMatch(object, source, matchData, customizer) { - var index = matchData.length, - length = index, - noCustomizer = !customizer; - - if (object == null) { - return !length; - } - object = Object(object); - while (index--) { - var data = matchData[index]; - if ((noCustomizer && data[2]) - ? data[1] !== object[data[0]] - : !(data[0] in object) - ) { - return false; - } - } - while (++index < length) { - data = matchData[index]; - var key = data[0], - objValue = object[key], - srcValue = data[1]; - - if (noCustomizer && data[2]) { - if (objValue === undefined && !(key in object)) { - return false; - } - } else { - var stack = new Stack; - if (customizer) { - var result = customizer(objValue, srcValue, key, object, source, stack); - } - if (!(result === undefined - ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack) - : result - )) { - return false; - } - } - } - return true; - } - - /** - * The base implementation of `_.isNative` without bad shim checks. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a native function, - * else `false`. - */ - function baseIsNative(value) { - if (!isObject(value) || isMasked(value)) { - return false; - } - var pattern = isFunction(value) ? reIsNative : reIsHostCtor; - return pattern.test(toSource(value)); - } - - /** - * The base implementation of `_.isRegExp` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. - */ - function baseIsRegExp(value) { - return isObjectLike(value) && baseGetTag(value) == regexpTag; - } - - /** - * The base implementation of `_.isSet` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a set, else `false`. - */ - function baseIsSet(value) { - return isObjectLike(value) && getTag(value) == setTag; - } - - /** - * The base implementation of `_.isTypedArray` without Node.js optimizations. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. - */ - function baseIsTypedArray(value) { - return isObjectLike(value) && - isLength(value.length) && !!typedArrayTags[baseGetTag(value)]; - } - - /** - * The base implementation of `_.iteratee`. - * - * @private - * @param {*} [value=_.identity] The value to convert to an iteratee. - * @returns {Function} Returns the iteratee. - */ - function baseIteratee(value) { - // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9. - // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details. - if (typeof value == 'function') { - return value; - } - if (value == null) { - return identity; - } - if (typeof value == 'object') { - return isArray(value) - ? baseMatchesProperty(value[0], value[1]) - : baseMatches(value); - } - return property(value); - } - - /** - * The base implementation of `_.keys` which doesn't treat sparse arrays as dense. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - */ - function baseKeys(object) { - if (!isPrototype(object)) { - return nativeKeys(object); - } - var result = []; - for (var key in Object(object)) { - if (hasOwnProperty.call(object, key) && key != 'constructor') { - result.push(key); - } - } - return result; - } - - /** - * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - */ - function baseKeysIn(object) { - if (!isObject(object)) { - return nativeKeysIn(object); - } - var isProto = isPrototype(object), - result = []; - - for (var key in object) { - if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) { - result.push(key); - } - } - return result; - } - - /** - * The base implementation of `_.lt` which doesn't coerce arguments. - * - * @private - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if `value` is less than `other`, - * else `false`. - */ - function baseLt(value, other) { - return value < other; - } - - /** - * The base implementation of `_.map` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} iteratee The function invoked per iteration. - * @returns {Array} Returns the new mapped array. - */ - function baseMap(collection, iteratee) { - var index = -1, - result = isArrayLike(collection) ? Array(collection.length) : []; - - baseEach(collection, function(value, key, collection) { - result[++index] = iteratee(value, key, collection); - }); - return result; - } - - /** - * The base implementation of `_.matches` which doesn't clone `source`. - * - * @private - * @param {Object} source The object of property values to match. - * @returns {Function} Returns the new spec function. - */ - function baseMatches(source) { - var matchData = getMatchData(source); - if (matchData.length == 1 && matchData[0][2]) { - return matchesStrictComparable(matchData[0][0], matchData[0][1]); - } - return function(object) { - return object === source || baseIsMatch(object, source, matchData); - }; - } - - /** - * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`. - * - * @private - * @param {string} path The path of the property to get. - * @param {*} srcValue The value to match. - * @returns {Function} Returns the new spec function. - */ - function baseMatchesProperty(path, srcValue) { - if (isKey(path) && isStrictComparable(srcValue)) { - return matchesStrictComparable(toKey(path), srcValue); - } - return function(object) { - var objValue = get(object, path); - return (objValue === undefined && objValue === srcValue) - ? hasIn(object, path) - : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG); - }; - } - - /** - * The base implementation of `_.merge` without support for multiple sources. - * - * @private - * @param {Object} object The destination object. - * @param {Object} source The source object. - * @param {number} srcIndex The index of `source`. - * @param {Function} [customizer] The function to customize merged values. - * @param {Object} [stack] Tracks traversed source values and their merged - * counterparts. - */ - function baseMerge(object, source, srcIndex, customizer, stack) { - if (object === source) { - return; - } - baseFor(source, function(srcValue, key) { - if (isObject(srcValue)) { - stack || (stack = new Stack); - baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack); - } - else { - var newValue = customizer - ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack) - : undefined; - - if (newValue === undefined) { - newValue = srcValue; - } - assignMergeValue(object, key, newValue); - } - }, keysIn); - } - - /** - * A specialized version of `baseMerge` for arrays and objects which performs - * deep merges and tracks traversed objects enabling objects with circular - * references to be merged. - * - * @private - * @param {Object} object The destination object. - * @param {Object} source The source object. - * @param {string} key The key of the value to merge. - * @param {number} srcIndex The index of `source`. - * @param {Function} mergeFunc The function to merge values. - * @param {Function} [customizer] The function to customize assigned values. - * @param {Object} [stack] Tracks traversed source values and their merged - * counterparts. - */ - function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) { - var objValue = safeGet(object, key), - srcValue = safeGet(source, key), - stacked = stack.get(srcValue); - - if (stacked) { - assignMergeValue(object, key, stacked); - return; - } - var newValue = customizer - ? customizer(objValue, srcValue, (key + ''), object, source, stack) - : undefined; - - var isCommon = newValue === undefined; - - if (isCommon) { - var isArr = isArray(srcValue), - isBuff = !isArr && isBuffer(srcValue), - isTyped = !isArr && !isBuff && isTypedArray(srcValue); - - newValue = srcValue; - if (isArr || isBuff || isTyped) { - if (isArray(objValue)) { - newValue = objValue; - } - else if (isArrayLikeObject(objValue)) { - newValue = copyArray(objValue); - } - else if (isBuff) { - isCommon = false; - newValue = cloneBuffer(srcValue, true); - } - else if (isTyped) { - isCommon = false; - newValue = cloneTypedArray(srcValue, true); - } - else { - newValue = []; - } - } - else if (isPlainObject(srcValue) || isArguments(srcValue)) { - newValue = objValue; - if (isArguments(objValue)) { - newValue = toPlainObject(objValue); - } - else if (!isObject(objValue) || (srcIndex && isFunction(objValue))) { - newValue = initCloneObject(srcValue); - } - } - else { - isCommon = false; - } - } - if (isCommon) { - // Recursively merge objects and arrays (susceptible to call stack limits). - stack.set(srcValue, newValue); - mergeFunc(newValue, srcValue, srcIndex, customizer, stack); - stack['delete'](srcValue); - } - assignMergeValue(object, key, newValue); - } - - /** - * The base implementation of `_.nth` which doesn't coerce arguments. - * - * @private - * @param {Array} array The array to query. - * @param {number} n The index of the element to return. - * @returns {*} Returns the nth element of `array`. - */ - function baseNth(array, n) { - var length = array.length; - if (!length) { - return; - } - n += n < 0 ? length : 0; - return isIndex(n, length) ? array[n] : undefined; - } - - /** - * The base implementation of `_.orderBy` without param guards. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by. - * @param {string[]} orders The sort orders of `iteratees`. - * @returns {Array} Returns the new sorted array. - */ - function baseOrderBy(collection, iteratees, orders) { - var index = -1; - iteratees = arrayMap(iteratees.length ? iteratees : [identity], baseUnary(getIteratee())); - - var result = baseMap(collection, function(value, key, collection) { - var criteria = arrayMap(iteratees, function(iteratee) { - return iteratee(value); - }); - return { 'criteria': criteria, 'index': ++index, 'value': value }; - }); - - return baseSortBy(result, function(object, other) { - return compareMultiple(object, other, orders); - }); - } - - /** - * The base implementation of `_.pick` without support for individual - * property identifiers. - * - * @private - * @param {Object} object The source object. - * @param {string[]} paths The property paths to pick. - * @returns {Object} Returns the new object. - */ - function basePick(object, paths) { - return basePickBy(object, paths, function(value, path) { - return hasIn(object, path); - }); - } - - /** - * The base implementation of `_.pickBy` without support for iteratee shorthands. - * - * @private - * @param {Object} object The source object. - * @param {string[]} paths The property paths to pick. - * @param {Function} predicate The function invoked per property. - * @returns {Object} Returns the new object. - */ - function basePickBy(object, paths, predicate) { - var index = -1, - length = paths.length, - result = {}; - - while (++index < length) { - var path = paths[index], - value = baseGet(object, path); - - if (predicate(value, path)) { - baseSet(result, castPath(path, object), value); - } - } - return result; - } - - /** - * A specialized version of `baseProperty` which supports deep paths. - * - * @private - * @param {Array|string} path The path of the property to get. - * @returns {Function} Returns the new accessor function. - */ - function basePropertyDeep(path) { - return function(object) { - return baseGet(object, path); - }; - } - - /** - * The base implementation of `_.pullAllBy` without support for iteratee - * shorthands. - * - * @private - * @param {Array} array The array to modify. - * @param {Array} values The values to remove. - * @param {Function} [iteratee] The iteratee invoked per element. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns `array`. - */ - function basePullAll(array, values, iteratee, comparator) { - var indexOf = comparator ? baseIndexOfWith : baseIndexOf, - index = -1, - length = values.length, - seen = array; - - if (array === values) { - values = copyArray(values); - } - if (iteratee) { - seen = arrayMap(array, baseUnary(iteratee)); - } - while (++index < length) { - var fromIndex = 0, - value = values[index], - computed = iteratee ? iteratee(value) : value; - - while ((fromIndex = indexOf(seen, computed, fromIndex, comparator)) > -1) { - if (seen !== array) { - splice.call(seen, fromIndex, 1); - } - splice.call(array, fromIndex, 1); - } - } - return array; - } - - /** - * The base implementation of `_.pullAt` without support for individual - * indexes or capturing the removed elements. - * - * @private - * @param {Array} array The array to modify. - * @param {number[]} indexes The indexes of elements to remove. - * @returns {Array} Returns `array`. - */ - function basePullAt(array, indexes) { - var length = array ? indexes.length : 0, - lastIndex = length - 1; - - while (length--) { - var index = indexes[length]; - if (length == lastIndex || index !== previous) { - var previous = index; - if (isIndex(index)) { - splice.call(array, index, 1); - } else { - baseUnset(array, index); - } - } - } - return array; - } - - /** - * The base implementation of `_.random` without support for returning - * floating-point numbers. - * - * @private - * @param {number} lower The lower bound. - * @param {number} upper The upper bound. - * @returns {number} Returns the random number. - */ - function baseRandom(lower, upper) { - return lower + nativeFloor(nativeRandom() * (upper - lower + 1)); - } - - /** - * The base implementation of `_.range` and `_.rangeRight` which doesn't - * coerce arguments. - * - * @private - * @param {number} start The start of the range. - * @param {number} end The end of the range. - * @param {number} step The value to increment or decrement by. - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Array} Returns the range of numbers. - */ - function baseRange(start, end, step, fromRight) { - var index = -1, - length = nativeMax(nativeCeil((end - start) / (step || 1)), 0), - result = Array(length); - - while (length--) { - result[fromRight ? length : ++index] = start; - start += step; - } - return result; - } - - /** - * The base implementation of `_.repeat` which doesn't coerce arguments. - * - * @private - * @param {string} string The string to repeat. - * @param {number} n The number of times to repeat the string. - * @returns {string} Returns the repeated string. - */ - function baseRepeat(string, n) { - var result = ''; - if (!string || n < 1 || n > MAX_SAFE_INTEGER) { - return result; - } - // Leverage the exponentiation by squaring algorithm for a faster repeat. - // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details. - do { - if (n % 2) { - result += string; - } - n = nativeFloor(n / 2); - if (n) { - string += string; - } - } while (n); - - return result; - } - - /** - * The base implementation of `_.rest` which doesn't validate or coerce arguments. - * - * @private - * @param {Function} func The function to apply a rest parameter to. - * @param {number} [start=func.length-1] The start position of the rest parameter. - * @returns {Function} Returns the new function. - */ - function baseRest(func, start) { - return setToString(overRest(func, start, identity), func + ''); - } - - /** - * The base implementation of `_.sample`. - * - * @private - * @param {Array|Object} collection The collection to sample. - * @returns {*} Returns the random element. - */ - function baseSample(collection) { - return arraySample(values(collection)); - } - - /** - * The base implementation of `_.sampleSize` without param guards. - * - * @private - * @param {Array|Object} collection The collection to sample. - * @param {number} n The number of elements to sample. - * @returns {Array} Returns the random elements. - */ - function baseSampleSize(collection, n) { - var array = values(collection); - return shuffleSelf(array, baseClamp(n, 0, array.length)); - } - - /** - * The base implementation of `_.set`. - * - * @private - * @param {Object} object The object to modify. - * @param {Array|string} path The path of the property to set. - * @param {*} value The value to set. - * @param {Function} [customizer] The function to customize path creation. - * @returns {Object} Returns `object`. - */ - function baseSet(object, path, value, customizer) { - if (!isObject(object)) { - return object; - } - path = castPath(path, object); - - var index = -1, - length = path.length, - lastIndex = length - 1, - nested = object; - - while (nested != null && ++index < length) { - var key = toKey(path[index]), - newValue = value; - - if (index != lastIndex) { - var objValue = nested[key]; - newValue = customizer ? customizer(objValue, key, nested) : undefined; - if (newValue === undefined) { - newValue = isObject(objValue) - ? objValue - : (isIndex(path[index + 1]) ? [] : {}); - } - } - assignValue(nested, key, newValue); - nested = nested[key]; - } - return object; - } - - /** - * The base implementation of `setData` without support for hot loop shorting. - * - * @private - * @param {Function} func The function to associate metadata with. - * @param {*} data The metadata. - * @returns {Function} Returns `func`. - */ - var baseSetData = !metaMap ? identity : function(func, data) { - metaMap.set(func, data); - return func; - }; - - /** - * The base implementation of `setToString` without support for hot loop shorting. - * - * @private - * @param {Function} func The function to modify. - * @param {Function} string The `toString` result. - * @returns {Function} Returns `func`. - */ - var baseSetToString = !defineProperty ? identity : function(func, string) { - return defineProperty(func, 'toString', { - 'configurable': true, - 'enumerable': false, - 'value': constant(string), - 'writable': true - }); - }; - - /** - * The base implementation of `_.shuffle`. - * - * @private - * @param {Array|Object} collection The collection to shuffle. - * @returns {Array} Returns the new shuffled array. - */ - function baseShuffle(collection) { - return shuffleSelf(values(collection)); - } - - /** - * The base implementation of `_.slice` without an iteratee call guard. - * - * @private - * @param {Array} array The array to slice. - * @param {number} [start=0] The start position. - * @param {number} [end=array.length] The end position. - * @returns {Array} Returns the slice of `array`. - */ - function baseSlice(array, start, end) { - var index = -1, - length = array.length; - - if (start < 0) { - start = -start > length ? 0 : (length + start); - } - end = end > length ? length : end; - if (end < 0) { - end += length; - } - length = start > end ? 0 : ((end - start) >>> 0); - start >>>= 0; - - var result = Array(length); - while (++index < length) { - result[index] = array[index + start]; - } - return result; - } - - /** - * The base implementation of `_.some` without support for iteratee shorthands. - * - * @private - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} predicate The function invoked per iteration. - * @returns {boolean} Returns `true` if any element passes the predicate check, - * else `false`. - */ - function baseSome(collection, predicate) { - var result; - - baseEach(collection, function(value, index, collection) { - result = predicate(value, index, collection); - return !result; - }); - return !!result; - } - - /** - * The base implementation of `_.sortedIndex` and `_.sortedLastIndex` which - * performs a binary search of `array` to determine the index at which `value` - * should be inserted into `array` in order to maintain its sort order. - * - * @private - * @param {Array} array The sorted array to inspect. - * @param {*} value The value to evaluate. - * @param {boolean} [retHighest] Specify returning the highest qualified index. - * @returns {number} Returns the index at which `value` should be inserted - * into `array`. - */ - function baseSortedIndex(array, value, retHighest) { - var low = 0, - high = array == null ? low : array.length; - - if (typeof value == 'number' && value === value && high <= HALF_MAX_ARRAY_LENGTH) { - while (low < high) { - var mid = (low + high) >>> 1, - computed = array[mid]; - - if (computed !== null && !isSymbol(computed) && - (retHighest ? (computed <= value) : (computed < value))) { - low = mid + 1; - } else { - high = mid; - } - } - return high; - } - return baseSortedIndexBy(array, value, identity, retHighest); - } - - /** - * The base implementation of `_.sortedIndexBy` and `_.sortedLastIndexBy` - * which invokes `iteratee` for `value` and each element of `array` to compute - * their sort ranking. The iteratee is invoked with one argument; (value). - * - * @private - * @param {Array} array The sorted array to inspect. - * @param {*} value The value to evaluate. - * @param {Function} iteratee The iteratee invoked per element. - * @param {boolean} [retHighest] Specify returning the highest qualified index. - * @returns {number} Returns the index at which `value` should be inserted - * into `array`. - */ - function baseSortedIndexBy(array, value, iteratee, retHighest) { - value = iteratee(value); - - var low = 0, - high = array == null ? 0 : array.length, - valIsNaN = value !== value, - valIsNull = value === null, - valIsSymbol = isSymbol(value), - valIsUndefined = value === undefined; - - while (low < high) { - var mid = nativeFloor((low + high) / 2), - computed = iteratee(array[mid]), - othIsDefined = computed !== undefined, - othIsNull = computed === null, - othIsReflexive = computed === computed, - othIsSymbol = isSymbol(computed); - - if (valIsNaN) { - var setLow = retHighest || othIsReflexive; - } else if (valIsUndefined) { - setLow = othIsReflexive && (retHighest || othIsDefined); - } else if (valIsNull) { - setLow = othIsReflexive && othIsDefined && (retHighest || !othIsNull); - } else if (valIsSymbol) { - setLow = othIsReflexive && othIsDefined && !othIsNull && (retHighest || !othIsSymbol); - } else if (othIsNull || othIsSymbol) { - setLow = false; - } else { - setLow = retHighest ? (computed <= value) : (computed < value); - } - if (setLow) { - low = mid + 1; - } else { - high = mid; - } - } - return nativeMin(high, MAX_ARRAY_INDEX); - } - - /** - * The base implementation of `_.sortedUniq` and `_.sortedUniqBy` without - * support for iteratee shorthands. - * - * @private - * @param {Array} array The array to inspect. - * @param {Function} [iteratee] The iteratee invoked per element. - * @returns {Array} Returns the new duplicate free array. - */ - function baseSortedUniq(array, iteratee) { - var index = -1, - length = array.length, - resIndex = 0, - result = []; - - while (++index < length) { - var value = array[index], - computed = iteratee ? iteratee(value) : value; - - if (!index || !eq(computed, seen)) { - var seen = computed; - result[resIndex++] = value === 0 ? 0 : value; - } - } - return result; - } - - /** - * The base implementation of `_.toNumber` which doesn't ensure correct - * conversions of binary, hexadecimal, or octal string values. - * - * @private - * @param {*} value The value to process. - * @returns {number} Returns the number. - */ - function baseToNumber(value) { - if (typeof value == 'number') { - return value; - } - if (isSymbol(value)) { - return NAN; - } - return +value; - } - - /** - * The base implementation of `_.toString` which doesn't convert nullish - * values to empty strings. - * - * @private - * @param {*} value The value to process. - * @returns {string} Returns the string. - */ - function baseToString(value) { - // Exit early for strings to avoid a performance hit in some environments. - if (typeof value == 'string') { - return value; - } - if (isArray(value)) { - // Recursively convert values (susceptible to call stack limits). - return arrayMap(value, baseToString) + ''; - } - if (isSymbol(value)) { - return symbolToString ? symbolToString.call(value) : ''; - } - var result = (value + ''); - return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; - } - - /** - * The base implementation of `_.uniqBy` without support for iteratee shorthands. - * - * @private - * @param {Array} array The array to inspect. - * @param {Function} [iteratee] The iteratee invoked per element. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new duplicate free array. - */ - function baseUniq(array, iteratee, comparator) { - var index = -1, - includes = arrayIncludes, - length = array.length, - isCommon = true, - result = [], - seen = result; - - if (comparator) { - isCommon = false; - includes = arrayIncludesWith; - } - else if (length >= LARGE_ARRAY_SIZE) { - var set = iteratee ? null : createSet(array); - if (set) { - return setToArray(set); - } - isCommon = false; - includes = cacheHas; - seen = new SetCache; - } - else { - seen = iteratee ? [] : result; - } - outer: - while (++index < length) { - var value = array[index], - computed = iteratee ? iteratee(value) : value; - - value = (comparator || value !== 0) ? value : 0; - if (isCommon && computed === computed) { - var seenIndex = seen.length; - while (seenIndex--) { - if (seen[seenIndex] === computed) { - continue outer; - } - } - if (iteratee) { - seen.push(computed); - } - result.push(value); - } - else if (!includes(seen, computed, comparator)) { - if (seen !== result) { - seen.push(computed); - } - result.push(value); - } - } - return result; - } - - /** - * The base implementation of `_.unset`. - * - * @private - * @param {Object} object The object to modify. - * @param {Array|string} path The property path to unset. - * @returns {boolean} Returns `true` if the property is deleted, else `false`. - */ - function baseUnset(object, path) { - path = castPath(path, object); - object = parent(object, path); - return object == null || delete object[toKey(last(path))]; - } - - /** - * The base implementation of `_.update`. - * - * @private - * @param {Object} object The object to modify. - * @param {Array|string} path The path of the property to update. - * @param {Function} updater The function to produce the updated value. - * @param {Function} [customizer] The function to customize path creation. - * @returns {Object} Returns `object`. - */ - function baseUpdate(object, path, updater, customizer) { - return baseSet(object, path, updater(baseGet(object, path)), customizer); - } - - /** - * The base implementation of methods like `_.dropWhile` and `_.takeWhile` - * without support for iteratee shorthands. - * - * @private - * @param {Array} array The array to query. - * @param {Function} predicate The function invoked per iteration. - * @param {boolean} [isDrop] Specify dropping elements instead of taking them. - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Array} Returns the slice of `array`. - */ - function baseWhile(array, predicate, isDrop, fromRight) { - var length = array.length, - index = fromRight ? length : -1; - - while ((fromRight ? index-- : ++index < length) && - predicate(array[index], index, array)) {} - - return isDrop - ? baseSlice(array, (fromRight ? 0 : index), (fromRight ? index + 1 : length)) - : baseSlice(array, (fromRight ? index + 1 : 0), (fromRight ? length : index)); - } - - /** - * The base implementation of `wrapperValue` which returns the result of - * performing a sequence of actions on the unwrapped `value`, where each - * successive action is supplied the return value of the previous. - * - * @private - * @param {*} value The unwrapped value. - * @param {Array} actions Actions to perform to resolve the unwrapped value. - * @returns {*} Returns the resolved value. - */ - function baseWrapperValue(value, actions) { - var result = value; - if (result instanceof LazyWrapper) { - result = result.value(); - } - return arrayReduce(actions, function(result, action) { - return action.func.apply(action.thisArg, arrayPush([result], action.args)); - }, result); - } - - /** - * The base implementation of methods like `_.xor`, without support for - * iteratee shorthands, that accepts an array of arrays to inspect. - * - * @private - * @param {Array} arrays The arrays to inspect. - * @param {Function} [iteratee] The iteratee invoked per element. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new array of values. - */ - function baseXor(arrays, iteratee, comparator) { - var length = arrays.length; - if (length < 2) { - return length ? baseUniq(arrays[0]) : []; - } - var index = -1, - result = Array(length); - - while (++index < length) { - var array = arrays[index], - othIndex = -1; - - while (++othIndex < length) { - if (othIndex != index) { - result[index] = baseDifference(result[index] || array, arrays[othIndex], iteratee, comparator); - } - } - } - return baseUniq(baseFlatten(result, 1), iteratee, comparator); - } - - /** - * This base implementation of `_.zipObject` which assigns values using `assignFunc`. - * - * @private - * @param {Array} props The property identifiers. - * @param {Array} values The property values. - * @param {Function} assignFunc The function to assign values. - * @returns {Object} Returns the new object. - */ - function baseZipObject(props, values, assignFunc) { - var index = -1, - length = props.length, - valsLength = values.length, - result = {}; - - while (++index < length) { - var value = index < valsLength ? values[index] : undefined; - assignFunc(result, props[index], value); - } - return result; - } - - /** - * Casts `value` to an empty array if it's not an array like object. - * - * @private - * @param {*} value The value to inspect. - * @returns {Array|Object} Returns the cast array-like object. - */ - function castArrayLikeObject(value) { - return isArrayLikeObject(value) ? value : []; - } - - /** - * Casts `value` to `identity` if it's not a function. - * - * @private - * @param {*} value The value to inspect. - * @returns {Function} Returns cast function. - */ - function castFunction(value) { - return typeof value == 'function' ? value : identity; - } - - /** - * Casts `value` to a path array if it's not one. - * - * @private - * @param {*} value The value to inspect. - * @param {Object} [object] The object to query keys on. - * @returns {Array} Returns the cast property path array. - */ - function castPath(value, object) { - if (isArray(value)) { - return value; - } - return isKey(value, object) ? [value] : stringToPath(toString(value)); - } - - /** - * A `baseRest` alias which can be replaced with `identity` by module - * replacement plugins. - * - * @private - * @type {Function} - * @param {Function} func The function to apply a rest parameter to. - * @returns {Function} Returns the new function. - */ - var castRest = baseRest; - - /** - * Casts `array` to a slice if it's needed. - * - * @private - * @param {Array} array The array to inspect. - * @param {number} start The start position. - * @param {number} [end=array.length] The end position. - * @returns {Array} Returns the cast slice. - */ - function castSlice(array, start, end) { - var length = array.length; - end = end === undefined ? length : end; - return (!start && end >= length) ? array : baseSlice(array, start, end); - } - - /** - * A simple wrapper around the global [`clearTimeout`](https://mdn.io/clearTimeout). - * - * @private - * @param {number|Object} id The timer id or timeout object of the timer to clear. - */ - var clearTimeout = ctxClearTimeout || function(id) { - return root.clearTimeout(id); - }; - - /** - * Creates a clone of `buffer`. - * - * @private - * @param {Buffer} buffer The buffer to clone. - * @param {boolean} [isDeep] Specify a deep clone. - * @returns {Buffer} Returns the cloned buffer. - */ - function cloneBuffer(buffer, isDeep) { - if (isDeep) { - return buffer.slice(); - } - var length = buffer.length, - result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length); - - buffer.copy(result); - return result; - } - - /** - * Creates a clone of `arrayBuffer`. - * - * @private - * @param {ArrayBuffer} arrayBuffer The array buffer to clone. - * @returns {ArrayBuffer} Returns the cloned array buffer. - */ - function cloneArrayBuffer(arrayBuffer) { - var result = new arrayBuffer.constructor(arrayBuffer.byteLength); - new Uint8Array(result).set(new Uint8Array(arrayBuffer)); - return result; - } - - /** - * Creates a clone of `dataView`. - * - * @private - * @param {Object} dataView The data view to clone. - * @param {boolean} [isDeep] Specify a deep clone. - * @returns {Object} Returns the cloned data view. - */ - function cloneDataView(dataView, isDeep) { - var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer; - return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength); - } - - /** - * Creates a clone of `regexp`. - * - * @private - * @param {Object} regexp The regexp to clone. - * @returns {Object} Returns the cloned regexp. - */ - function cloneRegExp(regexp) { - var result = new regexp.constructor(regexp.source, reFlags.exec(regexp)); - result.lastIndex = regexp.lastIndex; - return result; - } - - /** - * Creates a clone of the `symbol` object. - * - * @private - * @param {Object} symbol The symbol object to clone. - * @returns {Object} Returns the cloned symbol object. - */ - function cloneSymbol(symbol) { - return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {}; - } - - /** - * Creates a clone of `typedArray`. - * - * @private - * @param {Object} typedArray The typed array to clone. - * @param {boolean} [isDeep] Specify a deep clone. - * @returns {Object} Returns the cloned typed array. - */ - function cloneTypedArray(typedArray, isDeep) { - var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer; - return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length); - } - - /** - * Compares values to sort them in ascending order. - * - * @private - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {number} Returns the sort order indicator for `value`. - */ - function compareAscending(value, other) { - if (value !== other) { - var valIsDefined = value !== undefined, - valIsNull = value === null, - valIsReflexive = value === value, - valIsSymbol = isSymbol(value); - - var othIsDefined = other !== undefined, - othIsNull = other === null, - othIsReflexive = other === other, - othIsSymbol = isSymbol(other); - - if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) || - (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) || - (valIsNull && othIsDefined && othIsReflexive) || - (!valIsDefined && othIsReflexive) || - !valIsReflexive) { - return 1; - } - if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) || - (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) || - (othIsNull && valIsDefined && valIsReflexive) || - (!othIsDefined && valIsReflexive) || - !othIsReflexive) { - return -1; - } - } - return 0; - } - - /** - * Used by `_.orderBy` to compare multiple properties of a value to another - * and stable sort them. - * - * If `orders` is unspecified, all values are sorted in ascending order. Otherwise, - * specify an order of "desc" for descending or "asc" for ascending sort order - * of corresponding values. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {boolean[]|string[]} orders The order to sort by for each property. - * @returns {number} Returns the sort order indicator for `object`. - */ - function compareMultiple(object, other, orders) { - var index = -1, - objCriteria = object.criteria, - othCriteria = other.criteria, - length = objCriteria.length, - ordersLength = orders.length; - - while (++index < length) { - var result = compareAscending(objCriteria[index], othCriteria[index]); - if (result) { - if (index >= ordersLength) { - return result; - } - var order = orders[index]; - return result * (order == 'desc' ? -1 : 1); - } - } - // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications - // that causes it, under certain circumstances, to provide the same value for - // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247 - // for more details. - // - // This also ensures a stable sort in V8 and other engines. - // See https://bugs.chromium.org/p/v8/issues/detail?id=90 for more details. - return object.index - other.index; - } - - /** - * Creates an array that is the composition of partially applied arguments, - * placeholders, and provided arguments into a single array of arguments. - * - * @private - * @param {Array} args The provided arguments. - * @param {Array} partials The arguments to prepend to those provided. - * @param {Array} holders The `partials` placeholder indexes. - * @params {boolean} [isCurried] Specify composing for a curried function. - * @returns {Array} Returns the new array of composed arguments. - */ - function composeArgs(args, partials, holders, isCurried) { - var argsIndex = -1, - argsLength = args.length, - holdersLength = holders.length, - leftIndex = -1, - leftLength = partials.length, - rangeLength = nativeMax(argsLength - holdersLength, 0), - result = Array(leftLength + rangeLength), - isUncurried = !isCurried; - - while (++leftIndex < leftLength) { - result[leftIndex] = partials[leftIndex]; - } - while (++argsIndex < holdersLength) { - if (isUncurried || argsIndex < argsLength) { - result[holders[argsIndex]] = args[argsIndex]; - } - } - while (rangeLength--) { - result[leftIndex++] = args[argsIndex++]; - } - return result; - } - - /** - * This function is like `composeArgs` except that the arguments composition - * is tailored for `_.partialRight`. - * - * @private - * @param {Array} args The provided arguments. - * @param {Array} partials The arguments to append to those provided. - * @param {Array} holders The `partials` placeholder indexes. - * @params {boolean} [isCurried] Specify composing for a curried function. - * @returns {Array} Returns the new array of composed arguments. - */ - function composeArgsRight(args, partials, holders, isCurried) { - var argsIndex = -1, - argsLength = args.length, - holdersIndex = -1, - holdersLength = holders.length, - rightIndex = -1, - rightLength = partials.length, - rangeLength = nativeMax(argsLength - holdersLength, 0), - result = Array(rangeLength + rightLength), - isUncurried = !isCurried; - - while (++argsIndex < rangeLength) { - result[argsIndex] = args[argsIndex]; - } - var offset = argsIndex; - while (++rightIndex < rightLength) { - result[offset + rightIndex] = partials[rightIndex]; - } - while (++holdersIndex < holdersLength) { - if (isUncurried || argsIndex < argsLength) { - result[offset + holders[holdersIndex]] = args[argsIndex++]; - } - } - return result; - } - - /** - * Copies the values of `source` to `array`. - * - * @private - * @param {Array} source The array to copy values from. - * @param {Array} [array=[]] The array to copy values to. - * @returns {Array} Returns `array`. - */ - function copyArray(source, array) { - var index = -1, - length = source.length; - - array || (array = Array(length)); - while (++index < length) { - array[index] = source[index]; - } - return array; - } - - /** - * Copies properties of `source` to `object`. - * - * @private - * @param {Object} source The object to copy properties from. - * @param {Array} props The property identifiers to copy. - * @param {Object} [object={}] The object to copy properties to. - * @param {Function} [customizer] The function to customize copied values. - * @returns {Object} Returns `object`. - */ - function copyObject(source, props, object, customizer) { - var isNew = !object; - object || (object = {}); - - var index = -1, - length = props.length; - - while (++index < length) { - var key = props[index]; - - var newValue = customizer - ? customizer(object[key], source[key], key, object, source) - : undefined; - - if (newValue === undefined) { - newValue = source[key]; - } - if (isNew) { - baseAssignValue(object, key, newValue); - } else { - assignValue(object, key, newValue); - } - } - return object; - } - - /** - * Copies own symbols of `source` to `object`. - * - * @private - * @param {Object} source The object to copy symbols from. - * @param {Object} [object={}] The object to copy symbols to. - * @returns {Object} Returns `object`. - */ - function copySymbols(source, object) { - return copyObject(source, getSymbols(source), object); - } - - /** - * Copies own and inherited symbols of `source` to `object`. - * - * @private - * @param {Object} source The object to copy symbols from. - * @param {Object} [object={}] The object to copy symbols to. - * @returns {Object} Returns `object`. - */ - function copySymbolsIn(source, object) { - return copyObject(source, getSymbolsIn(source), object); - } - - /** - * Creates a function like `_.groupBy`. - * - * @private - * @param {Function} setter The function to set accumulator values. - * @param {Function} [initializer] The accumulator object initializer. - * @returns {Function} Returns the new aggregator function. - */ - function createAggregator(setter, initializer) { - return function(collection, iteratee) { - var func = isArray(collection) ? arrayAggregator : baseAggregator, - accumulator = initializer ? initializer() : {}; - - return func(collection, setter, getIteratee(iteratee, 2), accumulator); - }; - } - - /** - * Creates a function like `_.assign`. - * - * @private - * @param {Function} assigner The function to assign values. - * @returns {Function} Returns the new assigner function. - */ - function createAssigner(assigner) { - return baseRest(function(object, sources) { - var index = -1, - length = sources.length, - customizer = length > 1 ? sources[length - 1] : undefined, - guard = length > 2 ? sources[2] : undefined; - - customizer = (assigner.length > 3 && typeof customizer == 'function') - ? (length--, customizer) - : undefined; - - if (guard && isIterateeCall(sources[0], sources[1], guard)) { - customizer = length < 3 ? undefined : customizer; - length = 1; - } - object = Object(object); - while (++index < length) { - var source = sources[index]; - if (source) { - assigner(object, source, index, customizer); - } - } - return object; - }); - } - - /** - * Creates a `baseEach` or `baseEachRight` function. - * - * @private - * @param {Function} eachFunc The function to iterate over a collection. - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Function} Returns the new base function. - */ - function createBaseEach(eachFunc, fromRight) { - return function(collection, iteratee) { - if (collection == null) { - return collection; - } - if (!isArrayLike(collection)) { - return eachFunc(collection, iteratee); - } - var length = collection.length, - index = fromRight ? length : -1, - iterable = Object(collection); - - while ((fromRight ? index-- : ++index < length)) { - if (iteratee(iterable[index], index, iterable) === false) { - break; - } - } - return collection; - }; - } - - /** - * Creates a base function for methods like `_.forIn` and `_.forOwn`. - * - * @private - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Function} Returns the new base function. - */ - function createBaseFor(fromRight) { - return function(object, iteratee, keysFunc) { - var index = -1, - iterable = Object(object), - props = keysFunc(object), - length = props.length; - - while (length--) { - var key = props[fromRight ? length : ++index]; - if (iteratee(iterable[key], key, iterable) === false) { - break; - } - } - return object; - }; - } - - /** - * Creates a function that wraps `func` to invoke it with the optional `this` - * binding of `thisArg`. - * - * @private - * @param {Function} func The function to wrap. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @param {*} [thisArg] The `this` binding of `func`. - * @returns {Function} Returns the new wrapped function. - */ - function createBind(func, bitmask, thisArg) { - var isBind = bitmask & WRAP_BIND_FLAG, - Ctor = createCtor(func); - - function wrapper() { - var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; - return fn.apply(isBind ? thisArg : this, arguments); - } - return wrapper; - } - - /** - * Creates a function like `_.lowerFirst`. - * - * @private - * @param {string} methodName The name of the `String` case method to use. - * @returns {Function} Returns the new case function. - */ - function createCaseFirst(methodName) { - return function(string) { - string = toString(string); - - var strSymbols = hasUnicode(string) - ? stringToArray(string) - : undefined; - - var chr = strSymbols - ? strSymbols[0] - : string.charAt(0); - - var trailing = strSymbols - ? castSlice(strSymbols, 1).join('') - : string.slice(1); - - return chr[methodName]() + trailing; - }; - } - - /** - * Creates a function like `_.camelCase`. - * - * @private - * @param {Function} callback The function to combine each word. - * @returns {Function} Returns the new compounder function. - */ - function createCompounder(callback) { - return function(string) { - return arrayReduce(words(deburr(string).replace(reApos, '')), callback, ''); - }; - } - - /** - * Creates a function that produces an instance of `Ctor` regardless of - * whether it was invoked as part of a `new` expression or by `call` or `apply`. - * - * @private - * @param {Function} Ctor The constructor to wrap. - * @returns {Function} Returns the new wrapped function. - */ - function createCtor(Ctor) { - return function() { - // Use a `switch` statement to work with class constructors. See - // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist - // for more details. - var args = arguments; - switch (args.length) { - case 0: return new Ctor; - case 1: return new Ctor(args[0]); - case 2: return new Ctor(args[0], args[1]); - case 3: return new Ctor(args[0], args[1], args[2]); - case 4: return new Ctor(args[0], args[1], args[2], args[3]); - case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]); - case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]); - case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]); - } - var thisBinding = baseCreate(Ctor.prototype), - result = Ctor.apply(thisBinding, args); - - // Mimic the constructor's `return` behavior. - // See https://es5.github.io/#x13.2.2 for more details. - return isObject(result) ? result : thisBinding; - }; - } - - /** - * Creates a function that wraps `func` to enable currying. - * - * @private - * @param {Function} func The function to wrap. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @param {number} arity The arity of `func`. - * @returns {Function} Returns the new wrapped function. - */ - function createCurry(func, bitmask, arity) { - var Ctor = createCtor(func); - - function wrapper() { - var length = arguments.length, - args = Array(length), - index = length, - placeholder = getHolder(wrapper); - - while (index--) { - args[index] = arguments[index]; - } - var holders = (length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder) - ? [] - : replaceHolders(args, placeholder); - - length -= holders.length; - if (length < arity) { - return createRecurry( - func, bitmask, createHybrid, wrapper.placeholder, undefined, - args, holders, undefined, undefined, arity - length); - } - var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; - return apply(fn, this, args); - } - return wrapper; - } - - /** - * Creates a `_.find` or `_.findLast` function. - * - * @private - * @param {Function} findIndexFunc The function to find the collection index. - * @returns {Function} Returns the new find function. - */ - function createFind(findIndexFunc) { - return function(collection, predicate, fromIndex) { - var iterable = Object(collection); - if (!isArrayLike(collection)) { - var iteratee = getIteratee(predicate, 3); - collection = keys(collection); - predicate = function(key) { return iteratee(iterable[key], key, iterable); }; - } - var index = findIndexFunc(collection, predicate, fromIndex); - return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined; - }; - } - - /** - * Creates a `_.flow` or `_.flowRight` function. - * - * @private - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Function} Returns the new flow function. - */ - function createFlow(fromRight) { - return flatRest(function(funcs) { - var length = funcs.length, - index = length, - prereq = LodashWrapper.prototype.thru; - - if (fromRight) { - funcs.reverse(); - } - while (index--) { - var func = funcs[index]; - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - if (prereq && !wrapper && getFuncName(func) == 'wrapper') { - var wrapper = new LodashWrapper([], true); - } - } - index = wrapper ? index : length; - while (++index < length) { - func = funcs[index]; - - var funcName = getFuncName(func), - data = funcName == 'wrapper' ? getData(func) : undefined; - - if (data && isLaziable(data[0]) && - data[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) && - !data[4].length && data[9] == 1 - ) { - wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]); - } else { - wrapper = (func.length == 1 && isLaziable(func)) - ? wrapper[funcName]() - : wrapper.thru(func); - } - } - return function() { - var args = arguments, - value = args[0]; - - if (wrapper && args.length == 1 && isArray(value)) { - return wrapper.plant(value).value(); - } - var index = 0, - result = length ? funcs[index].apply(this, args) : value; - - while (++index < length) { - result = funcs[index].call(this, result); - } - return result; - }; - }); - } - - /** - * Creates a function that wraps `func` to invoke it with optional `this` - * binding of `thisArg`, partial application, and currying. - * - * @private - * @param {Function|string} func The function or method name to wrap. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @param {*} [thisArg] The `this` binding of `func`. - * @param {Array} [partials] The arguments to prepend to those provided to - * the new function. - * @param {Array} [holders] The `partials` placeholder indexes. - * @param {Array} [partialsRight] The arguments to append to those provided - * to the new function. - * @param {Array} [holdersRight] The `partialsRight` placeholder indexes. - * @param {Array} [argPos] The argument positions of the new function. - * @param {number} [ary] The arity cap of `func`. - * @param {number} [arity] The arity of `func`. - * @returns {Function} Returns the new wrapped function. - */ - function createHybrid(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) { - var isAry = bitmask & WRAP_ARY_FLAG, - isBind = bitmask & WRAP_BIND_FLAG, - isBindKey = bitmask & WRAP_BIND_KEY_FLAG, - isCurried = bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG), - isFlip = bitmask & WRAP_FLIP_FLAG, - Ctor = isBindKey ? undefined : createCtor(func); - - function wrapper() { - var length = arguments.length, - args = Array(length), - index = length; - - while (index--) { - args[index] = arguments[index]; - } - if (isCurried) { - var placeholder = getHolder(wrapper), - holdersCount = countHolders(args, placeholder); - } - if (partials) { - args = composeArgs(args, partials, holders, isCurried); - } - if (partialsRight) { - args = composeArgsRight(args, partialsRight, holdersRight, isCurried); - } - length -= holdersCount; - if (isCurried && length < arity) { - var newHolders = replaceHolders(args, placeholder); - return createRecurry( - func, bitmask, createHybrid, wrapper.placeholder, thisArg, - args, newHolders, argPos, ary, arity - length - ); - } - var thisBinding = isBind ? thisArg : this, - fn = isBindKey ? thisBinding[func] : func; - - length = args.length; - if (argPos) { - args = reorder(args, argPos); - } else if (isFlip && length > 1) { - args.reverse(); - } - if (isAry && ary < length) { - args.length = ary; - } - if (this && this !== root && this instanceof wrapper) { - fn = Ctor || createCtor(fn); - } - return fn.apply(thisBinding, args); - } - return wrapper; - } - - /** - * Creates a function like `_.invertBy`. - * - * @private - * @param {Function} setter The function to set accumulator values. - * @param {Function} toIteratee The function to resolve iteratees. - * @returns {Function} Returns the new inverter function. - */ - function createInverter(setter, toIteratee) { - return function(object, iteratee) { - return baseInverter(object, setter, toIteratee(iteratee), {}); - }; - } - - /** - * Creates a function that performs a mathematical operation on two values. - * - * @private - * @param {Function} operator The function to perform the operation. - * @param {number} [defaultValue] The value used for `undefined` arguments. - * @returns {Function} Returns the new mathematical operation function. - */ - function createMathOperation(operator, defaultValue) { - return function(value, other) { - var result; - if (value === undefined && other === undefined) { - return defaultValue; - } - if (value !== undefined) { - result = value; - } - if (other !== undefined) { - if (result === undefined) { - return other; - } - if (typeof value == 'string' || typeof other == 'string') { - value = baseToString(value); - other = baseToString(other); - } else { - value = baseToNumber(value); - other = baseToNumber(other); - } - result = operator(value, other); - } - return result; - }; - } - - /** - * Creates a function like `_.over`. - * - * @private - * @param {Function} arrayFunc The function to iterate over iteratees. - * @returns {Function} Returns the new over function. - */ - function createOver(arrayFunc) { - return flatRest(function(iteratees) { - iteratees = arrayMap(iteratees, baseUnary(getIteratee())); - return baseRest(function(args) { - var thisArg = this; - return arrayFunc(iteratees, function(iteratee) { - return apply(iteratee, thisArg, args); - }); - }); - }); - } - - /** - * Creates the padding for `string` based on `length`. The `chars` string - * is truncated if the number of characters exceeds `length`. - * - * @private - * @param {number} length The padding length. - * @param {string} [chars=' '] The string used as padding. - * @returns {string} Returns the padding for `string`. - */ - function createPadding(length, chars) { - chars = chars === undefined ? ' ' : baseToString(chars); - - var charsLength = chars.length; - if (charsLength < 2) { - return charsLength ? baseRepeat(chars, length) : chars; - } - var result = baseRepeat(chars, nativeCeil(length / stringSize(chars))); - return hasUnicode(chars) - ? castSlice(stringToArray(result), 0, length).join('') - : result.slice(0, length); - } - - /** - * Creates a function that wraps `func` to invoke it with the `this` binding - * of `thisArg` and `partials` prepended to the arguments it receives. - * - * @private - * @param {Function} func The function to wrap. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @param {*} thisArg The `this` binding of `func`. - * @param {Array} partials The arguments to prepend to those provided to - * the new function. - * @returns {Function} Returns the new wrapped function. - */ - function createPartial(func, bitmask, thisArg, partials) { - var isBind = bitmask & WRAP_BIND_FLAG, - Ctor = createCtor(func); - - function wrapper() { - var argsIndex = -1, - argsLength = arguments.length, - leftIndex = -1, - leftLength = partials.length, - args = Array(leftLength + argsLength), - fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; - - while (++leftIndex < leftLength) { - args[leftIndex] = partials[leftIndex]; - } - while (argsLength--) { - args[leftIndex++] = arguments[++argsIndex]; - } - return apply(fn, isBind ? thisArg : this, args); - } - return wrapper; - } - - /** - * Creates a `_.range` or `_.rangeRight` function. - * - * @private - * @param {boolean} [fromRight] Specify iterating from right to left. - * @returns {Function} Returns the new range function. - */ - function createRange(fromRight) { - return function(start, end, step) { - if (step && typeof step != 'number' && isIterateeCall(start, end, step)) { - end = step = undefined; - } - // Ensure the sign of `-0` is preserved. - start = toFinite(start); - if (end === undefined) { - end = start; - start = 0; - } else { - end = toFinite(end); - } - step = step === undefined ? (start < end ? 1 : -1) : toFinite(step); - return baseRange(start, end, step, fromRight); - }; - } - - /** - * Creates a function that performs a relational operation on two values. - * - * @private - * @param {Function} operator The function to perform the operation. - * @returns {Function} Returns the new relational operation function. - */ - function createRelationalOperation(operator) { - return function(value, other) { - if (!(typeof value == 'string' && typeof other == 'string')) { - value = toNumber(value); - other = toNumber(other); - } - return operator(value, other); - }; - } - - /** - * Creates a function that wraps `func` to continue currying. - * - * @private - * @param {Function} func The function to wrap. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @param {Function} wrapFunc The function to create the `func` wrapper. - * @param {*} placeholder The placeholder value. - * @param {*} [thisArg] The `this` binding of `func`. - * @param {Array} [partials] The arguments to prepend to those provided to - * the new function. - * @param {Array} [holders] The `partials` placeholder indexes. - * @param {Array} [argPos] The argument positions of the new function. - * @param {number} [ary] The arity cap of `func`. - * @param {number} [arity] The arity of `func`. - * @returns {Function} Returns the new wrapped function. - */ - function createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) { - var isCurry = bitmask & WRAP_CURRY_FLAG, - newHolders = isCurry ? holders : undefined, - newHoldersRight = isCurry ? undefined : holders, - newPartials = isCurry ? partials : undefined, - newPartialsRight = isCurry ? undefined : partials; - - bitmask |= (isCurry ? WRAP_PARTIAL_FLAG : WRAP_PARTIAL_RIGHT_FLAG); - bitmask &= ~(isCurry ? WRAP_PARTIAL_RIGHT_FLAG : WRAP_PARTIAL_FLAG); - - if (!(bitmask & WRAP_CURRY_BOUND_FLAG)) { - bitmask &= ~(WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG); - } - var newData = [ - func, bitmask, thisArg, newPartials, newHolders, newPartialsRight, - newHoldersRight, argPos, ary, arity - ]; - - var result = wrapFunc.apply(undefined, newData); - if (isLaziable(func)) { - setData(result, newData); - } - result.placeholder = placeholder; - return setWrapToString(result, func, bitmask); - } - - /** - * Creates a function like `_.round`. - * - * @private - * @param {string} methodName The name of the `Math` method to use when rounding. - * @returns {Function} Returns the new round function. - */ - function createRound(methodName) { - var func = Math[methodName]; - return function(number, precision) { - number = toNumber(number); - precision = precision == null ? 0 : nativeMin(toInteger(precision), 292); - if (precision) { - // Shift with exponential notation to avoid floating-point issues. - // See [MDN](https://mdn.io/round#Examples) for more details. - var pair = (toString(number) + 'e').split('e'), - value = func(pair[0] + 'e' + (+pair[1] + precision)); - - pair = (toString(value) + 'e').split('e'); - return +(pair[0] + 'e' + (+pair[1] - precision)); - } - return func(number); - }; - } - - /** - * Creates a set object of `values`. - * - * @private - * @param {Array} values The values to add to the set. - * @returns {Object} Returns the new set. - */ - var createSet = !(Set && (1 / setToArray(new Set([,-0]))[1]) == INFINITY) ? noop : function(values) { - return new Set(values); - }; - - /** - * Creates a `_.toPairs` or `_.toPairsIn` function. - * - * @private - * @param {Function} keysFunc The function to get the keys of a given object. - * @returns {Function} Returns the new pairs function. - */ - function createToPairs(keysFunc) { - return function(object) { - var tag = getTag(object); - if (tag == mapTag) { - return mapToArray(object); - } - if (tag == setTag) { - return setToPairs(object); - } - return baseToPairs(object, keysFunc(object)); - }; - } - - /** - * Creates a function that either curries or invokes `func` with optional - * `this` binding and partially applied arguments. - * - * @private - * @param {Function|string} func The function or method name to wrap. - * @param {number} bitmask The bitmask flags. - * 1 - `_.bind` - * 2 - `_.bindKey` - * 4 - `_.curry` or `_.curryRight` of a bound function - * 8 - `_.curry` - * 16 - `_.curryRight` - * 32 - `_.partial` - * 64 - `_.partialRight` - * 128 - `_.rearg` - * 256 - `_.ary` - * 512 - `_.flip` - * @param {*} [thisArg] The `this` binding of `func`. - * @param {Array} [partials] The arguments to be partially applied. - * @param {Array} [holders] The `partials` placeholder indexes. - * @param {Array} [argPos] The argument positions of the new function. - * @param {number} [ary] The arity cap of `func`. - * @param {number} [arity] The arity of `func`. - * @returns {Function} Returns the new wrapped function. - */ - function createWrap(func, bitmask, thisArg, partials, holders, argPos, ary, arity) { - var isBindKey = bitmask & WRAP_BIND_KEY_FLAG; - if (!isBindKey && typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - var length = partials ? partials.length : 0; - if (!length) { - bitmask &= ~(WRAP_PARTIAL_FLAG | WRAP_PARTIAL_RIGHT_FLAG); - partials = holders = undefined; - } - ary = ary === undefined ? ary : nativeMax(toInteger(ary), 0); - arity = arity === undefined ? arity : toInteger(arity); - length -= holders ? holders.length : 0; - - if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) { - var partialsRight = partials, - holdersRight = holders; - - partials = holders = undefined; - } - var data = isBindKey ? undefined : getData(func); - - var newData = [ - func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, - argPos, ary, arity - ]; - - if (data) { - mergeData(newData, data); - } - func = newData[0]; - bitmask = newData[1]; - thisArg = newData[2]; - partials = newData[3]; - holders = newData[4]; - arity = newData[9] = newData[9] === undefined - ? (isBindKey ? 0 : func.length) - : nativeMax(newData[9] - length, 0); - - if (!arity && bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG)) { - bitmask &= ~(WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG); - } - if (!bitmask || bitmask == WRAP_BIND_FLAG) { - var result = createBind(func, bitmask, thisArg); - } else if (bitmask == WRAP_CURRY_FLAG || bitmask == WRAP_CURRY_RIGHT_FLAG) { - result = createCurry(func, bitmask, arity); - } else if ((bitmask == WRAP_PARTIAL_FLAG || bitmask == (WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG)) && !holders.length) { - result = createPartial(func, bitmask, thisArg, partials); - } else { - result = createHybrid.apply(undefined, newData); - } - var setter = data ? baseSetData : setData; - return setWrapToString(setter(result, newData), func, bitmask); - } - - /** - * Used by `_.defaults` to customize its `_.assignIn` use to assign properties - * of source objects to the destination object for all destination properties - * that resolve to `undefined`. - * - * @private - * @param {*} objValue The destination value. - * @param {*} srcValue The source value. - * @param {string} key The key of the property to assign. - * @param {Object} object The parent object of `objValue`. - * @returns {*} Returns the value to assign. - */ - function customDefaultsAssignIn(objValue, srcValue, key, object) { - if (objValue === undefined || - (eq(objValue, objectProto[key]) && !hasOwnProperty.call(object, key))) { - return srcValue; - } - return objValue; - } - - /** - * Used by `_.defaultsDeep` to customize its `_.merge` use to merge source - * objects into destination objects that are passed thru. - * - * @private - * @param {*} objValue The destination value. - * @param {*} srcValue The source value. - * @param {string} key The key of the property to merge. - * @param {Object} object The parent object of `objValue`. - * @param {Object} source The parent object of `srcValue`. - * @param {Object} [stack] Tracks traversed source values and their merged - * counterparts. - * @returns {*} Returns the value to assign. - */ - function customDefaultsMerge(objValue, srcValue, key, object, source, stack) { - if (isObject(objValue) && isObject(srcValue)) { - // Recursively merge objects and arrays (susceptible to call stack limits). - stack.set(srcValue, objValue); - baseMerge(objValue, srcValue, undefined, customDefaultsMerge, stack); - stack['delete'](srcValue); - } - return objValue; - } - - /** - * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain - * objects. - * - * @private - * @param {*} value The value to inspect. - * @param {string} key The key of the property to inspect. - * @returns {*} Returns the uncloned value or `undefined` to defer cloning to `_.cloneDeep`. - */ - function customOmitClone(value) { - return isPlainObject(value) ? undefined : value; - } - - /** - * A specialized version of `baseIsEqualDeep` for arrays with support for - * partial deep comparisons. - * - * @private - * @param {Array} array The array to compare. - * @param {Array} other The other array to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} stack Tracks traversed `array` and `other` objects. - * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`. - */ - function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { - var isPartial = bitmask & COMPARE_PARTIAL_FLAG, - arrLength = array.length, - othLength = other.length; - - if (arrLength != othLength && !(isPartial && othLength > arrLength)) { - return false; - } - // Assume cyclic values are equal. - var stacked = stack.get(array); - if (stacked && stack.get(other)) { - return stacked == other; - } - var index = -1, - result = true, - seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined; - - stack.set(array, other); - stack.set(other, array); - - // Ignore non-index properties. - while (++index < arrLength) { - var arrValue = array[index], - othValue = other[index]; - - if (customizer) { - var compared = isPartial - ? customizer(othValue, arrValue, index, other, array, stack) - : customizer(arrValue, othValue, index, array, other, stack); - } - if (compared !== undefined) { - if (compared) { - continue; - } - result = false; - break; - } - // Recursively compare arrays (susceptible to call stack limits). - if (seen) { - if (!arraySome(other, function(othValue, othIndex) { - if (!cacheHas(seen, othIndex) && - (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) { - return seen.push(othIndex); - } - })) { - result = false; - break; - } - } else if (!( - arrValue === othValue || - equalFunc(arrValue, othValue, bitmask, customizer, stack) - )) { - result = false; - break; - } - } - stack['delete'](array); - stack['delete'](other); - return result; - } - - /** - * A specialized version of `baseIsEqualDeep` for comparing objects of - * the same `toStringTag`. - * - * **Note:** This function only supports comparing values with tags of - * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {string} tag The `toStringTag` of the objects to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} stack Tracks traversed `object` and `other` objects. - * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. - */ - function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) { - switch (tag) { - case dataViewTag: - if ((object.byteLength != other.byteLength) || - (object.byteOffset != other.byteOffset)) { - return false; - } - object = object.buffer; - other = other.buffer; - - case arrayBufferTag: - if ((object.byteLength != other.byteLength) || - !equalFunc(new Uint8Array(object), new Uint8Array(other))) { - return false; - } - return true; - - case boolTag: - case dateTag: - case numberTag: - // Coerce booleans to `1` or `0` and dates to milliseconds. - // Invalid dates are coerced to `NaN`. - return eq(+object, +other); - - case errorTag: - return object.name == other.name && object.message == other.message; - - case regexpTag: - case stringTag: - // Coerce regexes to strings and treat strings, primitives and objects, - // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring - // for more details. - return object == (other + ''); - - case mapTag: - var convert = mapToArray; - - case setTag: - var isPartial = bitmask & COMPARE_PARTIAL_FLAG; - convert || (convert = setToArray); - - if (object.size != other.size && !isPartial) { - return false; - } - // Assume cyclic values are equal. - var stacked = stack.get(object); - if (stacked) { - return stacked == other; - } - bitmask |= COMPARE_UNORDERED_FLAG; - - // Recursively compare objects (susceptible to call stack limits). - stack.set(object, other); - var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack); - stack['delete'](object); - return result; - - case symbolTag: - if (symbolValueOf) { - return symbolValueOf.call(object) == symbolValueOf.call(other); - } - } - return false; - } - - /** - * A specialized version of `baseIsEqualDeep` for objects with support for - * partial deep comparisons. - * - * @private - * @param {Object} object The object to compare. - * @param {Object} other The other object to compare. - * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. - * @param {Function} customizer The function to customize comparisons. - * @param {Function} equalFunc The function to determine equivalents of values. - * @param {Object} stack Tracks traversed `object` and `other` objects. - * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. - */ - function equalObjects(object, other, bitmask, customizer, equalFunc, stack) { - var isPartial = bitmask & COMPARE_PARTIAL_FLAG, - objProps = getAllKeys(object), - objLength = objProps.length, - othProps = getAllKeys(other), - othLength = othProps.length; - - if (objLength != othLength && !isPartial) { - return false; - } - var index = objLength; - while (index--) { - var key = objProps[index]; - if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) { - return false; - } - } - // Assume cyclic values are equal. - var stacked = stack.get(object); - if (stacked && stack.get(other)) { - return stacked == other; - } - var result = true; - stack.set(object, other); - stack.set(other, object); - - var skipCtor = isPartial; - while (++index < objLength) { - key = objProps[index]; - var objValue = object[key], - othValue = other[key]; - - if (customizer) { - var compared = isPartial - ? customizer(othValue, objValue, key, other, object, stack) - : customizer(objValue, othValue, key, object, other, stack); - } - // Recursively compare objects (susceptible to call stack limits). - if (!(compared === undefined - ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack)) - : compared - )) { - result = false; - break; - } - skipCtor || (skipCtor = key == 'constructor'); - } - if (result && !skipCtor) { - var objCtor = object.constructor, - othCtor = other.constructor; - - // Non `Object` object instances with different constructors are not equal. - if (objCtor != othCtor && - ('constructor' in object && 'constructor' in other) && - !(typeof objCtor == 'function' && objCtor instanceof objCtor && - typeof othCtor == 'function' && othCtor instanceof othCtor)) { - result = false; - } - } - stack['delete'](object); - stack['delete'](other); - return result; - } - - /** - * A specialized version of `baseRest` which flattens the rest array. - * - * @private - * @param {Function} func The function to apply a rest parameter to. - * @returns {Function} Returns the new function. - */ - function flatRest(func) { - return setToString(overRest(func, undefined, flatten), func + ''); - } - - /** - * Creates an array of own enumerable property names and symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names and symbols. - */ - function getAllKeys(object) { - return baseGetAllKeys(object, keys, getSymbols); - } - - /** - * Creates an array of own and inherited enumerable property names and - * symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names and symbols. - */ - function getAllKeysIn(object) { - return baseGetAllKeys(object, keysIn, getSymbolsIn); - } - - /** - * Gets metadata for `func`. - * - * @private - * @param {Function} func The function to query. - * @returns {*} Returns the metadata for `func`. - */ - var getData = !metaMap ? noop : function(func) { - return metaMap.get(func); - }; - - /** - * Gets the name of `func`. - * - * @private - * @param {Function} func The function to query. - * @returns {string} Returns the function name. - */ - function getFuncName(func) { - var result = (func.name + ''), - array = realNames[result], - length = hasOwnProperty.call(realNames, result) ? array.length : 0; - - while (length--) { - var data = array[length], - otherFunc = data.func; - if (otherFunc == null || otherFunc == func) { - return data.name; - } - } - return result; - } - - /** - * Gets the argument placeholder value for `func`. - * - * @private - * @param {Function} func The function to inspect. - * @returns {*} Returns the placeholder value. - */ - function getHolder(func) { - var object = hasOwnProperty.call(lodash, 'placeholder') ? lodash : func; - return object.placeholder; - } - - /** - * Gets the appropriate "iteratee" function. If `_.iteratee` is customized, - * this function returns the custom method, otherwise it returns `baseIteratee`. - * If arguments are provided, the chosen function is invoked with them and - * its result is returned. - * - * @private - * @param {*} [value] The value to convert to an iteratee. - * @param {number} [arity] The arity of the created iteratee. - * @returns {Function} Returns the chosen function or its result. - */ - function getIteratee() { - var result = lodash.iteratee || iteratee; - result = result === iteratee ? baseIteratee : result; - return arguments.length ? result(arguments[0], arguments[1]) : result; - } - - /** - * Gets the data for `map`. - * - * @private - * @param {Object} map The map to query. - * @param {string} key The reference key. - * @returns {*} Returns the map data. - */ - function getMapData(map, key) { - var data = map.__data__; - return isKeyable(key) - ? data[typeof key == 'string' ? 'string' : 'hash'] - : data.map; - } - - /** - * Gets the property names, values, and compare flags of `object`. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the match data of `object`. - */ - function getMatchData(object) { - var result = keys(object), - length = result.length; - - while (length--) { - var key = result[length], - value = object[key]; - - result[length] = [key, value, isStrictComparable(value)]; - } - return result; - } - - /** - * Gets the native function at `key` of `object`. - * - * @private - * @param {Object} object The object to query. - * @param {string} key The key of the method to get. - * @returns {*} Returns the function if it's native, else `undefined`. - */ - function getNative(object, key) { - var value = getValue(object, key); - return baseIsNative(value) ? value : undefined; - } - - /** - * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values. - * - * @private - * @param {*} value The value to query. - * @returns {string} Returns the raw `toStringTag`. - */ - function getRawTag(value) { - var isOwn = hasOwnProperty.call(value, symToStringTag), - tag = value[symToStringTag]; - - try { - value[symToStringTag] = undefined; - var unmasked = true; - } catch (e) {} - - var result = nativeObjectToString.call(value); - if (unmasked) { - if (isOwn) { - value[symToStringTag] = tag; - } else { - delete value[symToStringTag]; - } - } - return result; - } - - /** - * Creates an array of the own enumerable symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of symbols. - */ - var getSymbols = !nativeGetSymbols ? stubArray : function(object) { - if (object == null) { - return []; - } - object = Object(object); - return arrayFilter(nativeGetSymbols(object), function(symbol) { - return propertyIsEnumerable.call(object, symbol); - }); - }; - - /** - * Creates an array of the own and inherited enumerable symbols of `object`. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of symbols. - */ - var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) { - var result = []; - while (object) { - arrayPush(result, getSymbols(object)); - object = getPrototype(object); - } - return result; - }; - - /** - * Gets the `toStringTag` of `value`. - * - * @private - * @param {*} value The value to query. - * @returns {string} Returns the `toStringTag`. - */ - var getTag = baseGetTag; - - // Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6. - if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) || - (Map && getTag(new Map) != mapTag) || - (Promise && getTag(Promise.resolve()) != promiseTag) || - (Set && getTag(new Set) != setTag) || - (WeakMap && getTag(new WeakMap) != weakMapTag)) { - getTag = function(value) { - var result = baseGetTag(value), - Ctor = result == objectTag ? value.constructor : undefined, - ctorString = Ctor ? toSource(Ctor) : ''; - - if (ctorString) { - switch (ctorString) { - case dataViewCtorString: return dataViewTag; - case mapCtorString: return mapTag; - case promiseCtorString: return promiseTag; - case setCtorString: return setTag; - case weakMapCtorString: return weakMapTag; - } - } - return result; - }; - } - - /** - * Gets the view, applying any `transforms` to the `start` and `end` positions. - * - * @private - * @param {number} start The start of the view. - * @param {number} end The end of the view. - * @param {Array} transforms The transformations to apply to the view. - * @returns {Object} Returns an object containing the `start` and `end` - * positions of the view. - */ - function getView(start, end, transforms) { - var index = -1, - length = transforms.length; - - while (++index < length) { - var data = transforms[index], - size = data.size; - - switch (data.type) { - case 'drop': start += size; break; - case 'dropRight': end -= size; break; - case 'take': end = nativeMin(end, start + size); break; - case 'takeRight': start = nativeMax(start, end - size); break; - } - } - return { 'start': start, 'end': end }; - } - - /** - * Extracts wrapper details from the `source` body comment. - * - * @private - * @param {string} source The source to inspect. - * @returns {Array} Returns the wrapper details. - */ - function getWrapDetails(source) { - var match = source.match(reWrapDetails); - return match ? match[1].split(reSplitDetails) : []; - } - - /** - * Checks if `path` exists on `object`. - * - * @private - * @param {Object} object The object to query. - * @param {Array|string} path The path to check. - * @param {Function} hasFunc The function to check properties. - * @returns {boolean} Returns `true` if `path` exists, else `false`. - */ - function hasPath(object, path, hasFunc) { - path = castPath(path, object); - - var index = -1, - length = path.length, - result = false; - - while (++index < length) { - var key = toKey(path[index]); - if (!(result = object != null && hasFunc(object, key))) { - break; - } - object = object[key]; - } - if (result || ++index != length) { - return result; - } - length = object == null ? 0 : object.length; - return !!length && isLength(length) && isIndex(key, length) && - (isArray(object) || isArguments(object)); - } - - /** - * Initializes an array clone. - * - * @private - * @param {Array} array The array to clone. - * @returns {Array} Returns the initialized clone. - */ - function initCloneArray(array) { - var length = array.length, - result = new array.constructor(length); - - // Add properties assigned by `RegExp#exec`. - if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) { - result.index = array.index; - result.input = array.input; - } - return result; - } - - /** - * Initializes an object clone. - * - * @private - * @param {Object} object The object to clone. - * @returns {Object} Returns the initialized clone. - */ - function initCloneObject(object) { - return (typeof object.constructor == 'function' && !isPrototype(object)) - ? baseCreate(getPrototype(object)) - : {}; - } - - /** - * Initializes an object clone based on its `toStringTag`. - * - * **Note:** This function only supports cloning values with tags of - * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`. - * - * @private - * @param {Object} object The object to clone. - * @param {string} tag The `toStringTag` of the object to clone. - * @param {boolean} [isDeep] Specify a deep clone. - * @returns {Object} Returns the initialized clone. - */ - function initCloneByTag(object, tag, isDeep) { - var Ctor = object.constructor; - switch (tag) { - case arrayBufferTag: - return cloneArrayBuffer(object); - - case boolTag: - case dateTag: - return new Ctor(+object); - - case dataViewTag: - return cloneDataView(object, isDeep); - - case float32Tag: case float64Tag: - case int8Tag: case int16Tag: case int32Tag: - case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag: - return cloneTypedArray(object, isDeep); - - case mapTag: - return new Ctor; - - case numberTag: - case stringTag: - return new Ctor(object); - - case regexpTag: - return cloneRegExp(object); - - case setTag: - return new Ctor; - - case symbolTag: - return cloneSymbol(object); - } - } - - /** - * Inserts wrapper `details` in a comment at the top of the `source` body. - * - * @private - * @param {string} source The source to modify. - * @returns {Array} details The details to insert. - * @returns {string} Returns the modified source. - */ - function insertWrapDetails(source, details) { - var length = details.length; - if (!length) { - return source; - } - var lastIndex = length - 1; - details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex]; - details = details.join(length > 2 ? ', ' : ' '); - return source.replace(reWrapComment, '{\n/* [wrapped with ' + details + '] */\n'); - } - - /** - * Checks if `value` is a flattenable `arguments` object or array. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is flattenable, else `false`. - */ - function isFlattenable(value) { - return isArray(value) || isArguments(value) || - !!(spreadableSymbol && value && value[spreadableSymbol]); - } - - /** - * Checks if `value` is a valid array-like index. - * - * @private - * @param {*} value The value to check. - * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index. - * @returns {boolean} Returns `true` if `value` is a valid index, else `false`. - */ - function isIndex(value, length) { - var type = typeof value; - length = length == null ? MAX_SAFE_INTEGER : length; - - return !!length && - (type == 'number' || - (type != 'symbol' && reIsUint.test(value))) && - (value > -1 && value % 1 == 0 && value < length); - } - - /** - * Checks if the given arguments are from an iteratee call. - * - * @private - * @param {*} value The potential iteratee value argument. - * @param {*} index The potential iteratee index or key argument. - * @param {*} object The potential iteratee object argument. - * @returns {boolean} Returns `true` if the arguments are from an iteratee call, - * else `false`. - */ - function isIterateeCall(value, index, object) { - if (!isObject(object)) { - return false; - } - var type = typeof index; - if (type == 'number' - ? (isArrayLike(object) && isIndex(index, object.length)) - : (type == 'string' && index in object) - ) { - return eq(object[index], value); - } - return false; - } - - /** - * Checks if `value` is a property name and not a property path. - * - * @private - * @param {*} value The value to check. - * @param {Object} [object] The object to query keys on. - * @returns {boolean} Returns `true` if `value` is a property name, else `false`. - */ - function isKey(value, object) { - if (isArray(value)) { - return false; - } - var type = typeof value; - if (type == 'number' || type == 'symbol' || type == 'boolean' || - value == null || isSymbol(value)) { - return true; - } - return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || - (object != null && value in Object(object)); - } - - /** - * Checks if `value` is suitable for use as unique object key. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is suitable, else `false`. - */ - function isKeyable(value) { - var type = typeof value; - return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean') - ? (value !== '__proto__') - : (value === null); - } - - /** - * Checks if `func` has a lazy counterpart. - * - * @private - * @param {Function} func The function to check. - * @returns {boolean} Returns `true` if `func` has a lazy counterpart, - * else `false`. - */ - function isLaziable(func) { - var funcName = getFuncName(func), - other = lodash[funcName]; - - if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) { - return false; - } - if (func === other) { - return true; - } - var data = getData(other); - return !!data && func === data[0]; - } - - /** - * Checks if `func` has its source masked. - * - * @private - * @param {Function} func The function to check. - * @returns {boolean} Returns `true` if `func` is masked, else `false`. - */ - function isMasked(func) { - return !!maskSrcKey && (maskSrcKey in func); - } - - /** - * Checks if `func` is capable of being masked. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `func` is maskable, else `false`. - */ - var isMaskable = coreJsData ? isFunction : stubFalse; - - /** - * Checks if `value` is likely a prototype object. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a prototype, else `false`. - */ - function isPrototype(value) { - var Ctor = value && value.constructor, - proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto; - - return value === proto; - } - - /** - * Checks if `value` is suitable for strict equality comparisons, i.e. `===`. - * - * @private - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` if suitable for strict - * equality comparisons, else `false`. - */ - function isStrictComparable(value) { - return value === value && !isObject(value); - } - - /** - * A specialized version of `matchesProperty` for source values suitable - * for strict equality comparisons, i.e. `===`. - * - * @private - * @param {string} key The key of the property to get. - * @param {*} srcValue The value to match. - * @returns {Function} Returns the new spec function. - */ - function matchesStrictComparable(key, srcValue) { - return function(object) { - if (object == null) { - return false; - } - return object[key] === srcValue && - (srcValue !== undefined || (key in Object(object))); - }; - } - - /** - * A specialized version of `_.memoize` which clears the memoized function's - * cache when it exceeds `MAX_MEMOIZE_SIZE`. - * - * @private - * @param {Function} func The function to have its output memoized. - * @returns {Function} Returns the new memoized function. - */ - function memoizeCapped(func) { - var result = memoize(func, function(key) { - if (cache.size === MAX_MEMOIZE_SIZE) { - cache.clear(); - } - return key; - }); - - var cache = result.cache; - return result; - } - - /** - * Merges the function metadata of `source` into `data`. - * - * Merging metadata reduces the number of wrappers used to invoke a function. - * This is possible because methods like `_.bind`, `_.curry`, and `_.partial` - * may be applied regardless of execution order. Methods like `_.ary` and - * `_.rearg` modify function arguments, making the order in which they are - * executed important, preventing the merging of metadata. However, we make - * an exception for a safe combined case where curried functions have `_.ary` - * and or `_.rearg` applied. - * - * @private - * @param {Array} data The destination metadata. - * @param {Array} source The source metadata. - * @returns {Array} Returns `data`. - */ - function mergeData(data, source) { - var bitmask = data[1], - srcBitmask = source[1], - newBitmask = bitmask | srcBitmask, - isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG); - - var isCombo = - ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_CURRY_FLAG)) || - ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_REARG_FLAG) && (data[7].length <= source[8])) || - ((srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG)) && (source[7].length <= source[8]) && (bitmask == WRAP_CURRY_FLAG)); - - // Exit early if metadata can't be merged. - if (!(isCommon || isCombo)) { - return data; - } - // Use source `thisArg` if available. - if (srcBitmask & WRAP_BIND_FLAG) { - data[2] = source[2]; - // Set when currying a bound function. - newBitmask |= bitmask & WRAP_BIND_FLAG ? 0 : WRAP_CURRY_BOUND_FLAG; - } - // Compose partial arguments. - var value = source[3]; - if (value) { - var partials = data[3]; - data[3] = partials ? composeArgs(partials, value, source[4]) : value; - data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : source[4]; - } - // Compose partial right arguments. - value = source[5]; - if (value) { - partials = data[5]; - data[5] = partials ? composeArgsRight(partials, value, source[6]) : value; - data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : source[6]; - } - // Use source `argPos` if available. - value = source[7]; - if (value) { - data[7] = value; - } - // Use source `ary` if it's smaller. - if (srcBitmask & WRAP_ARY_FLAG) { - data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]); - } - // Use source `arity` if one is not provided. - if (data[9] == null) { - data[9] = source[9]; - } - // Use source `func` and merge bitmasks. - data[0] = source[0]; - data[1] = newBitmask; - - return data; - } - - /** - * This function is like - * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) - * except that it includes inherited enumerable properties. - * - * @private - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - */ - function nativeKeysIn(object) { - var result = []; - if (object != null) { - for (var key in Object(object)) { - result.push(key); - } - } - return result; - } - - /** - * Converts `value` to a string using `Object.prototype.toString`. - * - * @private - * @param {*} value The value to convert. - * @returns {string} Returns the converted string. - */ - function objectToString(value) { - return nativeObjectToString.call(value); - } - - /** - * A specialized version of `baseRest` which transforms the rest array. - * - * @private - * @param {Function} func The function to apply a rest parameter to. - * @param {number} [start=func.length-1] The start position of the rest parameter. - * @param {Function} transform The rest array transform. - * @returns {Function} Returns the new function. - */ - function overRest(func, start, transform) { - start = nativeMax(start === undefined ? (func.length - 1) : start, 0); - return function() { - var args = arguments, - index = -1, - length = nativeMax(args.length - start, 0), - array = Array(length); - - while (++index < length) { - array[index] = args[start + index]; - } - index = -1; - var otherArgs = Array(start + 1); - while (++index < start) { - otherArgs[index] = args[index]; - } - otherArgs[start] = transform(array); - return apply(func, this, otherArgs); - }; - } - - /** - * Gets the parent value at `path` of `object`. - * - * @private - * @param {Object} object The object to query. - * @param {Array} path The path to get the parent value of. - * @returns {*} Returns the parent value. - */ - function parent(object, path) { - return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1)); - } - - /** - * Reorder `array` according to the specified indexes where the element at - * the first index is assigned as the first element, the element at - * the second index is assigned as the second element, and so on. - * - * @private - * @param {Array} array The array to reorder. - * @param {Array} indexes The arranged array indexes. - * @returns {Array} Returns `array`. - */ - function reorder(array, indexes) { - var arrLength = array.length, - length = nativeMin(indexes.length, arrLength), - oldArray = copyArray(array); - - while (length--) { - var index = indexes[length]; - array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined; - } - return array; - } - - /** - * Sets metadata for `func`. - * - * **Note:** If this function becomes hot, i.e. is invoked a lot in a short - * period of time, it will trip its breaker and transition to an identity - * function to avoid garbage collection pauses in V8. See - * [V8 issue 2070](https://bugs.chromium.org/p/v8/issues/detail?id=2070) - * for more details. - * - * @private - * @param {Function} func The function to associate metadata with. - * @param {*} data The metadata. - * @returns {Function} Returns `func`. - */ - var setData = shortOut(baseSetData); - - /** - * A simple wrapper around the global [`setTimeout`](https://mdn.io/setTimeout). - * - * @private - * @param {Function} func The function to delay. - * @param {number} wait The number of milliseconds to delay invocation. - * @returns {number|Object} Returns the timer id or timeout object. - */ - var setTimeout = ctxSetTimeout || function(func, wait) { - return root.setTimeout(func, wait); - }; - - /** - * Sets the `toString` method of `func` to return `string`. - * - * @private - * @param {Function} func The function to modify. - * @param {Function} string The `toString` result. - * @returns {Function} Returns `func`. - */ - var setToString = shortOut(baseSetToString); - - /** - * Sets the `toString` method of `wrapper` to mimic the source of `reference` - * with wrapper details in a comment at the top of the source body. - * - * @private - * @param {Function} wrapper The function to modify. - * @param {Function} reference The reference function. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @returns {Function} Returns `wrapper`. - */ - function setWrapToString(wrapper, reference, bitmask) { - var source = (reference + ''); - return setToString(wrapper, insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask))); - } - - /** - * Creates a function that'll short out and invoke `identity` instead - * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN` - * milliseconds. - * - * @private - * @param {Function} func The function to restrict. - * @returns {Function} Returns the new shortable function. - */ - function shortOut(func) { - var count = 0, - lastCalled = 0; - - return function() { - var stamp = nativeNow(), - remaining = HOT_SPAN - (stamp - lastCalled); - - lastCalled = stamp; - if (remaining > 0) { - if (++count >= HOT_COUNT) { - return arguments[0]; - } - } else { - count = 0; - } - return func.apply(undefined, arguments); - }; - } - - /** - * A specialized version of `_.shuffle` which mutates and sets the size of `array`. - * - * @private - * @param {Array} array The array to shuffle. - * @param {number} [size=array.length] The size of `array`. - * @returns {Array} Returns `array`. - */ - function shuffleSelf(array, size) { - var index = -1, - length = array.length, - lastIndex = length - 1; - - size = size === undefined ? length : size; - while (++index < size) { - var rand = baseRandom(index, lastIndex), - value = array[rand]; - - array[rand] = array[index]; - array[index] = value; - } - array.length = size; - return array; - } - - /** - * Converts `string` to a property path array. - * - * @private - * @param {string} string The string to convert. - * @returns {Array} Returns the property path array. - */ - var stringToPath = memoizeCapped(function(string) { - var result = []; - if (string.charCodeAt(0) === 46 /* . */) { - result.push(''); - } - string.replace(rePropName, function(match, number, quote, subString) { - result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match)); - }); - return result; - }); - - /** - * Converts `value` to a string key if it's not a string or symbol. - * - * @private - * @param {*} value The value to inspect. - * @returns {string|symbol} Returns the key. - */ - function toKey(value) { - if (typeof value == 'string' || isSymbol(value)) { - return value; - } - var result = (value + ''); - return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; - } - - /** - * Converts `func` to its source code. - * - * @private - * @param {Function} func The function to convert. - * @returns {string} Returns the source code. - */ - function toSource(func) { - if (func != null) { - try { - return funcToString.call(func); - } catch (e) {} - try { - return (func + ''); - } catch (e) {} - } - return ''; - } - - /** - * Updates wrapper `details` based on `bitmask` flags. - * - * @private - * @returns {Array} details The details to modify. - * @param {number} bitmask The bitmask flags. See `createWrap` for more details. - * @returns {Array} Returns `details`. - */ - function updateWrapDetails(details, bitmask) { - arrayEach(wrapFlags, function(pair) { - var value = '_.' + pair[0]; - if ((bitmask & pair[1]) && !arrayIncludes(details, value)) { - details.push(value); - } - }); - return details.sort(); - } - - /** - * Creates a clone of `wrapper`. - * - * @private - * @param {Object} wrapper The wrapper to clone. - * @returns {Object} Returns the cloned wrapper. - */ - function wrapperClone(wrapper) { - if (wrapper instanceof LazyWrapper) { - return wrapper.clone(); - } - var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__); - result.__actions__ = copyArray(wrapper.__actions__); - result.__index__ = wrapper.__index__; - result.__values__ = wrapper.__values__; - return result; - } - - /*------------------------------------------------------------------------*/ - - /** - * Creates an array of elements split into groups the length of `size`. - * If `array` can't be split evenly, the final chunk will be the remaining - * elements. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to process. - * @param {number} [size=1] The length of each chunk - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Array} Returns the new array of chunks. - * @example - * - * _.chunk(['a', 'b', 'c', 'd'], 2); - * // => [['a', 'b'], ['c', 'd']] - * - * _.chunk(['a', 'b', 'c', 'd'], 3); - * // => [['a', 'b', 'c'], ['d']] - */ - function chunk(array, size, guard) { - if ((guard ? isIterateeCall(array, size, guard) : size === undefined)) { - size = 1; - } else { - size = nativeMax(toInteger(size), 0); - } - var length = array == null ? 0 : array.length; - if (!length || size < 1) { - return []; - } - var index = 0, - resIndex = 0, - result = Array(nativeCeil(length / size)); - - while (index < length) { - result[resIndex++] = baseSlice(array, index, (index += size)); - } - return result; - } - - /** - * Creates an array with all falsey values removed. The values `false`, `null`, - * `0`, `""`, `undefined`, and `NaN` are falsey. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to compact. - * @returns {Array} Returns the new array of filtered values. - * @example - * - * _.compact([0, 1, false, 2, '', 3]); - * // => [1, 2, 3] - */ - function compact(array) { - var index = -1, - length = array == null ? 0 : array.length, - resIndex = 0, - result = []; - - while (++index < length) { - var value = array[index]; - if (value) { - result[resIndex++] = value; - } - } - return result; - } - - /** - * Creates a new array concatenating `array` with any additional arrays - * and/or values. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to concatenate. - * @param {...*} [values] The values to concatenate. - * @returns {Array} Returns the new concatenated array. - * @example - * - * var array = [1]; - * var other = _.concat(array, 2, [3], [[4]]); - * - * console.log(other); - * // => [1, 2, 3, [4]] - * - * console.log(array); - * // => [1] - */ - function concat() { - var length = arguments.length; - if (!length) { - return []; - } - var args = Array(length - 1), - array = arguments[0], - index = length; - - while (index--) { - args[index - 1] = arguments[index]; - } - return arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1)); - } - - /** - * Creates an array of `array` values not included in the other given arrays - * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. The order and references of result values are - * determined by the first array. - * - * **Note:** Unlike `_.pullAll`, this method returns a new array. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {...Array} [values] The values to exclude. - * @returns {Array} Returns the new array of filtered values. - * @see _.without, _.xor - * @example - * - * _.difference([2, 1], [2, 3]); - * // => [1] - */ - var difference = baseRest(function(array, values) { - return isArrayLikeObject(array) - ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true)) - : []; - }); - - /** - * This method is like `_.difference` except that it accepts `iteratee` which - * is invoked for each element of `array` and `values` to generate the criterion - * by which they're compared. The order and references of result values are - * determined by the first array. The iteratee is invoked with one argument: - * (value). - * - * **Note:** Unlike `_.pullAllBy`, this method returns a new array. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {...Array} [values] The values to exclude. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {Array} Returns the new array of filtered values. - * @example - * - * _.differenceBy([2.1, 1.2], [2.3, 3.4], Math.floor); - * // => [1.2] - * - * // The `_.property` iteratee shorthand. - * _.differenceBy([{ 'x': 2 }, { 'x': 1 }], [{ 'x': 1 }], 'x'); - * // => [{ 'x': 2 }] - */ - var differenceBy = baseRest(function(array, values) { - var iteratee = last(values); - if (isArrayLikeObject(iteratee)) { - iteratee = undefined; - } - return isArrayLikeObject(array) - ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), getIteratee(iteratee, 2)) - : []; - }); - - /** - * This method is like `_.difference` except that it accepts `comparator` - * which is invoked to compare elements of `array` to `values`. The order and - * references of result values are determined by the first array. The comparator - * is invoked with two arguments: (arrVal, othVal). - * - * **Note:** Unlike `_.pullAllWith`, this method returns a new array. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {...Array} [values] The values to exclude. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new array of filtered values. - * @example - * - * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; - * - * _.differenceWith(objects, [{ 'x': 1, 'y': 2 }], _.isEqual); - * // => [{ 'x': 2, 'y': 1 }] - */ - var differenceWith = baseRest(function(array, values) { - var comparator = last(values); - if (isArrayLikeObject(comparator)) { - comparator = undefined; - } - return isArrayLikeObject(array) - ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), undefined, comparator) - : []; - }); - - /** - * Creates a slice of `array` with `n` elements dropped from the beginning. - * - * @static - * @memberOf _ - * @since 0.5.0 - * @category Array - * @param {Array} array The array to query. - * @param {number} [n=1] The number of elements to drop. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Array} Returns the slice of `array`. - * @example - * - * _.drop([1, 2, 3]); - * // => [2, 3] - * - * _.drop([1, 2, 3], 2); - * // => [3] - * - * _.drop([1, 2, 3], 5); - * // => [] - * - * _.drop([1, 2, 3], 0); - * // => [1, 2, 3] - */ - function drop(array, n, guard) { - var length = array == null ? 0 : array.length; - if (!length) { - return []; - } - n = (guard || n === undefined) ? 1 : toInteger(n); - return baseSlice(array, n < 0 ? 0 : n, length); - } - - /** - * Creates a slice of `array` with `n` elements dropped from the end. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to query. - * @param {number} [n=1] The number of elements to drop. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Array} Returns the slice of `array`. - * @example - * - * _.dropRight([1, 2, 3]); - * // => [1, 2] - * - * _.dropRight([1, 2, 3], 2); - * // => [1] - * - * _.dropRight([1, 2, 3], 5); - * // => [] - * - * _.dropRight([1, 2, 3], 0); - * // => [1, 2, 3] - */ - function dropRight(array, n, guard) { - var length = array == null ? 0 : array.length; - if (!length) { - return []; - } - n = (guard || n === undefined) ? 1 : toInteger(n); - n = length - n; - return baseSlice(array, 0, n < 0 ? 0 : n); - } - - /** - * Creates a slice of `array` excluding elements dropped from the end. - * Elements are dropped until `predicate` returns falsey. The predicate is - * invoked with three arguments: (value, index, array). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to query. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the slice of `array`. - * @example - * - * var users = [ - * { 'user': 'barney', 'active': true }, - * { 'user': 'fred', 'active': false }, - * { 'user': 'pebbles', 'active': false } - * ]; - * - * _.dropRightWhile(users, function(o) { return !o.active; }); - * // => objects for ['barney'] - * - * // The `_.matches` iteratee shorthand. - * _.dropRightWhile(users, { 'user': 'pebbles', 'active': false }); - * // => objects for ['barney', 'fred'] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.dropRightWhile(users, ['active', false]); - * // => objects for ['barney'] - * - * // The `_.property` iteratee shorthand. - * _.dropRightWhile(users, 'active'); - * // => objects for ['barney', 'fred', 'pebbles'] - */ - function dropRightWhile(array, predicate) { - return (array && array.length) - ? baseWhile(array, getIteratee(predicate, 3), true, true) - : []; - } - - /** - * Creates a slice of `array` excluding elements dropped from the beginning. - * Elements are dropped until `predicate` returns falsey. The predicate is - * invoked with three arguments: (value, index, array). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to query. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the slice of `array`. - * @example - * - * var users = [ - * { 'user': 'barney', 'active': false }, - * { 'user': 'fred', 'active': false }, - * { 'user': 'pebbles', 'active': true } - * ]; - * - * _.dropWhile(users, function(o) { return !o.active; }); - * // => objects for ['pebbles'] - * - * // The `_.matches` iteratee shorthand. - * _.dropWhile(users, { 'user': 'barney', 'active': false }); - * // => objects for ['fred', 'pebbles'] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.dropWhile(users, ['active', false]); - * // => objects for ['pebbles'] - * - * // The `_.property` iteratee shorthand. - * _.dropWhile(users, 'active'); - * // => objects for ['barney', 'fred', 'pebbles'] - */ - function dropWhile(array, predicate) { - return (array && array.length) - ? baseWhile(array, getIteratee(predicate, 3), true) - : []; - } - - /** - * Fills elements of `array` with `value` from `start` up to, but not - * including, `end`. - * - * **Note:** This method mutates `array`. - * - * @static - * @memberOf _ - * @since 3.2.0 - * @category Array - * @param {Array} array The array to fill. - * @param {*} value The value to fill `array` with. - * @param {number} [start=0] The start position. - * @param {number} [end=array.length] The end position. - * @returns {Array} Returns `array`. - * @example - * - * var array = [1, 2, 3]; - * - * _.fill(array, 'a'); - * console.log(array); - * // => ['a', 'a', 'a'] - * - * _.fill(Array(3), 2); - * // => [2, 2, 2] - * - * _.fill([4, 6, 8, 10], '*', 1, 3); - * // => [4, '*', '*', 10] - */ - function fill(array, value, start, end) { - var length = array == null ? 0 : array.length; - if (!length) { - return []; - } - if (start && typeof start != 'number' && isIterateeCall(array, value, start)) { - start = 0; - end = length; - } - return baseFill(array, value, start, end); - } - - /** - * This method is like `_.find` except that it returns the index of the first - * element `predicate` returns truthy for instead of the element itself. - * - * @static - * @memberOf _ - * @since 1.1.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param {number} [fromIndex=0] The index to search from. - * @returns {number} Returns the index of the found element, else `-1`. - * @example - * - * var users = [ - * { 'user': 'barney', 'active': false }, - * { 'user': 'fred', 'active': false }, - * { 'user': 'pebbles', 'active': true } - * ]; - * - * _.findIndex(users, function(o) { return o.user == 'barney'; }); - * // => 0 - * - * // The `_.matches` iteratee shorthand. - * _.findIndex(users, { 'user': 'fred', 'active': false }); - * // => 1 - * - * // The `_.matchesProperty` iteratee shorthand. - * _.findIndex(users, ['active', false]); - * // => 0 - * - * // The `_.property` iteratee shorthand. - * _.findIndex(users, 'active'); - * // => 2 - */ - function findIndex(array, predicate, fromIndex) { - var length = array == null ? 0 : array.length; - if (!length) { - return -1; - } - var index = fromIndex == null ? 0 : toInteger(fromIndex); - if (index < 0) { - index = nativeMax(length + index, 0); - } - return baseFindIndex(array, getIteratee(predicate, 3), index); - } - - /** - * This method is like `_.findIndex` except that it iterates over elements - * of `collection` from right to left. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param {number} [fromIndex=array.length-1] The index to search from. - * @returns {number} Returns the index of the found element, else `-1`. - * @example - * - * var users = [ - * { 'user': 'barney', 'active': true }, - * { 'user': 'fred', 'active': false }, - * { 'user': 'pebbles', 'active': false } - * ]; - * - * _.findLastIndex(users, function(o) { return o.user == 'pebbles'; }); - * // => 2 - * - * // The `_.matches` iteratee shorthand. - * _.findLastIndex(users, { 'user': 'barney', 'active': true }); - * // => 0 - * - * // The `_.matchesProperty` iteratee shorthand. - * _.findLastIndex(users, ['active', false]); - * // => 2 - * - * // The `_.property` iteratee shorthand. - * _.findLastIndex(users, 'active'); - * // => 0 - */ - function findLastIndex(array, predicate, fromIndex) { - var length = array == null ? 0 : array.length; - if (!length) { - return -1; - } - var index = length - 1; - if (fromIndex !== undefined) { - index = toInteger(fromIndex); - index = fromIndex < 0 - ? nativeMax(length + index, 0) - : nativeMin(index, length - 1); - } - return baseFindIndex(array, getIteratee(predicate, 3), index, true); - } - - /** - * Flattens `array` a single level deep. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to flatten. - * @returns {Array} Returns the new flattened array. - * @example - * - * _.flatten([1, [2, [3, [4]], 5]]); - * // => [1, 2, [3, [4]], 5] - */ - function flatten(array) { - var length = array == null ? 0 : array.length; - return length ? baseFlatten(array, 1) : []; - } - - /** - * Recursively flattens `array`. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to flatten. - * @returns {Array} Returns the new flattened array. - * @example - * - * _.flattenDeep([1, [2, [3, [4]], 5]]); - * // => [1, 2, 3, 4, 5] - */ - function flattenDeep(array) { - var length = array == null ? 0 : array.length; - return length ? baseFlatten(array, INFINITY) : []; - } - - /** - * Recursively flatten `array` up to `depth` times. - * - * @static - * @memberOf _ - * @since 4.4.0 - * @category Array - * @param {Array} array The array to flatten. - * @param {number} [depth=1] The maximum recursion depth. - * @returns {Array} Returns the new flattened array. - * @example - * - * var array = [1, [2, [3, [4]], 5]]; - * - * _.flattenDepth(array, 1); - * // => [1, 2, [3, [4]], 5] - * - * _.flattenDepth(array, 2); - * // => [1, 2, 3, [4], 5] - */ - function flattenDepth(array, depth) { - var length = array == null ? 0 : array.length; - if (!length) { - return []; - } - depth = depth === undefined ? 1 : toInteger(depth); - return baseFlatten(array, depth); - } - - /** - * The inverse of `_.toPairs`; this method returns an object composed - * from key-value `pairs`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} pairs The key-value pairs. - * @returns {Object} Returns the new object. - * @example - * - * _.fromPairs([['a', 1], ['b', 2]]); - * // => { 'a': 1, 'b': 2 } - */ - function fromPairs(pairs) { - var index = -1, - length = pairs == null ? 0 : pairs.length, - result = {}; - - while (++index < length) { - var pair = pairs[index]; - result[pair[0]] = pair[1]; - } - return result; - } - - /** - * Gets the first element of `array`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @alias first - * @category Array - * @param {Array} array The array to query. - * @returns {*} Returns the first element of `array`. - * @example - * - * _.head([1, 2, 3]); - * // => 1 - * - * _.head([]); - * // => undefined - */ - function head(array) { - return (array && array.length) ? array[0] : undefined; - } - - /** - * Gets the index at which the first occurrence of `value` is found in `array` - * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. If `fromIndex` is negative, it's used as the - * offset from the end of `array`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @param {number} [fromIndex=0] The index to search from. - * @returns {number} Returns the index of the matched value, else `-1`. - * @example - * - * _.indexOf([1, 2, 1, 2], 2); - * // => 1 - * - * // Search from the `fromIndex`. - * _.indexOf([1, 2, 1, 2], 2, 2); - * // => 3 - */ - function indexOf(array, value, fromIndex) { - var length = array == null ? 0 : array.length; - if (!length) { - return -1; - } - var index = fromIndex == null ? 0 : toInteger(fromIndex); - if (index < 0) { - index = nativeMax(length + index, 0); - } - return baseIndexOf(array, value, index); - } - - /** - * Gets all but the last element of `array`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to query. - * @returns {Array} Returns the slice of `array`. - * @example - * - * _.initial([1, 2, 3]); - * // => [1, 2] - */ - function initial(array) { - var length = array == null ? 0 : array.length; - return length ? baseSlice(array, 0, -1) : []; - } - - /** - * Creates an array of unique values that are included in all given arrays - * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. The order and references of result values are - * determined by the first array. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @returns {Array} Returns the new array of intersecting values. - * @example - * - * _.intersection([2, 1], [2, 3]); - * // => [2] - */ - var intersection = baseRest(function(arrays) { - var mapped = arrayMap(arrays, castArrayLikeObject); - return (mapped.length && mapped[0] === arrays[0]) - ? baseIntersection(mapped) - : []; - }); - - /** - * This method is like `_.intersection` except that it accepts `iteratee` - * which is invoked for each element of each `arrays` to generate the criterion - * by which they're compared. The order and references of result values are - * determined by the first array. The iteratee is invoked with one argument: - * (value). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {Array} Returns the new array of intersecting values. - * @example - * - * _.intersectionBy([2.1, 1.2], [2.3, 3.4], Math.floor); - * // => [2.1] - * - * // The `_.property` iteratee shorthand. - * _.intersectionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x'); - * // => [{ 'x': 1 }] - */ - var intersectionBy = baseRest(function(arrays) { - var iteratee = last(arrays), - mapped = arrayMap(arrays, castArrayLikeObject); - - if (iteratee === last(mapped)) { - iteratee = undefined; - } else { - mapped.pop(); - } - return (mapped.length && mapped[0] === arrays[0]) - ? baseIntersection(mapped, getIteratee(iteratee, 2)) - : []; - }); - - /** - * This method is like `_.intersection` except that it accepts `comparator` - * which is invoked to compare elements of `arrays`. The order and references - * of result values are determined by the first array. The comparator is - * invoked with two arguments: (arrVal, othVal). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new array of intersecting values. - * @example - * - * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; - * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }]; - * - * _.intersectionWith(objects, others, _.isEqual); - * // => [{ 'x': 1, 'y': 2 }] - */ - var intersectionWith = baseRest(function(arrays) { - var comparator = last(arrays), - mapped = arrayMap(arrays, castArrayLikeObject); - - comparator = typeof comparator == 'function' ? comparator : undefined; - if (comparator) { - mapped.pop(); - } - return (mapped.length && mapped[0] === arrays[0]) - ? baseIntersection(mapped, undefined, comparator) - : []; - }); - - /** - * Converts all elements in `array` into a string separated by `separator`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to convert. - * @param {string} [separator=','] The element separator. - * @returns {string} Returns the joined string. - * @example - * - * _.join(['a', 'b', 'c'], '~'); - * // => 'a~b~c' - */ - function join(array, separator) { - return array == null ? '' : nativeJoin.call(array, separator); - } - - /** - * Gets the last element of `array`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to query. - * @returns {*} Returns the last element of `array`. - * @example - * - * _.last([1, 2, 3]); - * // => 3 - */ - function last(array) { - var length = array == null ? 0 : array.length; - return length ? array[length - 1] : undefined; - } - - /** - * This method is like `_.indexOf` except that it iterates over elements of - * `array` from right to left. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @param {number} [fromIndex=array.length-1] The index to search from. - * @returns {number} Returns the index of the matched value, else `-1`. - * @example - * - * _.lastIndexOf([1, 2, 1, 2], 2); - * // => 3 - * - * // Search from the `fromIndex`. - * _.lastIndexOf([1, 2, 1, 2], 2, 2); - * // => 1 - */ - function lastIndexOf(array, value, fromIndex) { - var length = array == null ? 0 : array.length; - if (!length) { - return -1; - } - var index = length; - if (fromIndex !== undefined) { - index = toInteger(fromIndex); - index = index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1); - } - return value === value - ? strictLastIndexOf(array, value, index) - : baseFindIndex(array, baseIsNaN, index, true); - } - - /** - * Gets the element at index `n` of `array`. If `n` is negative, the nth - * element from the end is returned. - * - * @static - * @memberOf _ - * @since 4.11.0 - * @category Array - * @param {Array} array The array to query. - * @param {number} [n=0] The index of the element to return. - * @returns {*} Returns the nth element of `array`. - * @example - * - * var array = ['a', 'b', 'c', 'd']; - * - * _.nth(array, 1); - * // => 'b' - * - * _.nth(array, -2); - * // => 'c'; - */ - function nth(array, n) { - return (array && array.length) ? baseNth(array, toInteger(n)) : undefined; - } - - /** - * Removes all given values from `array` using - * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. - * - * **Note:** Unlike `_.without`, this method mutates `array`. Use `_.remove` - * to remove elements from an array by predicate. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Array - * @param {Array} array The array to modify. - * @param {...*} [values] The values to remove. - * @returns {Array} Returns `array`. - * @example - * - * var array = ['a', 'b', 'c', 'a', 'b', 'c']; - * - * _.pull(array, 'a', 'c'); - * console.log(array); - * // => ['b', 'b'] - */ - var pull = baseRest(pullAll); - - /** - * This method is like `_.pull` except that it accepts an array of values to remove. - * - * **Note:** Unlike `_.difference`, this method mutates `array`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to modify. - * @param {Array} values The values to remove. - * @returns {Array} Returns `array`. - * @example - * - * var array = ['a', 'b', 'c', 'a', 'b', 'c']; - * - * _.pullAll(array, ['a', 'c']); - * console.log(array); - * // => ['b', 'b'] - */ - function pullAll(array, values) { - return (array && array.length && values && values.length) - ? basePullAll(array, values) - : array; - } - - /** - * This method is like `_.pullAll` except that it accepts `iteratee` which is - * invoked for each element of `array` and `values` to generate the criterion - * by which they're compared. The iteratee is invoked with one argument: (value). - * - * **Note:** Unlike `_.differenceBy`, this method mutates `array`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to modify. - * @param {Array} values The values to remove. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {Array} Returns `array`. - * @example - * - * var array = [{ 'x': 1 }, { 'x': 2 }, { 'x': 3 }, { 'x': 1 }]; - * - * _.pullAllBy(array, [{ 'x': 1 }, { 'x': 3 }], 'x'); - * console.log(array); - * // => [{ 'x': 2 }] - */ - function pullAllBy(array, values, iteratee) { - return (array && array.length && values && values.length) - ? basePullAll(array, values, getIteratee(iteratee, 2)) - : array; - } - - /** - * This method is like `_.pullAll` except that it accepts `comparator` which - * is invoked to compare elements of `array` to `values`. The comparator is - * invoked with two arguments: (arrVal, othVal). - * - * **Note:** Unlike `_.differenceWith`, this method mutates `array`. - * - * @static - * @memberOf _ - * @since 4.6.0 - * @category Array - * @param {Array} array The array to modify. - * @param {Array} values The values to remove. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns `array`. - * @example - * - * var array = [{ 'x': 1, 'y': 2 }, { 'x': 3, 'y': 4 }, { 'x': 5, 'y': 6 }]; - * - * _.pullAllWith(array, [{ 'x': 3, 'y': 4 }], _.isEqual); - * console.log(array); - * // => [{ 'x': 1, 'y': 2 }, { 'x': 5, 'y': 6 }] - */ - function pullAllWith(array, values, comparator) { - return (array && array.length && values && values.length) - ? basePullAll(array, values, undefined, comparator) - : array; - } - - /** - * Removes elements from `array` corresponding to `indexes` and returns an - * array of removed elements. - * - * **Note:** Unlike `_.at`, this method mutates `array`. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to modify. - * @param {...(number|number[])} [indexes] The indexes of elements to remove. - * @returns {Array} Returns the new array of removed elements. - * @example - * - * var array = ['a', 'b', 'c', 'd']; - * var pulled = _.pullAt(array, [1, 3]); - * - * console.log(array); - * // => ['a', 'c'] - * - * console.log(pulled); - * // => ['b', 'd'] - */ - var pullAt = flatRest(function(array, indexes) { - var length = array == null ? 0 : array.length, - result = baseAt(array, indexes); - - basePullAt(array, arrayMap(indexes, function(index) { - return isIndex(index, length) ? +index : index; - }).sort(compareAscending)); - - return result; - }); - - /** - * Removes all elements from `array` that `predicate` returns truthy for - * and returns an array of the removed elements. The predicate is invoked - * with three arguments: (value, index, array). - * - * **Note:** Unlike `_.filter`, this method mutates `array`. Use `_.pull` - * to pull elements from an array by value. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Array - * @param {Array} array The array to modify. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the new array of removed elements. - * @example - * - * var array = [1, 2, 3, 4]; - * var evens = _.remove(array, function(n) { - * return n % 2 == 0; - * }); - * - * console.log(array); - * // => [1, 3] - * - * console.log(evens); - * // => [2, 4] - */ - function remove(array, predicate) { - var result = []; - if (!(array && array.length)) { - return result; - } - var index = -1, - indexes = [], - length = array.length; - - predicate = getIteratee(predicate, 3); - while (++index < length) { - var value = array[index]; - if (predicate(value, index, array)) { - result.push(value); - indexes.push(index); - } - } - basePullAt(array, indexes); - return result; - } - - /** - * Reverses `array` so that the first element becomes the last, the second - * element becomes the second to last, and so on. - * - * **Note:** This method mutates `array` and is based on - * [`Array#reverse`](https://mdn.io/Array/reverse). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to modify. - * @returns {Array} Returns `array`. - * @example - * - * var array = [1, 2, 3]; - * - * _.reverse(array); - * // => [3, 2, 1] - * - * console.log(array); - * // => [3, 2, 1] - */ - function reverse(array) { - return array == null ? array : nativeReverse.call(array); - } - - /** - * Creates a slice of `array` from `start` up to, but not including, `end`. - * - * **Note:** This method is used instead of - * [`Array#slice`](https://mdn.io/Array/slice) to ensure dense arrays are - * returned. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to slice. - * @param {number} [start=0] The start position. - * @param {number} [end=array.length] The end position. - * @returns {Array} Returns the slice of `array`. - */ - function slice(array, start, end) { - var length = array == null ? 0 : array.length; - if (!length) { - return []; - } - if (end && typeof end != 'number' && isIterateeCall(array, start, end)) { - start = 0; - end = length; - } - else { - start = start == null ? 0 : toInteger(start); - end = end === undefined ? length : toInteger(end); - } - return baseSlice(array, start, end); - } - - /** - * Uses a binary search to determine the lowest index at which `value` - * should be inserted into `array` in order to maintain its sort order. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The sorted array to inspect. - * @param {*} value The value to evaluate. - * @returns {number} Returns the index at which `value` should be inserted - * into `array`. - * @example - * - * _.sortedIndex([30, 50], 40); - * // => 1 - */ - function sortedIndex(array, value) { - return baseSortedIndex(array, value); - } - - /** - * This method is like `_.sortedIndex` except that it accepts `iteratee` - * which is invoked for `value` and each element of `array` to compute their - * sort ranking. The iteratee is invoked with one argument: (value). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The sorted array to inspect. - * @param {*} value The value to evaluate. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {number} Returns the index at which `value` should be inserted - * into `array`. - * @example - * - * var objects = [{ 'x': 4 }, { 'x': 5 }]; - * - * _.sortedIndexBy(objects, { 'x': 4 }, function(o) { return o.x; }); - * // => 0 - * - * // The `_.property` iteratee shorthand. - * _.sortedIndexBy(objects, { 'x': 4 }, 'x'); - * // => 0 - */ - function sortedIndexBy(array, value, iteratee) { - return baseSortedIndexBy(array, value, getIteratee(iteratee, 2)); - } - - /** - * This method is like `_.indexOf` except that it performs a binary - * search on a sorted `array`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @returns {number} Returns the index of the matched value, else `-1`. - * @example - * - * _.sortedIndexOf([4, 5, 5, 5, 6], 5); - * // => 1 - */ - function sortedIndexOf(array, value) { - var length = array == null ? 0 : array.length; - if (length) { - var index = baseSortedIndex(array, value); - if (index < length && eq(array[index], value)) { - return index; - } - } - return -1; - } - - /** - * This method is like `_.sortedIndex` except that it returns the highest - * index at which `value` should be inserted into `array` in order to - * maintain its sort order. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The sorted array to inspect. - * @param {*} value The value to evaluate. - * @returns {number} Returns the index at which `value` should be inserted - * into `array`. - * @example - * - * _.sortedLastIndex([4, 5, 5, 5, 6], 5); - * // => 4 - */ - function sortedLastIndex(array, value) { - return baseSortedIndex(array, value, true); - } - - /** - * This method is like `_.sortedLastIndex` except that it accepts `iteratee` - * which is invoked for `value` and each element of `array` to compute their - * sort ranking. The iteratee is invoked with one argument: (value). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The sorted array to inspect. - * @param {*} value The value to evaluate. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {number} Returns the index at which `value` should be inserted - * into `array`. - * @example - * - * var objects = [{ 'x': 4 }, { 'x': 5 }]; - * - * _.sortedLastIndexBy(objects, { 'x': 4 }, function(o) { return o.x; }); - * // => 1 - * - * // The `_.property` iteratee shorthand. - * _.sortedLastIndexBy(objects, { 'x': 4 }, 'x'); - * // => 1 - */ - function sortedLastIndexBy(array, value, iteratee) { - return baseSortedIndexBy(array, value, getIteratee(iteratee, 2), true); - } - - /** - * This method is like `_.lastIndexOf` except that it performs a binary - * search on a sorted `array`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {*} value The value to search for. - * @returns {number} Returns the index of the matched value, else `-1`. - * @example - * - * _.sortedLastIndexOf([4, 5, 5, 5, 6], 5); - * // => 3 - */ - function sortedLastIndexOf(array, value) { - var length = array == null ? 0 : array.length; - if (length) { - var index = baseSortedIndex(array, value, true) - 1; - if (eq(array[index], value)) { - return index; - } - } - return -1; - } - - /** - * This method is like `_.uniq` except that it's designed and optimized - * for sorted arrays. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @returns {Array} Returns the new duplicate free array. - * @example - * - * _.sortedUniq([1, 1, 2]); - * // => [1, 2] - */ - function sortedUniq(array) { - return (array && array.length) - ? baseSortedUniq(array) - : []; - } - - /** - * This method is like `_.uniqBy` except that it's designed and optimized - * for sorted arrays. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {Function} [iteratee] The iteratee invoked per element. - * @returns {Array} Returns the new duplicate free array. - * @example - * - * _.sortedUniqBy([1.1, 1.2, 2.3, 2.4], Math.floor); - * // => [1.1, 2.3] - */ - function sortedUniqBy(array, iteratee) { - return (array && array.length) - ? baseSortedUniq(array, getIteratee(iteratee, 2)) - : []; - } - - /** - * Gets all but the first element of `array`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to query. - * @returns {Array} Returns the slice of `array`. - * @example - * - * _.tail([1, 2, 3]); - * // => [2, 3] - */ - function tail(array) { - var length = array == null ? 0 : array.length; - return length ? baseSlice(array, 1, length) : []; - } - - /** - * Creates a slice of `array` with `n` elements taken from the beginning. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to query. - * @param {number} [n=1] The number of elements to take. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Array} Returns the slice of `array`. - * @example - * - * _.take([1, 2, 3]); - * // => [1] - * - * _.take([1, 2, 3], 2); - * // => [1, 2] - * - * _.take([1, 2, 3], 5); - * // => [1, 2, 3] - * - * _.take([1, 2, 3], 0); - * // => [] - */ - function take(array, n, guard) { - if (!(array && array.length)) { - return []; - } - n = (guard || n === undefined) ? 1 : toInteger(n); - return baseSlice(array, 0, n < 0 ? 0 : n); - } - - /** - * Creates a slice of `array` with `n` elements taken from the end. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to query. - * @param {number} [n=1] The number of elements to take. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Array} Returns the slice of `array`. - * @example - * - * _.takeRight([1, 2, 3]); - * // => [3] - * - * _.takeRight([1, 2, 3], 2); - * // => [2, 3] - * - * _.takeRight([1, 2, 3], 5); - * // => [1, 2, 3] - * - * _.takeRight([1, 2, 3], 0); - * // => [] - */ - function takeRight(array, n, guard) { - var length = array == null ? 0 : array.length; - if (!length) { - return []; - } - n = (guard || n === undefined) ? 1 : toInteger(n); - n = length - n; - return baseSlice(array, n < 0 ? 0 : n, length); - } - - /** - * Creates a slice of `array` with elements taken from the end. Elements are - * taken until `predicate` returns falsey. The predicate is invoked with - * three arguments: (value, index, array). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to query. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the slice of `array`. - * @example - * - * var users = [ - * { 'user': 'barney', 'active': true }, - * { 'user': 'fred', 'active': false }, - * { 'user': 'pebbles', 'active': false } - * ]; - * - * _.takeRightWhile(users, function(o) { return !o.active; }); - * // => objects for ['fred', 'pebbles'] - * - * // The `_.matches` iteratee shorthand. - * _.takeRightWhile(users, { 'user': 'pebbles', 'active': false }); - * // => objects for ['pebbles'] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.takeRightWhile(users, ['active', false]); - * // => objects for ['fred', 'pebbles'] - * - * // The `_.property` iteratee shorthand. - * _.takeRightWhile(users, 'active'); - * // => [] - */ - function takeRightWhile(array, predicate) { - return (array && array.length) - ? baseWhile(array, getIteratee(predicate, 3), false, true) - : []; - } - - /** - * Creates a slice of `array` with elements taken from the beginning. Elements - * are taken until `predicate` returns falsey. The predicate is invoked with - * three arguments: (value, index, array). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Array - * @param {Array} array The array to query. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the slice of `array`. - * @example - * - * var users = [ - * { 'user': 'barney', 'active': false }, - * { 'user': 'fred', 'active': false }, - * { 'user': 'pebbles', 'active': true } - * ]; - * - * _.takeWhile(users, function(o) { return !o.active; }); - * // => objects for ['barney', 'fred'] - * - * // The `_.matches` iteratee shorthand. - * _.takeWhile(users, { 'user': 'barney', 'active': false }); - * // => objects for ['barney'] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.takeWhile(users, ['active', false]); - * // => objects for ['barney', 'fred'] - * - * // The `_.property` iteratee shorthand. - * _.takeWhile(users, 'active'); - * // => [] - */ - function takeWhile(array, predicate) { - return (array && array.length) - ? baseWhile(array, getIteratee(predicate, 3)) - : []; - } - - /** - * Creates an array of unique values, in order, from all given arrays using - * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @returns {Array} Returns the new array of combined values. - * @example - * - * _.union([2], [1, 2]); - * // => [2, 1] - */ - var union = baseRest(function(arrays) { - return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true)); - }); - - /** - * This method is like `_.union` except that it accepts `iteratee` which is - * invoked for each element of each `arrays` to generate the criterion by - * which uniqueness is computed. Result values are chosen from the first - * array in which the value occurs. The iteratee is invoked with one argument: - * (value). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {Array} Returns the new array of combined values. - * @example - * - * _.unionBy([2.1], [1.2, 2.3], Math.floor); - * // => [2.1, 1.2] - * - * // The `_.property` iteratee shorthand. - * _.unionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x'); - * // => [{ 'x': 1 }, { 'x': 2 }] - */ - var unionBy = baseRest(function(arrays) { - var iteratee = last(arrays); - if (isArrayLikeObject(iteratee)) { - iteratee = undefined; - } - return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), getIteratee(iteratee, 2)); - }); - - /** - * This method is like `_.union` except that it accepts `comparator` which - * is invoked to compare elements of `arrays`. Result values are chosen from - * the first array in which the value occurs. The comparator is invoked - * with two arguments: (arrVal, othVal). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new array of combined values. - * @example - * - * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; - * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }]; - * - * _.unionWith(objects, others, _.isEqual); - * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }] - */ - var unionWith = baseRest(function(arrays) { - var comparator = last(arrays); - comparator = typeof comparator == 'function' ? comparator : undefined; - return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), undefined, comparator); - }); - - /** - * Creates a duplicate-free version of an array, using - * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons, in which only the first occurrence of each element - * is kept. The order of result values is determined by the order they occur - * in the array. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to inspect. - * @returns {Array} Returns the new duplicate free array. - * @example - * - * _.uniq([2, 1, 2]); - * // => [2, 1] - */ - function uniq(array) { - return (array && array.length) ? baseUniq(array) : []; - } - - /** - * This method is like `_.uniq` except that it accepts `iteratee` which is - * invoked for each element in `array` to generate the criterion by which - * uniqueness is computed. The order of result values is determined by the - * order they occur in the array. The iteratee is invoked with one argument: - * (value). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {Array} Returns the new duplicate free array. - * @example - * - * _.uniqBy([2.1, 1.2, 2.3], Math.floor); - * // => [2.1, 1.2] - * - * // The `_.property` iteratee shorthand. - * _.uniqBy([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x'); - * // => [{ 'x': 1 }, { 'x': 2 }] - */ - function uniqBy(array, iteratee) { - return (array && array.length) ? baseUniq(array, getIteratee(iteratee, 2)) : []; - } - - /** - * This method is like `_.uniq` except that it accepts `comparator` which - * is invoked to compare elements of `array`. The order of result values is - * determined by the order they occur in the array.The comparator is invoked - * with two arguments: (arrVal, othVal). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new duplicate free array. - * @example - * - * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 2 }]; - * - * _.uniqWith(objects, _.isEqual); - * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }] - */ - function uniqWith(array, comparator) { - comparator = typeof comparator == 'function' ? comparator : undefined; - return (array && array.length) ? baseUniq(array, undefined, comparator) : []; - } - - /** - * This method is like `_.zip` except that it accepts an array of grouped - * elements and creates an array regrouping the elements to their pre-zip - * configuration. - * - * @static - * @memberOf _ - * @since 1.2.0 - * @category Array - * @param {Array} array The array of grouped elements to process. - * @returns {Array} Returns the new array of regrouped elements. - * @example - * - * var zipped = _.zip(['a', 'b'], [1, 2], [true, false]); - * // => [['a', 1, true], ['b', 2, false]] - * - * _.unzip(zipped); - * // => [['a', 'b'], [1, 2], [true, false]] - */ - function unzip(array) { - if (!(array && array.length)) { - return []; - } - var length = 0; - array = arrayFilter(array, function(group) { - if (isArrayLikeObject(group)) { - length = nativeMax(group.length, length); - return true; - } - }); - return baseTimes(length, function(index) { - return arrayMap(array, baseProperty(index)); - }); - } - - /** - * This method is like `_.unzip` except that it accepts `iteratee` to specify - * how regrouped values should be combined. The iteratee is invoked with the - * elements of each group: (...group). - * - * @static - * @memberOf _ - * @since 3.8.0 - * @category Array - * @param {Array} array The array of grouped elements to process. - * @param {Function} [iteratee=_.identity] The function to combine - * regrouped values. - * @returns {Array} Returns the new array of regrouped elements. - * @example - * - * var zipped = _.zip([1, 2], [10, 20], [100, 200]); - * // => [[1, 10, 100], [2, 20, 200]] - * - * _.unzipWith(zipped, _.add); - * // => [3, 30, 300] - */ - function unzipWith(array, iteratee) { - if (!(array && array.length)) { - return []; - } - var result = unzip(array); - if (iteratee == null) { - return result; - } - return arrayMap(result, function(group) { - return apply(iteratee, undefined, group); - }); - } - - /** - * Creates an array excluding all given values using - * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * for equality comparisons. - * - * **Note:** Unlike `_.pull`, this method returns a new array. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {Array} array The array to inspect. - * @param {...*} [values] The values to exclude. - * @returns {Array} Returns the new array of filtered values. - * @see _.difference, _.xor - * @example - * - * _.without([2, 1, 2, 3], 1, 2); - * // => [3] - */ - var without = baseRest(function(array, values) { - return isArrayLikeObject(array) - ? baseDifference(array, values) - : []; - }); - - /** - * Creates an array of unique values that is the - * [symmetric difference](https://en.wikipedia.org/wiki/Symmetric_difference) - * of the given arrays. The order of result values is determined by the order - * they occur in the arrays. - * - * @static - * @memberOf _ - * @since 2.4.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @returns {Array} Returns the new array of filtered values. - * @see _.difference, _.without - * @example - * - * _.xor([2, 1], [2, 3]); - * // => [1, 3] - */ - var xor = baseRest(function(arrays) { - return baseXor(arrayFilter(arrays, isArrayLikeObject)); - }); - - /** - * This method is like `_.xor` except that it accepts `iteratee` which is - * invoked for each element of each `arrays` to generate the criterion by - * which by which they're compared. The order of result values is determined - * by the order they occur in the arrays. The iteratee is invoked with one - * argument: (value). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {Array} Returns the new array of filtered values. - * @example - * - * _.xorBy([2.1, 1.2], [2.3, 3.4], Math.floor); - * // => [1.2, 3.4] - * - * // The `_.property` iteratee shorthand. - * _.xorBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x'); - * // => [{ 'x': 2 }] - */ - var xorBy = baseRest(function(arrays) { - var iteratee = last(arrays); - if (isArrayLikeObject(iteratee)) { - iteratee = undefined; - } - return baseXor(arrayFilter(arrays, isArrayLikeObject), getIteratee(iteratee, 2)); - }); - - /** - * This method is like `_.xor` except that it accepts `comparator` which is - * invoked to compare elements of `arrays`. The order of result values is - * determined by the order they occur in the arrays. The comparator is invoked - * with two arguments: (arrVal, othVal). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Array - * @param {...Array} [arrays] The arrays to inspect. - * @param {Function} [comparator] The comparator invoked per element. - * @returns {Array} Returns the new array of filtered values. - * @example - * - * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; - * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }]; - * - * _.xorWith(objects, others, _.isEqual); - * // => [{ 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }] - */ - var xorWith = baseRest(function(arrays) { - var comparator = last(arrays); - comparator = typeof comparator == 'function' ? comparator : undefined; - return baseXor(arrayFilter(arrays, isArrayLikeObject), undefined, comparator); - }); - - /** - * Creates an array of grouped elements, the first of which contains the - * first elements of the given arrays, the second of which contains the - * second elements of the given arrays, and so on. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Array - * @param {...Array} [arrays] The arrays to process. - * @returns {Array} Returns the new array of grouped elements. - * @example - * - * _.zip(['a', 'b'], [1, 2], [true, false]); - * // => [['a', 1, true], ['b', 2, false]] - */ - var zip = baseRest(unzip); - - /** - * This method is like `_.fromPairs` except that it accepts two arrays, - * one of property identifiers and one of corresponding values. - * - * @static - * @memberOf _ - * @since 0.4.0 - * @category Array - * @param {Array} [props=[]] The property identifiers. - * @param {Array} [values=[]] The property values. - * @returns {Object} Returns the new object. - * @example - * - * _.zipObject(['a', 'b'], [1, 2]); - * // => { 'a': 1, 'b': 2 } - */ - function zipObject(props, values) { - return baseZipObject(props || [], values || [], assignValue); - } - - /** - * This method is like `_.zipObject` except that it supports property paths. - * - * @static - * @memberOf _ - * @since 4.1.0 - * @category Array - * @param {Array} [props=[]] The property identifiers. - * @param {Array} [values=[]] The property values. - * @returns {Object} Returns the new object. - * @example - * - * _.zipObjectDeep(['a.b[0].c', 'a.b[1].d'], [1, 2]); - * // => { 'a': { 'b': [{ 'c': 1 }, { 'd': 2 }] } } - */ - function zipObjectDeep(props, values) { - return baseZipObject(props || [], values || [], baseSet); - } - - /** - * This method is like `_.zip` except that it accepts `iteratee` to specify - * how grouped values should be combined. The iteratee is invoked with the - * elements of each group: (...group). - * - * @static - * @memberOf _ - * @since 3.8.0 - * @category Array - * @param {...Array} [arrays] The arrays to process. - * @param {Function} [iteratee=_.identity] The function to combine - * grouped values. - * @returns {Array} Returns the new array of grouped elements. - * @example - * - * _.zipWith([1, 2], [10, 20], [100, 200], function(a, b, c) { - * return a + b + c; - * }); - * // => [111, 222] - */ - var zipWith = baseRest(function(arrays) { - var length = arrays.length, - iteratee = length > 1 ? arrays[length - 1] : undefined; - - iteratee = typeof iteratee == 'function' ? (arrays.pop(), iteratee) : undefined; - return unzipWith(arrays, iteratee); - }); - - /*------------------------------------------------------------------------*/ - - /** - * Creates a `lodash` wrapper instance that wraps `value` with explicit method - * chain sequences enabled. The result of such sequences must be unwrapped - * with `_#value`. - * - * @static - * @memberOf _ - * @since 1.3.0 - * @category Seq - * @param {*} value The value to wrap. - * @returns {Object} Returns the new `lodash` wrapper instance. - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36 }, - * { 'user': 'fred', 'age': 40 }, - * { 'user': 'pebbles', 'age': 1 } - * ]; - * - * var youngest = _ - * .chain(users) - * .sortBy('age') - * .map(function(o) { - * return o.user + ' is ' + o.age; - * }) - * .head() - * .value(); - * // => 'pebbles is 1' - */ - function chain(value) { - var result = lodash(value); - result.__chain__ = true; - return result; - } - - /** - * This method invokes `interceptor` and returns `value`. The interceptor - * is invoked with one argument; (value). The purpose of this method is to - * "tap into" a method chain sequence in order to modify intermediate results. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Seq - * @param {*} value The value to provide to `interceptor`. - * @param {Function} interceptor The function to invoke. - * @returns {*} Returns `value`. - * @example - * - * _([1, 2, 3]) - * .tap(function(array) { - * // Mutate input array. - * array.pop(); - * }) - * .reverse() - * .value(); - * // => [2, 1] - */ - function tap(value, interceptor) { - interceptor(value); - return value; - } - - /** - * This method is like `_.tap` except that it returns the result of `interceptor`. - * The purpose of this method is to "pass thru" values replacing intermediate - * results in a method chain sequence. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Seq - * @param {*} value The value to provide to `interceptor`. - * @param {Function} interceptor The function to invoke. - * @returns {*} Returns the result of `interceptor`. - * @example - * - * _(' abc ') - * .chain() - * .trim() - * .thru(function(value) { - * return [value]; - * }) - * .value(); - * // => ['abc'] - */ - function thru(value, interceptor) { - return interceptor(value); - } - - /** - * This method is the wrapper version of `_.at`. - * - * @name at - * @memberOf _ - * @since 1.0.0 - * @category Seq - * @param {...(string|string[])} [paths] The property paths to pick. - * @returns {Object} Returns the new `lodash` wrapper instance. - * @example - * - * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] }; - * - * _(object).at(['a[0].b.c', 'a[1]']).value(); - * // => [3, 4] - */ - var wrapperAt = flatRest(function(paths) { - var length = paths.length, - start = length ? paths[0] : 0, - value = this.__wrapped__, - interceptor = function(object) { return baseAt(object, paths); }; - - if (length > 1 || this.__actions__.length || - !(value instanceof LazyWrapper) || !isIndex(start)) { - return this.thru(interceptor); - } - value = value.slice(start, +start + (length ? 1 : 0)); - value.__actions__.push({ - 'func': thru, - 'args': [interceptor], - 'thisArg': undefined - }); - return new LodashWrapper(value, this.__chain__).thru(function(array) { - if (length && !array.length) { - array.push(undefined); - } - return array; - }); - }); - - /** - * Creates a `lodash` wrapper instance with explicit method chain sequences enabled. - * - * @name chain - * @memberOf _ - * @since 0.1.0 - * @category Seq - * @returns {Object} Returns the new `lodash` wrapper instance. - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36 }, - * { 'user': 'fred', 'age': 40 } - * ]; - * - * // A sequence without explicit chaining. - * _(users).head(); - * // => { 'user': 'barney', 'age': 36 } - * - * // A sequence with explicit chaining. - * _(users) - * .chain() - * .head() - * .pick('user') - * .value(); - * // => { 'user': 'barney' } - */ - function wrapperChain() { - return chain(this); - } - - /** - * Executes the chain sequence and returns the wrapped result. - * - * @name commit - * @memberOf _ - * @since 3.2.0 - * @category Seq - * @returns {Object} Returns the new `lodash` wrapper instance. - * @example - * - * var array = [1, 2]; - * var wrapped = _(array).push(3); - * - * console.log(array); - * // => [1, 2] - * - * wrapped = wrapped.commit(); - * console.log(array); - * // => [1, 2, 3] - * - * wrapped.last(); - * // => 3 - * - * console.log(array); - * // => [1, 2, 3] - */ - function wrapperCommit() { - return new LodashWrapper(this.value(), this.__chain__); - } - - /** - * Gets the next value on a wrapped object following the - * [iterator protocol](https://mdn.io/iteration_protocols#iterator). - * - * @name next - * @memberOf _ - * @since 4.0.0 - * @category Seq - * @returns {Object} Returns the next iterator value. - * @example - * - * var wrapped = _([1, 2]); - * - * wrapped.next(); - * // => { 'done': false, 'value': 1 } - * - * wrapped.next(); - * // => { 'done': false, 'value': 2 } - * - * wrapped.next(); - * // => { 'done': true, 'value': undefined } - */ - function wrapperNext() { - if (this.__values__ === undefined) { - this.__values__ = toArray(this.value()); - } - var done = this.__index__ >= this.__values__.length, - value = done ? undefined : this.__values__[this.__index__++]; - - return { 'done': done, 'value': value }; - } - - /** - * Enables the wrapper to be iterable. - * - * @name Symbol.iterator - * @memberOf _ - * @since 4.0.0 - * @category Seq - * @returns {Object} Returns the wrapper object. - * @example - * - * var wrapped = _([1, 2]); - * - * wrapped[Symbol.iterator]() === wrapped; - * // => true - * - * Array.from(wrapped); - * // => [1, 2] - */ - function wrapperToIterator() { - return this; - } - - /** - * Creates a clone of the chain sequence planting `value` as the wrapped value. - * - * @name plant - * @memberOf _ - * @since 3.2.0 - * @category Seq - * @param {*} value The value to plant. - * @returns {Object} Returns the new `lodash` wrapper instance. - * @example - * - * function square(n) { - * return n * n; - * } - * - * var wrapped = _([1, 2]).map(square); - * var other = wrapped.plant([3, 4]); - * - * other.value(); - * // => [9, 16] - * - * wrapped.value(); - * // => [1, 4] - */ - function wrapperPlant(value) { - var result, - parent = this; - - while (parent instanceof baseLodash) { - var clone = wrapperClone(parent); - clone.__index__ = 0; - clone.__values__ = undefined; - if (result) { - previous.__wrapped__ = clone; - } else { - result = clone; - } - var previous = clone; - parent = parent.__wrapped__; - } - previous.__wrapped__ = value; - return result; - } - - /** - * This method is the wrapper version of `_.reverse`. - * - * **Note:** This method mutates the wrapped array. - * - * @name reverse - * @memberOf _ - * @since 0.1.0 - * @category Seq - * @returns {Object} Returns the new `lodash` wrapper instance. - * @example - * - * var array = [1, 2, 3]; - * - * _(array).reverse().value() - * // => [3, 2, 1] - * - * console.log(array); - * // => [3, 2, 1] - */ - function wrapperReverse() { - var value = this.__wrapped__; - if (value instanceof LazyWrapper) { - var wrapped = value; - if (this.__actions__.length) { - wrapped = new LazyWrapper(this); - } - wrapped = wrapped.reverse(); - wrapped.__actions__.push({ - 'func': thru, - 'args': [reverse], - 'thisArg': undefined - }); - return new LodashWrapper(wrapped, this.__chain__); - } - return this.thru(reverse); - } - - /** - * Executes the chain sequence to resolve the unwrapped value. - * - * @name value - * @memberOf _ - * @since 0.1.0 - * @alias toJSON, valueOf - * @category Seq - * @returns {*} Returns the resolved unwrapped value. - * @example - * - * _([1, 2, 3]).value(); - * // => [1, 2, 3] - */ - function wrapperValue() { - return baseWrapperValue(this.__wrapped__, this.__actions__); - } - - /*------------------------------------------------------------------------*/ - - /** - * Creates an object composed of keys generated from the results of running - * each element of `collection` thru `iteratee`. The corresponding value of - * each key is the number of times the key was returned by `iteratee`. The - * iteratee is invoked with one argument: (value). - * - * @static - * @memberOf _ - * @since 0.5.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The iteratee to transform keys. - * @returns {Object} Returns the composed aggregate object. - * @example - * - * _.countBy([6.1, 4.2, 6.3], Math.floor); - * // => { '4': 1, '6': 2 } - * - * // The `_.property` iteratee shorthand. - * _.countBy(['one', 'two', 'three'], 'length'); - * // => { '3': 2, '5': 1 } - */ - var countBy = createAggregator(function(result, value, key) { - if (hasOwnProperty.call(result, key)) { - ++result[key]; - } else { - baseAssignValue(result, key, 1); - } - }); - - /** - * Checks if `predicate` returns truthy for **all** elements of `collection`. - * Iteration is stopped once `predicate` returns falsey. The predicate is - * invoked with three arguments: (value, index|key, collection). - * - * **Note:** This method returns `true` for - * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because - * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of - * elements of empty collections. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {boolean} Returns `true` if all elements pass the predicate check, - * else `false`. - * @example - * - * _.every([true, 1, null, 'yes'], Boolean); - * // => false - * - * var users = [ - * { 'user': 'barney', 'age': 36, 'active': false }, - * { 'user': 'fred', 'age': 40, 'active': false } - * ]; - * - * // The `_.matches` iteratee shorthand. - * _.every(users, { 'user': 'barney', 'active': false }); - * // => false - * - * // The `_.matchesProperty` iteratee shorthand. - * _.every(users, ['active', false]); - * // => true - * - * // The `_.property` iteratee shorthand. - * _.every(users, 'active'); - * // => false - */ - function every(collection, predicate, guard) { - var func = isArray(collection) ? arrayEvery : baseEvery; - if (guard && isIterateeCall(collection, predicate, guard)) { - predicate = undefined; - } - return func(collection, getIteratee(predicate, 3)); - } - - /** - * Iterates over elements of `collection`, returning an array of all elements - * `predicate` returns truthy for. The predicate is invoked with three - * arguments: (value, index|key, collection). - * - * **Note:** Unlike `_.remove`, this method returns a new array. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the new filtered array. - * @see _.reject - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36, 'active': true }, - * { 'user': 'fred', 'age': 40, 'active': false } - * ]; - * - * _.filter(users, function(o) { return !o.active; }); - * // => objects for ['fred'] - * - * // The `_.matches` iteratee shorthand. - * _.filter(users, { 'age': 36, 'active': true }); - * // => objects for ['barney'] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.filter(users, ['active', false]); - * // => objects for ['fred'] - * - * // The `_.property` iteratee shorthand. - * _.filter(users, 'active'); - * // => objects for ['barney'] - */ - function filter(collection, predicate) { - var func = isArray(collection) ? arrayFilter : baseFilter; - return func(collection, getIteratee(predicate, 3)); - } - - /** - * Iterates over elements of `collection`, returning the first element - * `predicate` returns truthy for. The predicate is invoked with three - * arguments: (value, index|key, collection). - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param {number} [fromIndex=0] The index to search from. - * @returns {*} Returns the matched element, else `undefined`. - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36, 'active': true }, - * { 'user': 'fred', 'age': 40, 'active': false }, - * { 'user': 'pebbles', 'age': 1, 'active': true } - * ]; - * - * _.find(users, function(o) { return o.age < 40; }); - * // => object for 'barney' - * - * // The `_.matches` iteratee shorthand. - * _.find(users, { 'age': 1, 'active': true }); - * // => object for 'pebbles' - * - * // The `_.matchesProperty` iteratee shorthand. - * _.find(users, ['active', false]); - * // => object for 'fred' - * - * // The `_.property` iteratee shorthand. - * _.find(users, 'active'); - * // => object for 'barney' - */ - var find = createFind(findIndex); - - /** - * This method is like `_.find` except that it iterates over elements of - * `collection` from right to left. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Collection - * @param {Array|Object} collection The collection to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param {number} [fromIndex=collection.length-1] The index to search from. - * @returns {*} Returns the matched element, else `undefined`. - * @example - * - * _.findLast([1, 2, 3, 4], function(n) { - * return n % 2 == 1; - * }); - * // => 3 - */ - var findLast = createFind(findLastIndex); - - /** - * Creates a flattened array of values by running each element in `collection` - * thru `iteratee` and flattening the mapped results. The iteratee is invoked - * with three arguments: (value, index|key, collection). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Array} Returns the new flattened array. - * @example - * - * function duplicate(n) { - * return [n, n]; - * } - * - * _.flatMap([1, 2], duplicate); - * // => [1, 1, 2, 2] - */ - function flatMap(collection, iteratee) { - return baseFlatten(map(collection, iteratee), 1); - } - - /** - * This method is like `_.flatMap` except that it recursively flattens the - * mapped results. - * - * @static - * @memberOf _ - * @since 4.7.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Array} Returns the new flattened array. - * @example - * - * function duplicate(n) { - * return [[[n, n]]]; - * } - * - * _.flatMapDeep([1, 2], duplicate); - * // => [1, 1, 2, 2] - */ - function flatMapDeep(collection, iteratee) { - return baseFlatten(map(collection, iteratee), INFINITY); - } - - /** - * This method is like `_.flatMap` except that it recursively flattens the - * mapped results up to `depth` times. - * - * @static - * @memberOf _ - * @since 4.7.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @param {number} [depth=1] The maximum recursion depth. - * @returns {Array} Returns the new flattened array. - * @example - * - * function duplicate(n) { - * return [[[n, n]]]; - * } - * - * _.flatMapDepth([1, 2], duplicate, 2); - * // => [[1, 1], [2, 2]] - */ - function flatMapDepth(collection, iteratee, depth) { - depth = depth === undefined ? 1 : toInteger(depth); - return baseFlatten(map(collection, iteratee), depth); - } - - /** - * Iterates over elements of `collection` and invokes `iteratee` for each element. - * The iteratee is invoked with three arguments: (value, index|key, collection). - * Iteratee functions may exit iteration early by explicitly returning `false`. - * - * **Note:** As with other "Collections" methods, objects with a "length" - * property are iterated like arrays. To avoid this behavior use `_.forIn` - * or `_.forOwn` for object iteration. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @alias each - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Array|Object} Returns `collection`. - * @see _.forEachRight - * @example - * - * _.forEach([1, 2], function(value) { - * console.log(value); - * }); - * // => Logs `1` then `2`. - * - * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) { - * console.log(key); - * }); - * // => Logs 'a' then 'b' (iteration order is not guaranteed). - */ - function forEach(collection, iteratee) { - var func = isArray(collection) ? arrayEach : baseEach; - return func(collection, getIteratee(iteratee, 3)); - } - - /** - * This method is like `_.forEach` except that it iterates over elements of - * `collection` from right to left. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @alias eachRight - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Array|Object} Returns `collection`. - * @see _.forEach - * @example - * - * _.forEachRight([1, 2], function(value) { - * console.log(value); - * }); - * // => Logs `2` then `1`. - */ - function forEachRight(collection, iteratee) { - var func = isArray(collection) ? arrayEachRight : baseEachRight; - return func(collection, getIteratee(iteratee, 3)); - } - - /** - * Creates an object composed of keys generated from the results of running - * each element of `collection` thru `iteratee`. The order of grouped values - * is determined by the order they occur in `collection`. The corresponding - * value of each key is an array of elements responsible for generating the - * key. The iteratee is invoked with one argument: (value). - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The iteratee to transform keys. - * @returns {Object} Returns the composed aggregate object. - * @example - * - * _.groupBy([6.1, 4.2, 6.3], Math.floor); - * // => { '4': [4.2], '6': [6.1, 6.3] } - * - * // The `_.property` iteratee shorthand. - * _.groupBy(['one', 'two', 'three'], 'length'); - * // => { '3': ['one', 'two'], '5': ['three'] } - */ - var groupBy = createAggregator(function(result, value, key) { - if (hasOwnProperty.call(result, key)) { - result[key].push(value); - } else { - baseAssignValue(result, key, [value]); - } - }); - - /** - * Checks if `value` is in `collection`. If `collection` is a string, it's - * checked for a substring of `value`, otherwise - * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * is used for equality comparisons. If `fromIndex` is negative, it's used as - * the offset from the end of `collection`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object|string} collection The collection to inspect. - * @param {*} value The value to search for. - * @param {number} [fromIndex=0] The index to search from. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`. - * @returns {boolean} Returns `true` if `value` is found, else `false`. - * @example - * - * _.includes([1, 2, 3], 1); - * // => true - * - * _.includes([1, 2, 3], 1, 2); - * // => false - * - * _.includes({ 'a': 1, 'b': 2 }, 1); - * // => true - * - * _.includes('abcd', 'bc'); - * // => true - */ - function includes(collection, value, fromIndex, guard) { - collection = isArrayLike(collection) ? collection : values(collection); - fromIndex = (fromIndex && !guard) ? toInteger(fromIndex) : 0; - - var length = collection.length; - if (fromIndex < 0) { - fromIndex = nativeMax(length + fromIndex, 0); - } - return isString(collection) - ? (fromIndex <= length && collection.indexOf(value, fromIndex) > -1) - : (!!length && baseIndexOf(collection, value, fromIndex) > -1); - } - - /** - * Invokes the method at `path` of each element in `collection`, returning - * an array of the results of each invoked method. Any additional arguments - * are provided to each invoked method. If `path` is a function, it's invoked - * for, and `this` bound to, each element in `collection`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Array|Function|string} path The path of the method to invoke or - * the function invoked per iteration. - * @param {...*} [args] The arguments to invoke each method with. - * @returns {Array} Returns the array of results. - * @example - * - * _.invokeMap([[5, 1, 7], [3, 2, 1]], 'sort'); - * // => [[1, 5, 7], [1, 2, 3]] - * - * _.invokeMap([123, 456], String.prototype.split, ''); - * // => [['1', '2', '3'], ['4', '5', '6']] - */ - var invokeMap = baseRest(function(collection, path, args) { - var index = -1, - isFunc = typeof path == 'function', - result = isArrayLike(collection) ? Array(collection.length) : []; - - baseEach(collection, function(value) { - result[++index] = isFunc ? apply(path, value, args) : baseInvoke(value, path, args); - }); - return result; - }); - - /** - * Creates an object composed of keys generated from the results of running - * each element of `collection` thru `iteratee`. The corresponding value of - * each key is the last element responsible for generating the key. The - * iteratee is invoked with one argument: (value). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The iteratee to transform keys. - * @returns {Object} Returns the composed aggregate object. - * @example - * - * var array = [ - * { 'dir': 'left', 'code': 97 }, - * { 'dir': 'right', 'code': 100 } - * ]; - * - * _.keyBy(array, function(o) { - * return String.fromCharCode(o.code); - * }); - * // => { 'a': { 'dir': 'left', 'code': 97 }, 'd': { 'dir': 'right', 'code': 100 } } - * - * _.keyBy(array, 'dir'); - * // => { 'left': { 'dir': 'left', 'code': 97 }, 'right': { 'dir': 'right', 'code': 100 } } - */ - var keyBy = createAggregator(function(result, value, key) { - baseAssignValue(result, key, value); - }); - - /** - * Creates an array of values by running each element in `collection` thru - * `iteratee`. The iteratee is invoked with three arguments: - * (value, index|key, collection). - * - * Many lodash methods are guarded to work as iteratees for methods like - * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`. - * - * The guarded methods are: - * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`, - * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`, - * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`, - * `template`, `trim`, `trimEnd`, `trimStart`, and `words` - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Array} Returns the new mapped array. - * @example - * - * function square(n) { - * return n * n; - * } - * - * _.map([4, 8], square); - * // => [16, 64] - * - * _.map({ 'a': 4, 'b': 8 }, square); - * // => [16, 64] (iteration order is not guaranteed) - * - * var users = [ - * { 'user': 'barney' }, - * { 'user': 'fred' } - * ]; - * - * // The `_.property` iteratee shorthand. - * _.map(users, 'user'); - * // => ['barney', 'fred'] - */ - function map(collection, iteratee) { - var func = isArray(collection) ? arrayMap : baseMap; - return func(collection, getIteratee(iteratee, 3)); - } - - /** - * This method is like `_.sortBy` except that it allows specifying the sort - * orders of the iteratees to sort by. If `orders` is unspecified, all values - * are sorted in ascending order. Otherwise, specify an order of "desc" for - * descending or "asc" for ascending sort order of corresponding values. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Array[]|Function[]|Object[]|string[]} [iteratees=[_.identity]] - * The iteratees to sort by. - * @param {string[]} [orders] The sort orders of `iteratees`. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`. - * @returns {Array} Returns the new sorted array. - * @example - * - * var users = [ - * { 'user': 'fred', 'age': 48 }, - * { 'user': 'barney', 'age': 34 }, - * { 'user': 'fred', 'age': 40 }, - * { 'user': 'barney', 'age': 36 } - * ]; - * - * // Sort by `user` in ascending order and by `age` in descending order. - * _.orderBy(users, ['user', 'age'], ['asc', 'desc']); - * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]] - */ - function orderBy(collection, iteratees, orders, guard) { - if (collection == null) { - return []; - } - if (!isArray(iteratees)) { - iteratees = iteratees == null ? [] : [iteratees]; - } - orders = guard ? undefined : orders; - if (!isArray(orders)) { - orders = orders == null ? [] : [orders]; - } - return baseOrderBy(collection, iteratees, orders); - } - - /** - * Creates an array of elements split into two groups, the first of which - * contains elements `predicate` returns truthy for, the second of which - * contains elements `predicate` returns falsey for. The predicate is - * invoked with one argument: (value). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the array of grouped elements. - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36, 'active': false }, - * { 'user': 'fred', 'age': 40, 'active': true }, - * { 'user': 'pebbles', 'age': 1, 'active': false } - * ]; - * - * _.partition(users, function(o) { return o.active; }); - * // => objects for [['fred'], ['barney', 'pebbles']] - * - * // The `_.matches` iteratee shorthand. - * _.partition(users, { 'age': 1, 'active': false }); - * // => objects for [['pebbles'], ['barney', 'fred']] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.partition(users, ['active', false]); - * // => objects for [['barney', 'pebbles'], ['fred']] - * - * // The `_.property` iteratee shorthand. - * _.partition(users, 'active'); - * // => objects for [['fred'], ['barney', 'pebbles']] - */ - var partition = createAggregator(function(result, value, key) { - result[key ? 0 : 1].push(value); - }, function() { return [[], []]; }); - - /** - * Reduces `collection` to a value which is the accumulated result of running - * each element in `collection` thru `iteratee`, where each successive - * invocation is supplied the return value of the previous. If `accumulator` - * is not given, the first element of `collection` is used as the initial - * value. The iteratee is invoked with four arguments: - * (accumulator, value, index|key, collection). - * - * Many lodash methods are guarded to work as iteratees for methods like - * `_.reduce`, `_.reduceRight`, and `_.transform`. - * - * The guarded methods are: - * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`, - * and `sortBy` - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @param {*} [accumulator] The initial value. - * @returns {*} Returns the accumulated value. - * @see _.reduceRight - * @example - * - * _.reduce([1, 2], function(sum, n) { - * return sum + n; - * }, 0); - * // => 3 - * - * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) { - * (result[value] || (result[value] = [])).push(key); - * return result; - * }, {}); - * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed) - */ - function reduce(collection, iteratee, accumulator) { - var func = isArray(collection) ? arrayReduce : baseReduce, - initAccum = arguments.length < 3; - - return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEach); - } - - /** - * This method is like `_.reduce` except that it iterates over elements of - * `collection` from right to left. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @param {*} [accumulator] The initial value. - * @returns {*} Returns the accumulated value. - * @see _.reduce - * @example - * - * var array = [[0, 1], [2, 3], [4, 5]]; - * - * _.reduceRight(array, function(flattened, other) { - * return flattened.concat(other); - * }, []); - * // => [4, 5, 2, 3, 0, 1] - */ - function reduceRight(collection, iteratee, accumulator) { - var func = isArray(collection) ? arrayReduceRight : baseReduce, - initAccum = arguments.length < 3; - - return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEachRight); - } - - /** - * The opposite of `_.filter`; this method returns the elements of `collection` - * that `predicate` does **not** return truthy for. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {Array} Returns the new filtered array. - * @see _.filter - * @example - * - * var users = [ - * { 'user': 'barney', 'age': 36, 'active': false }, - * { 'user': 'fred', 'age': 40, 'active': true } - * ]; - * - * _.reject(users, function(o) { return !o.active; }); - * // => objects for ['fred'] - * - * // The `_.matches` iteratee shorthand. - * _.reject(users, { 'age': 40, 'active': true }); - * // => objects for ['barney'] - * - * // The `_.matchesProperty` iteratee shorthand. - * _.reject(users, ['active', false]); - * // => objects for ['fred'] - * - * // The `_.property` iteratee shorthand. - * _.reject(users, 'active'); - * // => objects for ['barney'] - */ - function reject(collection, predicate) { - var func = isArray(collection) ? arrayFilter : baseFilter; - return func(collection, negate(getIteratee(predicate, 3))); - } - - /** - * Gets a random element from `collection`. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Collection - * @param {Array|Object} collection The collection to sample. - * @returns {*} Returns the random element. - * @example - * - * _.sample([1, 2, 3, 4]); - * // => 2 - */ - function sample(collection) { - var func = isArray(collection) ? arraySample : baseSample; - return func(collection); - } - - /** - * Gets `n` random elements at unique keys from `collection` up to the - * size of `collection`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Collection - * @param {Array|Object} collection The collection to sample. - * @param {number} [n=1] The number of elements to sample. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Array} Returns the random elements. - * @example - * - * _.sampleSize([1, 2, 3], 2); - * // => [3, 1] - * - * _.sampleSize([1, 2, 3], 4); - * // => [2, 3, 1] - */ - function sampleSize(collection, n, guard) { - if ((guard ? isIterateeCall(collection, n, guard) : n === undefined)) { - n = 1; - } else { - n = toInteger(n); - } - var func = isArray(collection) ? arraySampleSize : baseSampleSize; - return func(collection, n); - } - - /** - * Creates an array of shuffled values, using a version of the - * [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher-Yates_shuffle). - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to shuffle. - * @returns {Array} Returns the new shuffled array. - * @example - * - * _.shuffle([1, 2, 3, 4]); - * // => [4, 1, 3, 2] - */ - function shuffle(collection) { - var func = isArray(collection) ? arrayShuffle : baseShuffle; - return func(collection); - } - - /** - * Gets the size of `collection` by returning its length for array-like - * values or the number of own enumerable string keyed properties for objects. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object|string} collection The collection to inspect. - * @returns {number} Returns the collection size. - * @example - * - * _.size([1, 2, 3]); - * // => 3 - * - * _.size({ 'a': 1, 'b': 2 }); - * // => 2 - * - * _.size('pebbles'); - * // => 7 - */ - function size(collection) { - if (collection == null) { - return 0; - } - if (isArrayLike(collection)) { - return isString(collection) ? stringSize(collection) : collection.length; - } - var tag = getTag(collection); - if (tag == mapTag || tag == setTag) { - return collection.size; - } - return baseKeys(collection).length; - } - - /** - * Checks if `predicate` returns truthy for **any** element of `collection`. - * Iteration is stopped once `predicate` returns truthy. The predicate is - * invoked with three arguments: (value, index|key, collection). - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {boolean} Returns `true` if any element passes the predicate check, - * else `false`. - * @example - * - * _.some([null, 0, 'yes', false], Boolean); - * // => true - * - * var users = [ - * { 'user': 'barney', 'active': true }, - * { 'user': 'fred', 'active': false } - * ]; - * - * // The `_.matches` iteratee shorthand. - * _.some(users, { 'user': 'barney', 'active': false }); - * // => false - * - * // The `_.matchesProperty` iteratee shorthand. - * _.some(users, ['active', false]); - * // => true - * - * // The `_.property` iteratee shorthand. - * _.some(users, 'active'); - * // => true - */ - function some(collection, predicate, guard) { - var func = isArray(collection) ? arraySome : baseSome; - if (guard && isIterateeCall(collection, predicate, guard)) { - predicate = undefined; - } - return func(collection, getIteratee(predicate, 3)); - } - - /** - * Creates an array of elements, sorted in ascending order by the results of - * running each element in a collection thru each iteratee. This method - * performs a stable sort, that is, it preserves the original sort order of - * equal elements. The iteratees are invoked with one argument: (value). - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Collection - * @param {Array|Object} collection The collection to iterate over. - * @param {...(Function|Function[])} [iteratees=[_.identity]] - * The iteratees to sort by. - * @returns {Array} Returns the new sorted array. - * @example - * - * var users = [ - * { 'user': 'fred', 'age': 48 }, - * { 'user': 'barney', 'age': 36 }, - * { 'user': 'fred', 'age': 40 }, - * { 'user': 'barney', 'age': 34 } - * ]; - * - * _.sortBy(users, [function(o) { return o.user; }]); - * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]] - * - * _.sortBy(users, ['user', 'age']); - * // => objects for [['barney', 34], ['barney', 36], ['fred', 40], ['fred', 48]] - */ - var sortBy = baseRest(function(collection, iteratees) { - if (collection == null) { - return []; - } - var length = iteratees.length; - if (length > 1 && isIterateeCall(collection, iteratees[0], iteratees[1])) { - iteratees = []; - } else if (length > 2 && isIterateeCall(iteratees[0], iteratees[1], iteratees[2])) { - iteratees = [iteratees[0]]; - } - return baseOrderBy(collection, baseFlatten(iteratees, 1), []); - }); - - /*------------------------------------------------------------------------*/ - - /** - * Gets the timestamp of the number of milliseconds that have elapsed since - * the Unix epoch (1 January 1970 00:00:00 UTC). - * - * @static - * @memberOf _ - * @since 2.4.0 - * @category Date - * @returns {number} Returns the timestamp. - * @example - * - * _.defer(function(stamp) { - * console.log(_.now() - stamp); - * }, _.now()); - * // => Logs the number of milliseconds it took for the deferred invocation. - */ - var now = ctxNow || function() { - return root.Date.now(); - }; - - /*------------------------------------------------------------------------*/ - - /** - * The opposite of `_.before`; this method creates a function that invokes - * `func` once it's called `n` or more times. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {number} n The number of calls before `func` is invoked. - * @param {Function} func The function to restrict. - * @returns {Function} Returns the new restricted function. - * @example - * - * var saves = ['profile', 'settings']; - * - * var done = _.after(saves.length, function() { - * console.log('done saving!'); - * }); - * - * _.forEach(saves, function(type) { - * asyncSave({ 'type': type, 'complete': done }); - * }); - * // => Logs 'done saving!' after the two async saves have completed. - */ - function after(n, func) { - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - n = toInteger(n); - return function() { - if (--n < 1) { - return func.apply(this, arguments); - } - }; - } - - /** - * Creates a function that invokes `func`, with up to `n` arguments, - * ignoring any additional arguments. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Function - * @param {Function} func The function to cap arguments for. - * @param {number} [n=func.length] The arity cap. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Function} Returns the new capped function. - * @example - * - * _.map(['6', '8', '10'], _.ary(parseInt, 1)); - * // => [6, 8, 10] - */ - function ary(func, n, guard) { - n = guard ? undefined : n; - n = (func && n == null) ? func.length : n; - return createWrap(func, WRAP_ARY_FLAG, undefined, undefined, undefined, undefined, n); - } - - /** - * Creates a function that invokes `func`, with the `this` binding and arguments - * of the created function, while it's called less than `n` times. Subsequent - * calls to the created function return the result of the last `func` invocation. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Function - * @param {number} n The number of calls at which `func` is no longer invoked. - * @param {Function} func The function to restrict. - * @returns {Function} Returns the new restricted function. - * @example - * - * jQuery(element).on('click', _.before(5, addContactToList)); - * // => Allows adding up to 4 contacts to the list. - */ - function before(n, func) { - var result; - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - n = toInteger(n); - return function() { - if (--n > 0) { - result = func.apply(this, arguments); - } - if (n <= 1) { - func = undefined; - } - return result; - }; - } - - /** - * Creates a function that invokes `func` with the `this` binding of `thisArg` - * and `partials` prepended to the arguments it receives. - * - * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds, - * may be used as a placeholder for partially applied arguments. - * - * **Note:** Unlike native `Function#bind`, this method doesn't set the "length" - * property of bound functions. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to bind. - * @param {*} thisArg The `this` binding of `func`. - * @param {...*} [partials] The arguments to be partially applied. - * @returns {Function} Returns the new bound function. - * @example - * - * function greet(greeting, punctuation) { - * return greeting + ' ' + this.user + punctuation; - * } - * - * var object = { 'user': 'fred' }; - * - * var bound = _.bind(greet, object, 'hi'); - * bound('!'); - * // => 'hi fred!' - * - * // Bound with placeholders. - * var bound = _.bind(greet, object, _, '!'); - * bound('hi'); - * // => 'hi fred!' - */ - var bind = baseRest(function(func, thisArg, partials) { - var bitmask = WRAP_BIND_FLAG; - if (partials.length) { - var holders = replaceHolders(partials, getHolder(bind)); - bitmask |= WRAP_PARTIAL_FLAG; - } - return createWrap(func, bitmask, thisArg, partials, holders); - }); - - /** - * Creates a function that invokes the method at `object[key]` with `partials` - * prepended to the arguments it receives. - * - * This method differs from `_.bind` by allowing bound functions to reference - * methods that may be redefined or don't yet exist. See - * [Peter Michaux's article](http://peter.michaux.ca/articles/lazy-function-definition-pattern) - * for more details. - * - * The `_.bindKey.placeholder` value, which defaults to `_` in monolithic - * builds, may be used as a placeholder for partially applied arguments. - * - * @static - * @memberOf _ - * @since 0.10.0 - * @category Function - * @param {Object} object The object to invoke the method on. - * @param {string} key The key of the method. - * @param {...*} [partials] The arguments to be partially applied. - * @returns {Function} Returns the new bound function. - * @example - * - * var object = { - * 'user': 'fred', - * 'greet': function(greeting, punctuation) { - * return greeting + ' ' + this.user + punctuation; - * } - * }; - * - * var bound = _.bindKey(object, 'greet', 'hi'); - * bound('!'); - * // => 'hi fred!' - * - * object.greet = function(greeting, punctuation) { - * return greeting + 'ya ' + this.user + punctuation; - * }; - * - * bound('!'); - * // => 'hiya fred!' - * - * // Bound with placeholders. - * var bound = _.bindKey(object, 'greet', _, '!'); - * bound('hi'); - * // => 'hiya fred!' - */ - var bindKey = baseRest(function(object, key, partials) { - var bitmask = WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG; - if (partials.length) { - var holders = replaceHolders(partials, getHolder(bindKey)); - bitmask |= WRAP_PARTIAL_FLAG; - } - return createWrap(key, bitmask, object, partials, holders); - }); - - /** - * Creates a function that accepts arguments of `func` and either invokes - * `func` returning its result, if at least `arity` number of arguments have - * been provided, or returns a function that accepts the remaining `func` - * arguments, and so on. The arity of `func` may be specified if `func.length` - * is not sufficient. - * - * The `_.curry.placeholder` value, which defaults to `_` in monolithic builds, - * may be used as a placeholder for provided arguments. - * - * **Note:** This method doesn't set the "length" property of curried functions. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Function - * @param {Function} func The function to curry. - * @param {number} [arity=func.length] The arity of `func`. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Function} Returns the new curried function. - * @example - * - * var abc = function(a, b, c) { - * return [a, b, c]; - * }; - * - * var curried = _.curry(abc); - * - * curried(1)(2)(3); - * // => [1, 2, 3] - * - * curried(1, 2)(3); - * // => [1, 2, 3] - * - * curried(1, 2, 3); - * // => [1, 2, 3] - * - * // Curried with placeholders. - * curried(1)(_, 3)(2); - * // => [1, 2, 3] - */ - function curry(func, arity, guard) { - arity = guard ? undefined : arity; - var result = createWrap(func, WRAP_CURRY_FLAG, undefined, undefined, undefined, undefined, undefined, arity); - result.placeholder = curry.placeholder; - return result; - } - - /** - * This method is like `_.curry` except that arguments are applied to `func` - * in the manner of `_.partialRight` instead of `_.partial`. - * - * The `_.curryRight.placeholder` value, which defaults to `_` in monolithic - * builds, may be used as a placeholder for provided arguments. - * - * **Note:** This method doesn't set the "length" property of curried functions. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Function - * @param {Function} func The function to curry. - * @param {number} [arity=func.length] The arity of `func`. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Function} Returns the new curried function. - * @example - * - * var abc = function(a, b, c) { - * return [a, b, c]; - * }; - * - * var curried = _.curryRight(abc); - * - * curried(3)(2)(1); - * // => [1, 2, 3] - * - * curried(2, 3)(1); - * // => [1, 2, 3] - * - * curried(1, 2, 3); - * // => [1, 2, 3] - * - * // Curried with placeholders. - * curried(3)(1, _)(2); - * // => [1, 2, 3] - */ - function curryRight(func, arity, guard) { - arity = guard ? undefined : arity; - var result = createWrap(func, WRAP_CURRY_RIGHT_FLAG, undefined, undefined, undefined, undefined, undefined, arity); - result.placeholder = curryRight.placeholder; - return result; - } - - /** - * Creates a debounced function that delays invoking `func` until after `wait` - * milliseconds have elapsed since the last time the debounced function was - * invoked. The debounced function comes with a `cancel` method to cancel - * delayed `func` invocations and a `flush` method to immediately invoke them. - * Provide `options` to indicate whether `func` should be invoked on the - * leading and/or trailing edge of the `wait` timeout. The `func` is invoked - * with the last arguments provided to the debounced function. Subsequent - * calls to the debounced function return the result of the last `func` - * invocation. - * - * **Note:** If `leading` and `trailing` options are `true`, `func` is - * invoked on the trailing edge of the timeout only if the debounced function - * is invoked more than once during the `wait` timeout. - * - * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred - * until to the next tick, similar to `setTimeout` with a timeout of `0`. - * - * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/) - * for details over the differences between `_.debounce` and `_.throttle`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to debounce. - * @param {number} [wait=0] The number of milliseconds to delay. - * @param {Object} [options={}] The options object. - * @param {boolean} [options.leading=false] - * Specify invoking on the leading edge of the timeout. - * @param {number} [options.maxWait] - * The maximum time `func` is allowed to be delayed before it's invoked. - * @param {boolean} [options.trailing=true] - * Specify invoking on the trailing edge of the timeout. - * @returns {Function} Returns the new debounced function. - * @example - * - * // Avoid costly calculations while the window size is in flux. - * jQuery(window).on('resize', _.debounce(calculateLayout, 150)); - * - * // Invoke `sendMail` when clicked, debouncing subsequent calls. - * jQuery(element).on('click', _.debounce(sendMail, 300, { - * 'leading': true, - * 'trailing': false - * })); - * - * // Ensure `batchLog` is invoked once after 1 second of debounced calls. - * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 }); - * var source = new EventSource('/stream'); - * jQuery(source).on('message', debounced); - * - * // Cancel the trailing debounced invocation. - * jQuery(window).on('popstate', debounced.cancel); - */ - function debounce(func, wait, options) { - var lastArgs, - lastThis, - maxWait, - result, - timerId, - lastCallTime, - lastInvokeTime = 0, - leading = false, - maxing = false, - trailing = true; - - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - wait = toNumber(wait) || 0; - if (isObject(options)) { - leading = !!options.leading; - maxing = 'maxWait' in options; - maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait; - trailing = 'trailing' in options ? !!options.trailing : trailing; - } - - function invokeFunc(time) { - var args = lastArgs, - thisArg = lastThis; - - lastArgs = lastThis = undefined; - lastInvokeTime = time; - result = func.apply(thisArg, args); - return result; - } - - function leadingEdge(time) { - // Reset any `maxWait` timer. - lastInvokeTime = time; - // Start the timer for the trailing edge. - timerId = setTimeout(timerExpired, wait); - // Invoke the leading edge. - return leading ? invokeFunc(time) : result; - } - - function remainingWait(time) { - var timeSinceLastCall = time - lastCallTime, - timeSinceLastInvoke = time - lastInvokeTime, - timeWaiting = wait - timeSinceLastCall; - - return maxing - ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) - : timeWaiting; - } - - function shouldInvoke(time) { - var timeSinceLastCall = time - lastCallTime, - timeSinceLastInvoke = time - lastInvokeTime; - - // Either this is the first call, activity has stopped and we're at the - // trailing edge, the system time has gone backwards and we're treating - // it as the trailing edge, or we've hit the `maxWait` limit. - return (lastCallTime === undefined || (timeSinceLastCall >= wait) || - (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait)); - } - - function timerExpired() { - var time = now(); - if (shouldInvoke(time)) { - return trailingEdge(time); - } - // Restart the timer. - timerId = setTimeout(timerExpired, remainingWait(time)); - } - - function trailingEdge(time) { - timerId = undefined; - - // Only invoke if we have `lastArgs` which means `func` has been - // debounced at least once. - if (trailing && lastArgs) { - return invokeFunc(time); - } - lastArgs = lastThis = undefined; - return result; - } - - function cancel() { - if (timerId !== undefined) { - clearTimeout(timerId); - } - lastInvokeTime = 0; - lastArgs = lastCallTime = lastThis = timerId = undefined; - } - - function flush() { - return timerId === undefined ? result : trailingEdge(now()); - } - - function debounced() { - var time = now(), - isInvoking = shouldInvoke(time); - - lastArgs = arguments; - lastThis = this; - lastCallTime = time; - - if (isInvoking) { - if (timerId === undefined) { - return leadingEdge(lastCallTime); - } - if (maxing) { - // Handle invocations in a tight loop. - timerId = setTimeout(timerExpired, wait); - return invokeFunc(lastCallTime); - } - } - if (timerId === undefined) { - timerId = setTimeout(timerExpired, wait); - } - return result; - } - debounced.cancel = cancel; - debounced.flush = flush; - return debounced; - } - - /** - * Defers invoking the `func` until the current call stack has cleared. Any - * additional arguments are provided to `func` when it's invoked. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to defer. - * @param {...*} [args] The arguments to invoke `func` with. - * @returns {number} Returns the timer id. - * @example - * - * _.defer(function(text) { - * console.log(text); - * }, 'deferred'); - * // => Logs 'deferred' after one millisecond. - */ - var defer = baseRest(function(func, args) { - return baseDelay(func, 1, args); - }); - - /** - * Invokes `func` after `wait` milliseconds. Any additional arguments are - * provided to `func` when it's invoked. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to delay. - * @param {number} wait The number of milliseconds to delay invocation. - * @param {...*} [args] The arguments to invoke `func` with. - * @returns {number} Returns the timer id. - * @example - * - * _.delay(function(text) { - * console.log(text); - * }, 1000, 'later'); - * // => Logs 'later' after one second. - */ - var delay = baseRest(function(func, wait, args) { - return baseDelay(func, toNumber(wait) || 0, args); - }); - - /** - * Creates a function that invokes `func` with arguments reversed. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Function - * @param {Function} func The function to flip arguments for. - * @returns {Function} Returns the new flipped function. - * @example - * - * var flipped = _.flip(function() { - * return _.toArray(arguments); - * }); - * - * flipped('a', 'b', 'c', 'd'); - * // => ['d', 'c', 'b', 'a'] - */ - function flip(func) { - return createWrap(func, WRAP_FLIP_FLAG); - } - - /** - * Creates a function that memoizes the result of `func`. If `resolver` is - * provided, it determines the cache key for storing the result based on the - * arguments provided to the memoized function. By default, the first argument - * provided to the memoized function is used as the map cache key. The `func` - * is invoked with the `this` binding of the memoized function. - * - * **Note:** The cache is exposed as the `cache` property on the memoized - * function. Its creation may be customized by replacing the `_.memoize.Cache` - * constructor with one whose instances implement the - * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object) - * method interface of `clear`, `delete`, `get`, `has`, and `set`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to have its output memoized. - * @param {Function} [resolver] The function to resolve the cache key. - * @returns {Function} Returns the new memoized function. - * @example - * - * var object = { 'a': 1, 'b': 2 }; - * var other = { 'c': 3, 'd': 4 }; - * - * var values = _.memoize(_.values); - * values(object); - * // => [1, 2] - * - * values(other); - * // => [3, 4] - * - * object.a = 2; - * values(object); - * // => [1, 2] - * - * // Modify the result cache. - * values.cache.set(object, ['a', 'b']); - * values(object); - * // => ['a', 'b'] - * - * // Replace `_.memoize.Cache`. - * _.memoize.Cache = WeakMap; - */ - function memoize(func, resolver) { - if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) { - throw new TypeError(FUNC_ERROR_TEXT); - } - var memoized = function() { - var args = arguments, - key = resolver ? resolver.apply(this, args) : args[0], - cache = memoized.cache; - - if (cache.has(key)) { - return cache.get(key); - } - var result = func.apply(this, args); - memoized.cache = cache.set(key, result) || cache; - return result; - }; - memoized.cache = new (memoize.Cache || MapCache); - return memoized; - } - - // Expose `MapCache`. - memoize.Cache = MapCache; - - /** - * Creates a function that negates the result of the predicate `func`. The - * `func` predicate is invoked with the `this` binding and arguments of the - * created function. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Function - * @param {Function} predicate The predicate to negate. - * @returns {Function} Returns the new negated function. - * @example - * - * function isEven(n) { - * return n % 2 == 0; - * } - * - * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven)); - * // => [1, 3, 5] - */ - function negate(predicate) { - if (typeof predicate != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - return function() { - var args = arguments; - switch (args.length) { - case 0: return !predicate.call(this); - case 1: return !predicate.call(this, args[0]); - case 2: return !predicate.call(this, args[0], args[1]); - case 3: return !predicate.call(this, args[0], args[1], args[2]); - } - return !predicate.apply(this, args); - }; - } - - /** - * Creates a function that is restricted to invoking `func` once. Repeat calls - * to the function return the value of the first invocation. The `func` is - * invoked with the `this` binding and arguments of the created function. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to restrict. - * @returns {Function} Returns the new restricted function. - * @example - * - * var initialize = _.once(createApplication); - * initialize(); - * initialize(); - * // => `createApplication` is invoked once - */ - function once(func) { - return before(2, func); - } - - /** - * Creates a function that invokes `func` with its arguments transformed. - * - * @static - * @since 4.0.0 - * @memberOf _ - * @category Function - * @param {Function} func The function to wrap. - * @param {...(Function|Function[])} [transforms=[_.identity]] - * The argument transforms. - * @returns {Function} Returns the new function. - * @example - * - * function doubled(n) { - * return n * 2; - * } - * - * function square(n) { - * return n * n; - * } - * - * var func = _.overArgs(function(x, y) { - * return [x, y]; - * }, [square, doubled]); - * - * func(9, 3); - * // => [81, 6] - * - * func(10, 5); - * // => [100, 10] - */ - var overArgs = castRest(function(func, transforms) { - transforms = (transforms.length == 1 && isArray(transforms[0])) - ? arrayMap(transforms[0], baseUnary(getIteratee())) - : arrayMap(baseFlatten(transforms, 1), baseUnary(getIteratee())); - - var funcsLength = transforms.length; - return baseRest(function(args) { - var index = -1, - length = nativeMin(args.length, funcsLength); - - while (++index < length) { - args[index] = transforms[index].call(this, args[index]); - } - return apply(func, this, args); - }); - }); - - /** - * Creates a function that invokes `func` with `partials` prepended to the - * arguments it receives. This method is like `_.bind` except it does **not** - * alter the `this` binding. - * - * The `_.partial.placeholder` value, which defaults to `_` in monolithic - * builds, may be used as a placeholder for partially applied arguments. - * - * **Note:** This method doesn't set the "length" property of partially - * applied functions. - * - * @static - * @memberOf _ - * @since 0.2.0 - * @category Function - * @param {Function} func The function to partially apply arguments to. - * @param {...*} [partials] The arguments to be partially applied. - * @returns {Function} Returns the new partially applied function. - * @example - * - * function greet(greeting, name) { - * return greeting + ' ' + name; - * } - * - * var sayHelloTo = _.partial(greet, 'hello'); - * sayHelloTo('fred'); - * // => 'hello fred' - * - * // Partially applied with placeholders. - * var greetFred = _.partial(greet, _, 'fred'); - * greetFred('hi'); - * // => 'hi fred' - */ - var partial = baseRest(function(func, partials) { - var holders = replaceHolders(partials, getHolder(partial)); - return createWrap(func, WRAP_PARTIAL_FLAG, undefined, partials, holders); - }); - - /** - * This method is like `_.partial` except that partially applied arguments - * are appended to the arguments it receives. - * - * The `_.partialRight.placeholder` value, which defaults to `_` in monolithic - * builds, may be used as a placeholder for partially applied arguments. - * - * **Note:** This method doesn't set the "length" property of partially - * applied functions. - * - * @static - * @memberOf _ - * @since 1.0.0 - * @category Function - * @param {Function} func The function to partially apply arguments to. - * @param {...*} [partials] The arguments to be partially applied. - * @returns {Function} Returns the new partially applied function. - * @example - * - * function greet(greeting, name) { - * return greeting + ' ' + name; - * } - * - * var greetFred = _.partialRight(greet, 'fred'); - * greetFred('hi'); - * // => 'hi fred' - * - * // Partially applied with placeholders. - * var sayHelloTo = _.partialRight(greet, 'hello', _); - * sayHelloTo('fred'); - * // => 'hello fred' - */ - var partialRight = baseRest(function(func, partials) { - var holders = replaceHolders(partials, getHolder(partialRight)); - return createWrap(func, WRAP_PARTIAL_RIGHT_FLAG, undefined, partials, holders); - }); - - /** - * Creates a function that invokes `func` with arguments arranged according - * to the specified `indexes` where the argument value at the first index is - * provided as the first argument, the argument value at the second index is - * provided as the second argument, and so on. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Function - * @param {Function} func The function to rearrange arguments for. - * @param {...(number|number[])} indexes The arranged argument indexes. - * @returns {Function} Returns the new function. - * @example - * - * var rearged = _.rearg(function(a, b, c) { - * return [a, b, c]; - * }, [2, 0, 1]); - * - * rearged('b', 'c', 'a') - * // => ['a', 'b', 'c'] - */ - var rearg = flatRest(function(func, indexes) { - return createWrap(func, WRAP_REARG_FLAG, undefined, undefined, undefined, indexes); - }); - - /** - * Creates a function that invokes `func` with the `this` binding of the - * created function and arguments from `start` and beyond provided as - * an array. - * - * **Note:** This method is based on the - * [rest parameter](https://mdn.io/rest_parameters). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Function - * @param {Function} func The function to apply a rest parameter to. - * @param {number} [start=func.length-1] The start position of the rest parameter. - * @returns {Function} Returns the new function. - * @example - * - * var say = _.rest(function(what, names) { - * return what + ' ' + _.initial(names).join(', ') + - * (_.size(names) > 1 ? ', & ' : '') + _.last(names); - * }); - * - * say('hello', 'fred', 'barney', 'pebbles'); - * // => 'hello fred, barney, & pebbles' - */ - function rest(func, start) { - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - start = start === undefined ? start : toInteger(start); - return baseRest(func, start); - } - - /** - * Creates a function that invokes `func` with the `this` binding of the - * create function and an array of arguments much like - * [`Function#apply`](http://www.ecma-international.org/ecma-262/7.0/#sec-function.prototype.apply). - * - * **Note:** This method is based on the - * [spread operator](https://mdn.io/spread_operator). - * - * @static - * @memberOf _ - * @since 3.2.0 - * @category Function - * @param {Function} func The function to spread arguments over. - * @param {number} [start=0] The start position of the spread. - * @returns {Function} Returns the new function. - * @example - * - * var say = _.spread(function(who, what) { - * return who + ' says ' + what; - * }); - * - * say(['fred', 'hello']); - * // => 'fred says hello' - * - * var numbers = Promise.all([ - * Promise.resolve(40), - * Promise.resolve(36) - * ]); - * - * numbers.then(_.spread(function(x, y) { - * return x + y; - * })); - * // => a Promise of 76 - */ - function spread(func, start) { - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - start = start == null ? 0 : nativeMax(toInteger(start), 0); - return baseRest(function(args) { - var array = args[start], - otherArgs = castSlice(args, 0, start); - - if (array) { - arrayPush(otherArgs, array); - } - return apply(func, this, otherArgs); - }); - } - - /** - * Creates a throttled function that only invokes `func` at most once per - * every `wait` milliseconds. The throttled function comes with a `cancel` - * method to cancel delayed `func` invocations and a `flush` method to - * immediately invoke them. Provide `options` to indicate whether `func` - * should be invoked on the leading and/or trailing edge of the `wait` - * timeout. The `func` is invoked with the last arguments provided to the - * throttled function. Subsequent calls to the throttled function return the - * result of the last `func` invocation. - * - * **Note:** If `leading` and `trailing` options are `true`, `func` is - * invoked on the trailing edge of the timeout only if the throttled function - * is invoked more than once during the `wait` timeout. - * - * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred - * until to the next tick, similar to `setTimeout` with a timeout of `0`. - * - * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/) - * for details over the differences between `_.throttle` and `_.debounce`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {Function} func The function to throttle. - * @param {number} [wait=0] The number of milliseconds to throttle invocations to. - * @param {Object} [options={}] The options object. - * @param {boolean} [options.leading=true] - * Specify invoking on the leading edge of the timeout. - * @param {boolean} [options.trailing=true] - * Specify invoking on the trailing edge of the timeout. - * @returns {Function} Returns the new throttled function. - * @example - * - * // Avoid excessively updating the position while scrolling. - * jQuery(window).on('scroll', _.throttle(updatePosition, 100)); - * - * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes. - * var throttled = _.throttle(renewToken, 300000, { 'trailing': false }); - * jQuery(element).on('click', throttled); - * - * // Cancel the trailing throttled invocation. - * jQuery(window).on('popstate', throttled.cancel); - */ - function throttle(func, wait, options) { - var leading = true, - trailing = true; - - if (typeof func != 'function') { - throw new TypeError(FUNC_ERROR_TEXT); - } - if (isObject(options)) { - leading = 'leading' in options ? !!options.leading : leading; - trailing = 'trailing' in options ? !!options.trailing : trailing; - } - return debounce(func, wait, { - 'leading': leading, - 'maxWait': wait, - 'trailing': trailing - }); - } - - /** - * Creates a function that accepts up to one argument, ignoring any - * additional arguments. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Function - * @param {Function} func The function to cap arguments for. - * @returns {Function} Returns the new capped function. - * @example - * - * _.map(['6', '8', '10'], _.unary(parseInt)); - * // => [6, 8, 10] - */ - function unary(func) { - return ary(func, 1); - } - - /** - * Creates a function that provides `value` to `wrapper` as its first - * argument. Any additional arguments provided to the function are appended - * to those provided to the `wrapper`. The wrapper is invoked with the `this` - * binding of the created function. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Function - * @param {*} value The value to wrap. - * @param {Function} [wrapper=identity] The wrapper function. - * @returns {Function} Returns the new function. - * @example - * - * var p = _.wrap(_.escape, function(func, text) { - * return '

' + func(text) + '

'; - * }); - * - * p('fred, barney, & pebbles'); - * // => '

fred, barney, & pebbles

' - */ - function wrap(value, wrapper) { - return partial(castFunction(wrapper), value); - } - - /*------------------------------------------------------------------------*/ - - /** - * Casts `value` as an array if it's not one. - * - * @static - * @memberOf _ - * @since 4.4.0 - * @category Lang - * @param {*} value The value to inspect. - * @returns {Array} Returns the cast array. - * @example - * - * _.castArray(1); - * // => [1] - * - * _.castArray({ 'a': 1 }); - * // => [{ 'a': 1 }] - * - * _.castArray('abc'); - * // => ['abc'] - * - * _.castArray(null); - * // => [null] - * - * _.castArray(undefined); - * // => [undefined] - * - * _.castArray(); - * // => [] - * - * var array = [1, 2, 3]; - * console.log(_.castArray(array) === array); - * // => true - */ - function castArray() { - if (!arguments.length) { - return []; - } - var value = arguments[0]; - return isArray(value) ? value : [value]; - } - - /** - * Creates a shallow clone of `value`. - * - * **Note:** This method is loosely based on the - * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm) - * and supports cloning arrays, array buffers, booleans, date objects, maps, - * numbers, `Object` objects, regexes, sets, strings, symbols, and typed - * arrays. The own enumerable properties of `arguments` objects are cloned - * as plain objects. An empty object is returned for uncloneable values such - * as error objects, functions, DOM nodes, and WeakMaps. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to clone. - * @returns {*} Returns the cloned value. - * @see _.cloneDeep - * @example - * - * var objects = [{ 'a': 1 }, { 'b': 2 }]; - * - * var shallow = _.clone(objects); - * console.log(shallow[0] === objects[0]); - * // => true - */ - function clone(value) { - return baseClone(value, CLONE_SYMBOLS_FLAG); - } - - /** - * This method is like `_.clone` except that it accepts `customizer` which - * is invoked to produce the cloned value. If `customizer` returns `undefined`, - * cloning is handled by the method instead. The `customizer` is invoked with - * up to four arguments; (value [, index|key, object, stack]). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to clone. - * @param {Function} [customizer] The function to customize cloning. - * @returns {*} Returns the cloned value. - * @see _.cloneDeepWith - * @example - * - * function customizer(value) { - * if (_.isElement(value)) { - * return value.cloneNode(false); - * } - * } - * - * var el = _.cloneWith(document.body, customizer); - * - * console.log(el === document.body); - * // => false - * console.log(el.nodeName); - * // => 'BODY' - * console.log(el.childNodes.length); - * // => 0 - */ - function cloneWith(value, customizer) { - customizer = typeof customizer == 'function' ? customizer : undefined; - return baseClone(value, CLONE_SYMBOLS_FLAG, customizer); - } - - /** - * This method is like `_.clone` except that it recursively clones `value`. - * - * @static - * @memberOf _ - * @since 1.0.0 - * @category Lang - * @param {*} value The value to recursively clone. - * @returns {*} Returns the deep cloned value. - * @see _.clone - * @example - * - * var objects = [{ 'a': 1 }, { 'b': 2 }]; - * - * var deep = _.cloneDeep(objects); - * console.log(deep[0] === objects[0]); - * // => false - */ - function cloneDeep(value) { - return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG); - } - - /** - * This method is like `_.cloneWith` except that it recursively clones `value`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to recursively clone. - * @param {Function} [customizer] The function to customize cloning. - * @returns {*} Returns the deep cloned value. - * @see _.cloneWith - * @example - * - * function customizer(value) { - * if (_.isElement(value)) { - * return value.cloneNode(true); - * } - * } - * - * var el = _.cloneDeepWith(document.body, customizer); - * - * console.log(el === document.body); - * // => false - * console.log(el.nodeName); - * // => 'BODY' - * console.log(el.childNodes.length); - * // => 20 - */ - function cloneDeepWith(value, customizer) { - customizer = typeof customizer == 'function' ? customizer : undefined; - return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG, customizer); - } - - /** - * Checks if `object` conforms to `source` by invoking the predicate - * properties of `source` with the corresponding property values of `object`. - * - * **Note:** This method is equivalent to `_.conforms` when `source` is - * partially applied. - * - * @static - * @memberOf _ - * @since 4.14.0 - * @category Lang - * @param {Object} object The object to inspect. - * @param {Object} source The object of property predicates to conform to. - * @returns {boolean} Returns `true` if `object` conforms, else `false`. - * @example - * - * var object = { 'a': 1, 'b': 2 }; - * - * _.conformsTo(object, { 'b': function(n) { return n > 1; } }); - * // => true - * - * _.conformsTo(object, { 'b': function(n) { return n > 2; } }); - * // => false - */ - function conformsTo(object, source) { - return source == null || baseConformsTo(object, source, keys(source)); - } - - /** - * Performs a - * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) - * comparison between two values to determine if they are equivalent. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - * @example - * - * var object = { 'a': 1 }; - * var other = { 'a': 1 }; - * - * _.eq(object, object); - * // => true - * - * _.eq(object, other); - * // => false - * - * _.eq('a', 'a'); - * // => true - * - * _.eq('a', Object('a')); - * // => false - * - * _.eq(NaN, NaN); - * // => true - */ - function eq(value, other) { - return value === other || (value !== value && other !== other); - } - - /** - * Checks if `value` is greater than `other`. - * - * @static - * @memberOf _ - * @since 3.9.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if `value` is greater than `other`, - * else `false`. - * @see _.lt - * @example - * - * _.gt(3, 1); - * // => true - * - * _.gt(3, 3); - * // => false - * - * _.gt(1, 3); - * // => false - */ - var gt = createRelationalOperation(baseGt); - - /** - * Checks if `value` is greater than or equal to `other`. - * - * @static - * @memberOf _ - * @since 3.9.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if `value` is greater than or equal to - * `other`, else `false`. - * @see _.lte - * @example - * - * _.gte(3, 1); - * // => true - * - * _.gte(3, 3); - * // => true - * - * _.gte(1, 3); - * // => false - */ - var gte = createRelationalOperation(function(value, other) { - return value >= other; - }); - - /** - * Checks if `value` is likely an `arguments` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an `arguments` object, - * else `false`. - * @example - * - * _.isArguments(function() { return arguments; }()); - * // => true - * - * _.isArguments([1, 2, 3]); - * // => false - */ - var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) { - return isObjectLike(value) && hasOwnProperty.call(value, 'callee') && - !propertyIsEnumerable.call(value, 'callee'); - }; - - /** - * Checks if `value` is classified as an `Array` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an array, else `false`. - * @example - * - * _.isArray([1, 2, 3]); - * // => true - * - * _.isArray(document.body.children); - * // => false - * - * _.isArray('abc'); - * // => false - * - * _.isArray(_.noop); - * // => false - */ - var isArray = Array.isArray; - - /** - * Checks if `value` is classified as an `ArrayBuffer` object. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`. - * @example - * - * _.isArrayBuffer(new ArrayBuffer(2)); - * // => true - * - * _.isArrayBuffer(new Array(2)); - * // => false - */ - var isArrayBuffer = nodeIsArrayBuffer ? baseUnary(nodeIsArrayBuffer) : baseIsArrayBuffer; - - /** - * Checks if `value` is array-like. A value is considered array-like if it's - * not a function and has a `value.length` that's an integer greater than or - * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is array-like, else `false`. - * @example - * - * _.isArrayLike([1, 2, 3]); - * // => true - * - * _.isArrayLike(document.body.children); - * // => true - * - * _.isArrayLike('abc'); - * // => true - * - * _.isArrayLike(_.noop); - * // => false - */ - function isArrayLike(value) { - return value != null && isLength(value.length) && !isFunction(value); - } - - /** - * This method is like `_.isArrayLike` except that it also checks if `value` - * is an object. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an array-like object, - * else `false`. - * @example - * - * _.isArrayLikeObject([1, 2, 3]); - * // => true - * - * _.isArrayLikeObject(document.body.children); - * // => true - * - * _.isArrayLikeObject('abc'); - * // => false - * - * _.isArrayLikeObject(_.noop); - * // => false - */ - function isArrayLikeObject(value) { - return isObjectLike(value) && isArrayLike(value); - } - - /** - * Checks if `value` is classified as a boolean primitive or object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a boolean, else `false`. - * @example - * - * _.isBoolean(false); - * // => true - * - * _.isBoolean(null); - * // => false - */ - function isBoolean(value) { - return value === true || value === false || - (isObjectLike(value) && baseGetTag(value) == boolTag); - } - - /** - * Checks if `value` is a buffer. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a buffer, else `false`. - * @example - * - * _.isBuffer(new Buffer(2)); - * // => true - * - * _.isBuffer(new Uint8Array(2)); - * // => false - */ - var isBuffer = nativeIsBuffer || stubFalse; - - /** - * Checks if `value` is classified as a `Date` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a date object, else `false`. - * @example - * - * _.isDate(new Date); - * // => true - * - * _.isDate('Mon April 23 2012'); - * // => false - */ - var isDate = nodeIsDate ? baseUnary(nodeIsDate) : baseIsDate; - - /** - * Checks if `value` is likely a DOM element. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a DOM element, else `false`. - * @example - * - * _.isElement(document.body); - * // => true - * - * _.isElement(''); - * // => false - */ - function isElement(value) { - return isObjectLike(value) && value.nodeType === 1 && !isPlainObject(value); - } - - /** - * Checks if `value` is an empty object, collection, map, or set. - * - * Objects are considered empty if they have no own enumerable string keyed - * properties. - * - * Array-like values such as `arguments` objects, arrays, buffers, strings, or - * jQuery-like collections are considered empty if they have a `length` of `0`. - * Similarly, maps and sets are considered empty if they have a `size` of `0`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is empty, else `false`. - * @example - * - * _.isEmpty(null); - * // => true - * - * _.isEmpty(true); - * // => true - * - * _.isEmpty(1); - * // => true - * - * _.isEmpty([1, 2, 3]); - * // => false - * - * _.isEmpty({ 'a': 1 }); - * // => false - */ - function isEmpty(value) { - if (value == null) { - return true; - } - if (isArrayLike(value) && - (isArray(value) || typeof value == 'string' || typeof value.splice == 'function' || - isBuffer(value) || isTypedArray(value) || isArguments(value))) { - return !value.length; - } - var tag = getTag(value); - if (tag == mapTag || tag == setTag) { - return !value.size; - } - if (isPrototype(value)) { - return !baseKeys(value).length; - } - for (var key in value) { - if (hasOwnProperty.call(value, key)) { - return false; - } - } - return true; - } - - /** - * Performs a deep comparison between two values to determine if they are - * equivalent. - * - * **Note:** This method supports comparing arrays, array buffers, booleans, - * date objects, error objects, maps, numbers, `Object` objects, regexes, - * sets, strings, symbols, and typed arrays. `Object` objects are compared - * by their own, not inherited, enumerable properties. Functions and DOM - * nodes are compared by strict equality, i.e. `===`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - * @example - * - * var object = { 'a': 1 }; - * var other = { 'a': 1 }; - * - * _.isEqual(object, other); - * // => true - * - * object === other; - * // => false - */ - function isEqual(value, other) { - return baseIsEqual(value, other); - } - - /** - * This method is like `_.isEqual` except that it accepts `customizer` which - * is invoked to compare values. If `customizer` returns `undefined`, comparisons - * are handled by the method instead. The `customizer` is invoked with up to - * six arguments: (objValue, othValue [, index|key, object, other, stack]). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @param {Function} [customizer] The function to customize comparisons. - * @returns {boolean} Returns `true` if the values are equivalent, else `false`. - * @example - * - * function isGreeting(value) { - * return /^h(?:i|ello)$/.test(value); - * } - * - * function customizer(objValue, othValue) { - * if (isGreeting(objValue) && isGreeting(othValue)) { - * return true; - * } - * } - * - * var array = ['hello', 'goodbye']; - * var other = ['hi', 'goodbye']; - * - * _.isEqualWith(array, other, customizer); - * // => true - */ - function isEqualWith(value, other, customizer) { - customizer = typeof customizer == 'function' ? customizer : undefined; - var result = customizer ? customizer(value, other) : undefined; - return result === undefined ? baseIsEqual(value, other, undefined, customizer) : !!result; - } - - /** - * Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`, - * `SyntaxError`, `TypeError`, or `URIError` object. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an error object, else `false`. - * @example - * - * _.isError(new Error); - * // => true - * - * _.isError(Error); - * // => false - */ - function isError(value) { - if (!isObjectLike(value)) { - return false; - } - var tag = baseGetTag(value); - return tag == errorTag || tag == domExcTag || - (typeof value.message == 'string' && typeof value.name == 'string' && !isPlainObject(value)); - } - - /** - * Checks if `value` is a finite primitive number. - * - * **Note:** This method is based on - * [`Number.isFinite`](https://mdn.io/Number/isFinite). - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a finite number, else `false`. - * @example - * - * _.isFinite(3); - * // => true - * - * _.isFinite(Number.MIN_VALUE); - * // => true - * - * _.isFinite(Infinity); - * // => false - * - * _.isFinite('3'); - * // => false - */ - function isFinite(value) { - return typeof value == 'number' && nativeIsFinite(value); - } - - /** - * Checks if `value` is classified as a `Function` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a function, else `false`. - * @example - * - * _.isFunction(_); - * // => true - * - * _.isFunction(/abc/); - * // => false - */ - function isFunction(value) { - if (!isObject(value)) { - return false; - } - // The use of `Object#toString` avoids issues with the `typeof` operator - // in Safari 9 which returns 'object' for typed arrays and other constructors. - var tag = baseGetTag(value); - return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; - } - - /** - * Checks if `value` is an integer. - * - * **Note:** This method is based on - * [`Number.isInteger`](https://mdn.io/Number/isInteger). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an integer, else `false`. - * @example - * - * _.isInteger(3); - * // => true - * - * _.isInteger(Number.MIN_VALUE); - * // => false - * - * _.isInteger(Infinity); - * // => false - * - * _.isInteger('3'); - * // => false - */ - function isInteger(value) { - return typeof value == 'number' && value == toInteger(value); - } - - /** - * Checks if `value` is a valid array-like length. - * - * **Note:** This method is loosely based on - * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a valid length, else `false`. - * @example - * - * _.isLength(3); - * // => true - * - * _.isLength(Number.MIN_VALUE); - * // => false - * - * _.isLength(Infinity); - * // => false - * - * _.isLength('3'); - * // => false - */ - function isLength(value) { - return typeof value == 'number' && - value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; - } - - /** - * Checks if `value` is the - * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types) - * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is an object, else `false`. - * @example - * - * _.isObject({}); - * // => true - * - * _.isObject([1, 2, 3]); - * // => true - * - * _.isObject(_.noop); - * // => true - * - * _.isObject(null); - * // => false - */ - function isObject(value) { - var type = typeof value; - return value != null && (type == 'object' || type == 'function'); - } - - /** - * Checks if `value` is object-like. A value is object-like if it's not `null` - * and has a `typeof` result of "object". - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is object-like, else `false`. - * @example - * - * _.isObjectLike({}); - * // => true - * - * _.isObjectLike([1, 2, 3]); - * // => true - * - * _.isObjectLike(_.noop); - * // => false - * - * _.isObjectLike(null); - * // => false - */ - function isObjectLike(value) { - return value != null && typeof value == 'object'; - } - - /** - * Checks if `value` is classified as a `Map` object. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a map, else `false`. - * @example - * - * _.isMap(new Map); - * // => true - * - * _.isMap(new WeakMap); - * // => false - */ - var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap; - - /** - * Performs a partial deep comparison between `object` and `source` to - * determine if `object` contains equivalent property values. - * - * **Note:** This method is equivalent to `_.matches` when `source` is - * partially applied. - * - * Partial comparisons will match empty array and empty object `source` - * values against any array or object value, respectively. See `_.isEqual` - * for a list of supported value comparisons. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Lang - * @param {Object} object The object to inspect. - * @param {Object} source The object of property values to match. - * @returns {boolean} Returns `true` if `object` is a match, else `false`. - * @example - * - * var object = { 'a': 1, 'b': 2 }; - * - * _.isMatch(object, { 'b': 2 }); - * // => true - * - * _.isMatch(object, { 'b': 1 }); - * // => false - */ - function isMatch(object, source) { - return object === source || baseIsMatch(object, source, getMatchData(source)); - } - - /** - * This method is like `_.isMatch` except that it accepts `customizer` which - * is invoked to compare values. If `customizer` returns `undefined`, comparisons - * are handled by the method instead. The `customizer` is invoked with five - * arguments: (objValue, srcValue, index|key, object, source). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {Object} object The object to inspect. - * @param {Object} source The object of property values to match. - * @param {Function} [customizer] The function to customize comparisons. - * @returns {boolean} Returns `true` if `object` is a match, else `false`. - * @example - * - * function isGreeting(value) { - * return /^h(?:i|ello)$/.test(value); - * } - * - * function customizer(objValue, srcValue) { - * if (isGreeting(objValue) && isGreeting(srcValue)) { - * return true; - * } - * } - * - * var object = { 'greeting': 'hello' }; - * var source = { 'greeting': 'hi' }; - * - * _.isMatchWith(object, source, customizer); - * // => true - */ - function isMatchWith(object, source, customizer) { - customizer = typeof customizer == 'function' ? customizer : undefined; - return baseIsMatch(object, source, getMatchData(source), customizer); - } - - /** - * Checks if `value` is `NaN`. - * - * **Note:** This method is based on - * [`Number.isNaN`](https://mdn.io/Number/isNaN) and is not the same as - * global [`isNaN`](https://mdn.io/isNaN) which returns `true` for - * `undefined` and other non-number values. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. - * @example - * - * _.isNaN(NaN); - * // => true - * - * _.isNaN(new Number(NaN)); - * // => true - * - * isNaN(undefined); - * // => true - * - * _.isNaN(undefined); - * // => false - */ - function isNaN(value) { - // An `NaN` primitive is the only value that is not equal to itself. - // Perform the `toStringTag` check first to avoid errors with some - // ActiveX objects in IE. - return isNumber(value) && value != +value; - } - - /** - * Checks if `value` is a pristine native function. - * - * **Note:** This method can't reliably detect native functions in the presence - * of the core-js package because core-js circumvents this kind of detection. - * Despite multiple requests, the core-js maintainer has made it clear: any - * attempt to fix the detection will be obstructed. As a result, we're left - * with little choice but to throw an error. Unfortunately, this also affects - * packages, like [babel-polyfill](https://www.npmjs.com/package/babel-polyfill), - * which rely on core-js. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a native function, - * else `false`. - * @example - * - * _.isNative(Array.prototype.push); - * // => true - * - * _.isNative(_); - * // => false - */ - function isNative(value) { - if (isMaskable(value)) { - throw new Error(CORE_ERROR_TEXT); - } - return baseIsNative(value); - } - - /** - * Checks if `value` is `null`. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is `null`, else `false`. - * @example - * - * _.isNull(null); - * // => true - * - * _.isNull(void 0); - * // => false - */ - function isNull(value) { - return value === null; - } - - /** - * Checks if `value` is `null` or `undefined`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is nullish, else `false`. - * @example - * - * _.isNil(null); - * // => true - * - * _.isNil(void 0); - * // => true - * - * _.isNil(NaN); - * // => false - */ - function isNil(value) { - return value == null; - } - - /** - * Checks if `value` is classified as a `Number` primitive or object. - * - * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are - * classified as numbers, use the `_.isFinite` method. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a number, else `false`. - * @example - * - * _.isNumber(3); - * // => true - * - * _.isNumber(Number.MIN_VALUE); - * // => true - * - * _.isNumber(Infinity); - * // => true - * - * _.isNumber('3'); - * // => false - */ - function isNumber(value) { - return typeof value == 'number' || - (isObjectLike(value) && baseGetTag(value) == numberTag); - } - - /** - * Checks if `value` is a plain object, that is, an object created by the - * `Object` constructor or one with a `[[Prototype]]` of `null`. - * - * @static - * @memberOf _ - * @since 0.8.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a plain object, else `false`. - * @example - * - * function Foo() { - * this.a = 1; - * } - * - * _.isPlainObject(new Foo); - * // => false - * - * _.isPlainObject([1, 2, 3]); - * // => false - * - * _.isPlainObject({ 'x': 0, 'y': 0 }); - * // => true - * - * _.isPlainObject(Object.create(null)); - * // => true - */ - function isPlainObject(value) { - if (!isObjectLike(value) || baseGetTag(value) != objectTag) { - return false; - } - var proto = getPrototype(value); - if (proto === null) { - return true; - } - var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor; - return typeof Ctor == 'function' && Ctor instanceof Ctor && - funcToString.call(Ctor) == objectCtorString; - } - - /** - * Checks if `value` is classified as a `RegExp` object. - * - * @static - * @memberOf _ - * @since 0.1.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. - * @example - * - * _.isRegExp(/abc/); - * // => true - * - * _.isRegExp('/abc/'); - * // => false - */ - var isRegExp = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp; - - /** - * Checks if `value` is a safe integer. An integer is safe if it's an IEEE-754 - * double precision number which isn't the result of a rounded unsafe integer. - * - * **Note:** This method is based on - * [`Number.isSafeInteger`](https://mdn.io/Number/isSafeInteger). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a safe integer, else `false`. - * @example - * - * _.isSafeInteger(3); - * // => true - * - * _.isSafeInteger(Number.MIN_VALUE); - * // => false - * - * _.isSafeInteger(Infinity); - * // => false - * - * _.isSafeInteger('3'); - * // => false - */ - function isSafeInteger(value) { - return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER; - } - - /** - * Checks if `value` is classified as a `Set` object. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a set, else `false`. - * @example - * - * _.isSet(new Set); - * // => true - * - * _.isSet(new WeakSet); - * // => false - */ - var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet; - - /** - * Checks if `value` is classified as a `String` primitive or object. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a string, else `false`. - * @example - * - * _.isString('abc'); - * // => true - * - * _.isString(1); - * // => false - */ - function isString(value) { - return typeof value == 'string' || - (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag); - } - - /** - * Checks if `value` is classified as a `Symbol` primitive or object. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a symbol, else `false`. - * @example - * - * _.isSymbol(Symbol.iterator); - * // => true - * - * _.isSymbol('abc'); - * // => false - */ - function isSymbol(value) { - return typeof value == 'symbol' || - (isObjectLike(value) && baseGetTag(value) == symbolTag); - } - - /** - * Checks if `value` is classified as a typed array. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. - * @example - * - * _.isTypedArray(new Uint8Array); - * // => true - * - * _.isTypedArray([]); - * // => false - */ - var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; - - /** - * Checks if `value` is `undefined`. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`. - * @example - * - * _.isUndefined(void 0); - * // => true - * - * _.isUndefined(null); - * // => false - */ - function isUndefined(value) { - return value === undefined; - } - - /** - * Checks if `value` is classified as a `WeakMap` object. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a weak map, else `false`. - * @example - * - * _.isWeakMap(new WeakMap); - * // => true - * - * _.isWeakMap(new Map); - * // => false - */ - function isWeakMap(value) { - return isObjectLike(value) && getTag(value) == weakMapTag; - } - - /** - * Checks if `value` is classified as a `WeakSet` object. - * - * @static - * @memberOf _ - * @since 4.3.0 - * @category Lang - * @param {*} value The value to check. - * @returns {boolean} Returns `true` if `value` is a weak set, else `false`. - * @example - * - * _.isWeakSet(new WeakSet); - * // => true - * - * _.isWeakSet(new Set); - * // => false - */ - function isWeakSet(value) { - return isObjectLike(value) && baseGetTag(value) == weakSetTag; - } - - /** - * Checks if `value` is less than `other`. - * - * @static - * @memberOf _ - * @since 3.9.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if `value` is less than `other`, - * else `false`. - * @see _.gt - * @example - * - * _.lt(1, 3); - * // => true - * - * _.lt(3, 3); - * // => false - * - * _.lt(3, 1); - * // => false - */ - var lt = createRelationalOperation(baseLt); - - /** - * Checks if `value` is less than or equal to `other`. - * - * @static - * @memberOf _ - * @since 3.9.0 - * @category Lang - * @param {*} value The value to compare. - * @param {*} other The other value to compare. - * @returns {boolean} Returns `true` if `value` is less than or equal to - * `other`, else `false`. - * @see _.gte - * @example - * - * _.lte(1, 3); - * // => true - * - * _.lte(3, 3); - * // => true - * - * _.lte(3, 1); - * // => false - */ - var lte = createRelationalOperation(function(value, other) { - return value <= other; - }); - - /** - * Converts `value` to an array. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Lang - * @param {*} value The value to convert. - * @returns {Array} Returns the converted array. - * @example - * - * _.toArray({ 'a': 1, 'b': 2 }); - * // => [1, 2] - * - * _.toArray('abc'); - * // => ['a', 'b', 'c'] - * - * _.toArray(1); - * // => [] - * - * _.toArray(null); - * // => [] - */ - function toArray(value) { - if (!value) { - return []; - } - if (isArrayLike(value)) { - return isString(value) ? stringToArray(value) : copyArray(value); - } - if (symIterator && value[symIterator]) { - return iteratorToArray(value[symIterator]()); - } - var tag = getTag(value), - func = tag == mapTag ? mapToArray : (tag == setTag ? setToArray : values); - - return func(value); - } - - /** - * Converts `value` to a finite number. - * - * @static - * @memberOf _ - * @since 4.12.0 - * @category Lang - * @param {*} value The value to convert. - * @returns {number} Returns the converted number. - * @example - * - * _.toFinite(3.2); - * // => 3.2 - * - * _.toFinite(Number.MIN_VALUE); - * // => 5e-324 - * - * _.toFinite(Infinity); - * // => 1.7976931348623157e+308 - * - * _.toFinite('3.2'); - * // => 3.2 - */ - function toFinite(value) { - if (!value) { - return value === 0 ? value : 0; - } - value = toNumber(value); - if (value === INFINITY || value === -INFINITY) { - var sign = (value < 0 ? -1 : 1); - return sign * MAX_INTEGER; - } - return value === value ? value : 0; - } - - /** - * Converts `value` to an integer. - * - * **Note:** This method is loosely based on - * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to convert. - * @returns {number} Returns the converted integer. - * @example - * - * _.toInteger(3.2); - * // => 3 - * - * _.toInteger(Number.MIN_VALUE); - * // => 0 - * - * _.toInteger(Infinity); - * // => 1.7976931348623157e+308 - * - * _.toInteger('3.2'); - * // => 3 - */ - function toInteger(value) { - var result = toFinite(value), - remainder = result % 1; - - return result === result ? (remainder ? result - remainder : result) : 0; - } - - /** - * Converts `value` to an integer suitable for use as the length of an - * array-like object. - * - * **Note:** This method is based on - * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to convert. - * @returns {number} Returns the converted integer. - * @example - * - * _.toLength(3.2); - * // => 3 - * - * _.toLength(Number.MIN_VALUE); - * // => 0 - * - * _.toLength(Infinity); - * // => 4294967295 - * - * _.toLength('3.2'); - * // => 3 - */ - function toLength(value) { - return value ? baseClamp(toInteger(value), 0, MAX_ARRAY_LENGTH) : 0; - } - - /** - * Converts `value` to a number. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to process. - * @returns {number} Returns the number. - * @example - * - * _.toNumber(3.2); - * // => 3.2 - * - * _.toNumber(Number.MIN_VALUE); - * // => 5e-324 - * - * _.toNumber(Infinity); - * // => Infinity - * - * _.toNumber('3.2'); - * // => 3.2 - */ - function toNumber(value) { - if (typeof value == 'number') { - return value; - } - if (isSymbol(value)) { - return NAN; - } - if (isObject(value)) { - var other = typeof value.valueOf == 'function' ? value.valueOf() : value; - value = isObject(other) ? (other + '') : other; - } - if (typeof value != 'string') { - return value === 0 ? value : +value; - } - value = value.replace(reTrim, ''); - var isBinary = reIsBinary.test(value); - return (isBinary || reIsOctal.test(value)) - ? freeParseInt(value.slice(2), isBinary ? 2 : 8) - : (reIsBadHex.test(value) ? NAN : +value); - } - - /** - * Converts `value` to a plain object flattening inherited enumerable string - * keyed properties of `value` to own properties of the plain object. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Lang - * @param {*} value The value to convert. - * @returns {Object} Returns the converted plain object. - * @example - * - * function Foo() { - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.assign({ 'a': 1 }, new Foo); - * // => { 'a': 1, 'b': 2 } - * - * _.assign({ 'a': 1 }, _.toPlainObject(new Foo)); - * // => { 'a': 1, 'b': 2, 'c': 3 } - */ - function toPlainObject(value) { - return copyObject(value, keysIn(value)); - } - - /** - * Converts `value` to a safe integer. A safe integer can be compared and - * represented correctly. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to convert. - * @returns {number} Returns the converted integer. - * @example - * - * _.toSafeInteger(3.2); - * // => 3 - * - * _.toSafeInteger(Number.MIN_VALUE); - * // => 0 - * - * _.toSafeInteger(Infinity); - * // => 9007199254740991 - * - * _.toSafeInteger('3.2'); - * // => 3 - */ - function toSafeInteger(value) { - return value - ? baseClamp(toInteger(value), -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER) - : (value === 0 ? value : 0); - } - - /** - * Converts `value` to a string. An empty string is returned for `null` - * and `undefined` values. The sign of `-0` is preserved. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Lang - * @param {*} value The value to convert. - * @returns {string} Returns the converted string. - * @example - * - * _.toString(null); - * // => '' - * - * _.toString(-0); - * // => '-0' - * - * _.toString([1, 2, 3]); - * // => '1,2,3' - */ - function toString(value) { - return value == null ? '' : baseToString(value); - } - - /*------------------------------------------------------------------------*/ - - /** - * Assigns own enumerable string keyed properties of source objects to the - * destination object. Source objects are applied from left to right. - * Subsequent sources overwrite property assignments of previous sources. - * - * **Note:** This method mutates `object` and is loosely based on - * [`Object.assign`](https://mdn.io/Object/assign). - * - * @static - * @memberOf _ - * @since 0.10.0 - * @category Object - * @param {Object} object The destination object. - * @param {...Object} [sources] The source objects. - * @returns {Object} Returns `object`. - * @see _.assignIn - * @example - * - * function Foo() { - * this.a = 1; - * } - * - * function Bar() { - * this.c = 3; - * } - * - * Foo.prototype.b = 2; - * Bar.prototype.d = 4; - * - * _.assign({ 'a': 0 }, new Foo, new Bar); - * // => { 'a': 1, 'c': 3 } - */ - var assign = createAssigner(function(object, source) { - if (isPrototype(source) || isArrayLike(source)) { - copyObject(source, keys(source), object); - return; - } - for (var key in source) { - if (hasOwnProperty.call(source, key)) { - assignValue(object, key, source[key]); - } - } - }); - - /** - * This method is like `_.assign` except that it iterates over own and - * inherited source properties. - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @alias extend - * @category Object - * @param {Object} object The destination object. - * @param {...Object} [sources] The source objects. - * @returns {Object} Returns `object`. - * @see _.assign - * @example - * - * function Foo() { - * this.a = 1; - * } - * - * function Bar() { - * this.c = 3; - * } - * - * Foo.prototype.b = 2; - * Bar.prototype.d = 4; - * - * _.assignIn({ 'a': 0 }, new Foo, new Bar); - * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4 } - */ - var assignIn = createAssigner(function(object, source) { - copyObject(source, keysIn(source), object); - }); - - /** - * This method is like `_.assignIn` except that it accepts `customizer` - * which is invoked to produce the assigned values. If `customizer` returns - * `undefined`, assignment is handled by the method instead. The `customizer` - * is invoked with five arguments: (objValue, srcValue, key, object, source). - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @alias extendWith - * @category Object - * @param {Object} object The destination object. - * @param {...Object} sources The source objects. - * @param {Function} [customizer] The function to customize assigned values. - * @returns {Object} Returns `object`. - * @see _.assignWith - * @example - * - * function customizer(objValue, srcValue) { - * return _.isUndefined(objValue) ? srcValue : objValue; - * } - * - * var defaults = _.partialRight(_.assignInWith, customizer); - * - * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); - * // => { 'a': 1, 'b': 2 } - */ - var assignInWith = createAssigner(function(object, source, srcIndex, customizer) { - copyObject(source, keysIn(source), object, customizer); - }); - - /** - * This method is like `_.assign` except that it accepts `customizer` - * which is invoked to produce the assigned values. If `customizer` returns - * `undefined`, assignment is handled by the method instead. The `customizer` - * is invoked with five arguments: (objValue, srcValue, key, object, source). - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The destination object. - * @param {...Object} sources The source objects. - * @param {Function} [customizer] The function to customize assigned values. - * @returns {Object} Returns `object`. - * @see _.assignInWith - * @example - * - * function customizer(objValue, srcValue) { - * return _.isUndefined(objValue) ? srcValue : objValue; - * } - * - * var defaults = _.partialRight(_.assignWith, customizer); - * - * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); - * // => { 'a': 1, 'b': 2 } - */ - var assignWith = createAssigner(function(object, source, srcIndex, customizer) { - copyObject(source, keys(source), object, customizer); - }); - - /** - * Creates an array of values corresponding to `paths` of `object`. - * - * @static - * @memberOf _ - * @since 1.0.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {...(string|string[])} [paths] The property paths to pick. - * @returns {Array} Returns the picked values. - * @example - * - * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] }; - * - * _.at(object, ['a[0].b.c', 'a[1]']); - * // => [3, 4] - */ - var at = flatRest(baseAt); - - /** - * Creates an object that inherits from the `prototype` object. If a - * `properties` object is given, its own enumerable string keyed properties - * are assigned to the created object. - * - * @static - * @memberOf _ - * @since 2.3.0 - * @category Object - * @param {Object} prototype The object to inherit from. - * @param {Object} [properties] The properties to assign to the object. - * @returns {Object} Returns the new object. - * @example - * - * function Shape() { - * this.x = 0; - * this.y = 0; - * } - * - * function Circle() { - * Shape.call(this); - * } - * - * Circle.prototype = _.create(Shape.prototype, { - * 'constructor': Circle - * }); - * - * var circle = new Circle; - * circle instanceof Circle; - * // => true - * - * circle instanceof Shape; - * // => true - */ - function create(prototype, properties) { - var result = baseCreate(prototype); - return properties == null ? result : baseAssign(result, properties); - } - - /** - * Assigns own and inherited enumerable string keyed properties of source - * objects to the destination object for all destination properties that - * resolve to `undefined`. Source objects are applied from left to right. - * Once a property is set, additional values of the same property are ignored. - * - * **Note:** This method mutates `object`. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The destination object. - * @param {...Object} [sources] The source objects. - * @returns {Object} Returns `object`. - * @see _.defaultsDeep - * @example - * - * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); - * // => { 'a': 1, 'b': 2 } - */ - var defaults = baseRest(function(object, sources) { - object = Object(object); - - var index = -1; - var length = sources.length; - var guard = length > 2 ? sources[2] : undefined; - - if (guard && isIterateeCall(sources[0], sources[1], guard)) { - length = 1; - } - - while (++index < length) { - var source = sources[index]; - var props = keysIn(source); - var propsIndex = -1; - var propsLength = props.length; - - while (++propsIndex < propsLength) { - var key = props[propsIndex]; - var value = object[key]; - - if (value === undefined || - (eq(value, objectProto[key]) && !hasOwnProperty.call(object, key))) { - object[key] = source[key]; - } - } - } - - return object; - }); - - /** - * This method is like `_.defaults` except that it recursively assigns - * default properties. - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 3.10.0 - * @category Object - * @param {Object} object The destination object. - * @param {...Object} [sources] The source objects. - * @returns {Object} Returns `object`. - * @see _.defaults - * @example - * - * _.defaultsDeep({ 'a': { 'b': 2 } }, { 'a': { 'b': 1, 'c': 3 } }); - * // => { 'a': { 'b': 2, 'c': 3 } } - */ - var defaultsDeep = baseRest(function(args) { - args.push(undefined, customDefaultsMerge); - return apply(mergeWith, undefined, args); - }); - - /** - * This method is like `_.find` except that it returns the key of the first - * element `predicate` returns truthy for instead of the element itself. - * - * @static - * @memberOf _ - * @since 1.1.0 - * @category Object - * @param {Object} object The object to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {string|undefined} Returns the key of the matched element, - * else `undefined`. - * @example - * - * var users = { - * 'barney': { 'age': 36, 'active': true }, - * 'fred': { 'age': 40, 'active': false }, - * 'pebbles': { 'age': 1, 'active': true } - * }; - * - * _.findKey(users, function(o) { return o.age < 40; }); - * // => 'barney' (iteration order is not guaranteed) - * - * // The `_.matches` iteratee shorthand. - * _.findKey(users, { 'age': 1, 'active': true }); - * // => 'pebbles' - * - * // The `_.matchesProperty` iteratee shorthand. - * _.findKey(users, ['active', false]); - * // => 'fred' - * - * // The `_.property` iteratee shorthand. - * _.findKey(users, 'active'); - * // => 'barney' - */ - function findKey(object, predicate) { - return baseFindKey(object, getIteratee(predicate, 3), baseForOwn); - } - - /** - * This method is like `_.findKey` except that it iterates over elements of - * a collection in the opposite order. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Object - * @param {Object} object The object to inspect. - * @param {Function} [predicate=_.identity] The function invoked per iteration. - * @returns {string|undefined} Returns the key of the matched element, - * else `undefined`. - * @example - * - * var users = { - * 'barney': { 'age': 36, 'active': true }, - * 'fred': { 'age': 40, 'active': false }, - * 'pebbles': { 'age': 1, 'active': true } - * }; - * - * _.findLastKey(users, function(o) { return o.age < 40; }); - * // => returns 'pebbles' assuming `_.findKey` returns 'barney' - * - * // The `_.matches` iteratee shorthand. - * _.findLastKey(users, { 'age': 36, 'active': true }); - * // => 'barney' - * - * // The `_.matchesProperty` iteratee shorthand. - * _.findLastKey(users, ['active', false]); - * // => 'fred' - * - * // The `_.property` iteratee shorthand. - * _.findLastKey(users, 'active'); - * // => 'pebbles' - */ - function findLastKey(object, predicate) { - return baseFindKey(object, getIteratee(predicate, 3), baseForOwnRight); - } - - /** - * Iterates over own and inherited enumerable string keyed properties of an - * object and invokes `iteratee` for each property. The iteratee is invoked - * with three arguments: (value, key, object). Iteratee functions may exit - * iteration early by explicitly returning `false`. - * - * @static - * @memberOf _ - * @since 0.3.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Object} Returns `object`. - * @see _.forInRight - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.forIn(new Foo, function(value, key) { - * console.log(key); - * }); - * // => Logs 'a', 'b', then 'c' (iteration order is not guaranteed). - */ - function forIn(object, iteratee) { - return object == null - ? object - : baseFor(object, getIteratee(iteratee, 3), keysIn); - } - - /** - * This method is like `_.forIn` except that it iterates over properties of - * `object` in the opposite order. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Object} Returns `object`. - * @see _.forIn - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.forInRight(new Foo, function(value, key) { - * console.log(key); - * }); - * // => Logs 'c', 'b', then 'a' assuming `_.forIn` logs 'a', 'b', then 'c'. - */ - function forInRight(object, iteratee) { - return object == null - ? object - : baseForRight(object, getIteratee(iteratee, 3), keysIn); - } - - /** - * Iterates over own enumerable string keyed properties of an object and - * invokes `iteratee` for each property. The iteratee is invoked with three - * arguments: (value, key, object). Iteratee functions may exit iteration - * early by explicitly returning `false`. - * - * @static - * @memberOf _ - * @since 0.3.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Object} Returns `object`. - * @see _.forOwnRight - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.forOwn(new Foo, function(value, key) { - * console.log(key); - * }); - * // => Logs 'a' then 'b' (iteration order is not guaranteed). - */ - function forOwn(object, iteratee) { - return object && baseForOwn(object, getIteratee(iteratee, 3)); - } - - /** - * This method is like `_.forOwn` except that it iterates over properties of - * `object` in the opposite order. - * - * @static - * @memberOf _ - * @since 2.0.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Object} Returns `object`. - * @see _.forOwn - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.forOwnRight(new Foo, function(value, key) { - * console.log(key); - * }); - * // => Logs 'b' then 'a' assuming `_.forOwn` logs 'a' then 'b'. - */ - function forOwnRight(object, iteratee) { - return object && baseForOwnRight(object, getIteratee(iteratee, 3)); - } - - /** - * Creates an array of function property names from own enumerable properties - * of `object`. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The object to inspect. - * @returns {Array} Returns the function names. - * @see _.functionsIn - * @example - * - * function Foo() { - * this.a = _.constant('a'); - * this.b = _.constant('b'); - * } - * - * Foo.prototype.c = _.constant('c'); - * - * _.functions(new Foo); - * // => ['a', 'b'] - */ - function functions(object) { - return object == null ? [] : baseFunctions(object, keys(object)); - } - - /** - * Creates an array of function property names from own and inherited - * enumerable properties of `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The object to inspect. - * @returns {Array} Returns the function names. - * @see _.functions - * @example - * - * function Foo() { - * this.a = _.constant('a'); - * this.b = _.constant('b'); - * } - * - * Foo.prototype.c = _.constant('c'); - * - * _.functionsIn(new Foo); - * // => ['a', 'b', 'c'] - */ - function functionsIn(object) { - return object == null ? [] : baseFunctions(object, keysIn(object)); - } - - /** - * Gets the value at `path` of `object`. If the resolved value is - * `undefined`, the `defaultValue` is returned in its place. - * - * @static - * @memberOf _ - * @since 3.7.0 - * @category Object - * @param {Object} object The object to query. - * @param {Array|string} path The path of the property to get. - * @param {*} [defaultValue] The value returned for `undefined` resolved values. - * @returns {*} Returns the resolved value. - * @example - * - * var object = { 'a': [{ 'b': { 'c': 3 } }] }; - * - * _.get(object, 'a[0].b.c'); - * // => 3 - * - * _.get(object, ['a', '0', 'b', 'c']); - * // => 3 - * - * _.get(object, 'a.b.c', 'default'); - * // => 'default' - */ - function get(object, path, defaultValue) { - var result = object == null ? undefined : baseGet(object, path); - return result === undefined ? defaultValue : result; - } - - /** - * Checks if `path` is a direct property of `object`. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The object to query. - * @param {Array|string} path The path to check. - * @returns {boolean} Returns `true` if `path` exists, else `false`. - * @example - * - * var object = { 'a': { 'b': 2 } }; - * var other = _.create({ 'a': _.create({ 'b': 2 }) }); - * - * _.has(object, 'a'); - * // => true - * - * _.has(object, 'a.b'); - * // => true - * - * _.has(object, ['a', 'b']); - * // => true - * - * _.has(other, 'a'); - * // => false - */ - function has(object, path) { - return object != null && hasPath(object, path, baseHas); - } - - /** - * Checks if `path` is a direct or inherited property of `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The object to query. - * @param {Array|string} path The path to check. - * @returns {boolean} Returns `true` if `path` exists, else `false`. - * @example - * - * var object = _.create({ 'a': _.create({ 'b': 2 }) }); - * - * _.hasIn(object, 'a'); - * // => true - * - * _.hasIn(object, 'a.b'); - * // => true - * - * _.hasIn(object, ['a', 'b']); - * // => true - * - * _.hasIn(object, 'b'); - * // => false - */ - function hasIn(object, path) { - return object != null && hasPath(object, path, baseHasIn); - } - - /** - * Creates an object composed of the inverted keys and values of `object`. - * If `object` contains duplicate values, subsequent values overwrite - * property assignments of previous values. - * - * @static - * @memberOf _ - * @since 0.7.0 - * @category Object - * @param {Object} object The object to invert. - * @returns {Object} Returns the new inverted object. - * @example - * - * var object = { 'a': 1, 'b': 2, 'c': 1 }; - * - * _.invert(object); - * // => { '1': 'c', '2': 'b' } - */ - var invert = createInverter(function(result, value, key) { - if (value != null && - typeof value.toString != 'function') { - value = nativeObjectToString.call(value); - } - - result[value] = key; - }, constant(identity)); - - /** - * This method is like `_.invert` except that the inverted object is generated - * from the results of running each element of `object` thru `iteratee`. The - * corresponding inverted value of each inverted key is an array of keys - * responsible for generating the inverted value. The iteratee is invoked - * with one argument: (value). - * - * @static - * @memberOf _ - * @since 4.1.0 - * @category Object - * @param {Object} object The object to invert. - * @param {Function} [iteratee=_.identity] The iteratee invoked per element. - * @returns {Object} Returns the new inverted object. - * @example - * - * var object = { 'a': 1, 'b': 2, 'c': 1 }; - * - * _.invertBy(object); - * // => { '1': ['a', 'c'], '2': ['b'] } - * - * _.invertBy(object, function(value) { - * return 'group' + value; - * }); - * // => { 'group1': ['a', 'c'], 'group2': ['b'] } - */ - var invertBy = createInverter(function(result, value, key) { - if (value != null && - typeof value.toString != 'function') { - value = nativeObjectToString.call(value); - } - - if (hasOwnProperty.call(result, value)) { - result[value].push(key); - } else { - result[value] = [key]; - } - }, getIteratee); - - /** - * Invokes the method at `path` of `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The object to query. - * @param {Array|string} path The path of the method to invoke. - * @param {...*} [args] The arguments to invoke the method with. - * @returns {*} Returns the result of the invoked method. - * @example - * - * var object = { 'a': [{ 'b': { 'c': [1, 2, 3, 4] } }] }; - * - * _.invoke(object, 'a[0].b.c.slice', 1, 3); - * // => [2, 3] - */ - var invoke = baseRest(baseInvoke); - - /** - * Creates an array of the own enumerable property names of `object`. - * - * **Note:** Non-object values are coerced to objects. See the - * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) - * for more details. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.keys(new Foo); - * // => ['a', 'b'] (iteration order is not guaranteed) - * - * _.keys('hi'); - * // => ['0', '1'] - */ - function keys(object) { - return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); - } - - /** - * Creates an array of the own and inherited enumerable property names of `object`. - * - * **Note:** Non-object values are coerced to objects. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property names. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.keysIn(new Foo); - * // => ['a', 'b', 'c'] (iteration order is not guaranteed) - */ - function keysIn(object) { - return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object); - } - - /** - * The opposite of `_.mapValues`; this method creates an object with the - * same values as `object` and keys generated by running each own enumerable - * string keyed property of `object` thru `iteratee`. The iteratee is invoked - * with three arguments: (value, key, object). - * - * @static - * @memberOf _ - * @since 3.8.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Object} Returns the new mapped object. - * @see _.mapValues - * @example - * - * _.mapKeys({ 'a': 1, 'b': 2 }, function(value, key) { - * return key + value; - * }); - * // => { 'a1': 1, 'b2': 2 } - */ - function mapKeys(object, iteratee) { - var result = {}; - iteratee = getIteratee(iteratee, 3); - - baseForOwn(object, function(value, key, object) { - baseAssignValue(result, iteratee(value, key, object), value); - }); - return result; - } - - /** - * Creates an object with the same keys as `object` and values generated - * by running each own enumerable string keyed property of `object` thru - * `iteratee`. The iteratee is invoked with three arguments: - * (value, key, object). - * - * @static - * @memberOf _ - * @since 2.4.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @returns {Object} Returns the new mapped object. - * @see _.mapKeys - * @example - * - * var users = { - * 'fred': { 'user': 'fred', 'age': 40 }, - * 'pebbles': { 'user': 'pebbles', 'age': 1 } - * }; - * - * _.mapValues(users, function(o) { return o.age; }); - * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed) - * - * // The `_.property` iteratee shorthand. - * _.mapValues(users, 'age'); - * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed) - */ - function mapValues(object, iteratee) { - var result = {}; - iteratee = getIteratee(iteratee, 3); - - baseForOwn(object, function(value, key, object) { - baseAssignValue(result, key, iteratee(value, key, object)); - }); - return result; - } - - /** - * This method is like `_.assign` except that it recursively merges own and - * inherited enumerable string keyed properties of source objects into the - * destination object. Source properties that resolve to `undefined` are - * skipped if a destination value exists. Array and plain object properties - * are merged recursively. Other objects and value types are overridden by - * assignment. Source objects are applied from left to right. Subsequent - * sources overwrite property assignments of previous sources. - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 0.5.0 - * @category Object - * @param {Object} object The destination object. - * @param {...Object} [sources] The source objects. - * @returns {Object} Returns `object`. - * @example - * - * var object = { - * 'a': [{ 'b': 2 }, { 'd': 4 }] - * }; - * - * var other = { - * 'a': [{ 'c': 3 }, { 'e': 5 }] - * }; - * - * _.merge(object, other); - * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] } - */ - var merge = createAssigner(function(object, source, srcIndex) { - baseMerge(object, source, srcIndex); - }); - - /** - * This method is like `_.merge` except that it accepts `customizer` which - * is invoked to produce the merged values of the destination and source - * properties. If `customizer` returns `undefined`, merging is handled by the - * method instead. The `customizer` is invoked with six arguments: - * (objValue, srcValue, key, object, source, stack). - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The destination object. - * @param {...Object} sources The source objects. - * @param {Function} customizer The function to customize assigned values. - * @returns {Object} Returns `object`. - * @example - * - * function customizer(objValue, srcValue) { - * if (_.isArray(objValue)) { - * return objValue.concat(srcValue); - * } - * } - * - * var object = { 'a': [1], 'b': [2] }; - * var other = { 'a': [3], 'b': [4] }; - * - * _.mergeWith(object, other, customizer); - * // => { 'a': [1, 3], 'b': [2, 4] } - */ - var mergeWith = createAssigner(function(object, source, srcIndex, customizer) { - baseMerge(object, source, srcIndex, customizer); - }); - - /** - * The opposite of `_.pick`; this method creates an object composed of the - * own and inherited enumerable property paths of `object` that are not omitted. - * - * **Note:** This method is considerably slower than `_.pick`. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The source object. - * @param {...(string|string[])} [paths] The property paths to omit. - * @returns {Object} Returns the new object. - * @example - * - * var object = { 'a': 1, 'b': '2', 'c': 3 }; - * - * _.omit(object, ['a', 'c']); - * // => { 'b': '2' } - */ - var omit = flatRest(function(object, paths) { - var result = {}; - if (object == null) { - return result; - } - var isDeep = false; - paths = arrayMap(paths, function(path) { - path = castPath(path, object); - isDeep || (isDeep = path.length > 1); - return path; - }); - copyObject(object, getAllKeysIn(object), result); - if (isDeep) { - result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG, customOmitClone); - } - var length = paths.length; - while (length--) { - baseUnset(result, paths[length]); - } - return result; - }); - - /** - * The opposite of `_.pickBy`; this method creates an object composed of - * the own and inherited enumerable string keyed properties of `object` that - * `predicate` doesn't return truthy for. The predicate is invoked with two - * arguments: (value, key). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The source object. - * @param {Function} [predicate=_.identity] The function invoked per property. - * @returns {Object} Returns the new object. - * @example - * - * var object = { 'a': 1, 'b': '2', 'c': 3 }; - * - * _.omitBy(object, _.isNumber); - * // => { 'b': '2' } - */ - function omitBy(object, predicate) { - return pickBy(object, negate(getIteratee(predicate))); - } - - /** - * Creates an object composed of the picked `object` properties. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The source object. - * @param {...(string|string[])} [paths] The property paths to pick. - * @returns {Object} Returns the new object. - * @example - * - * var object = { 'a': 1, 'b': '2', 'c': 3 }; - * - * _.pick(object, ['a', 'c']); - * // => { 'a': 1, 'c': 3 } - */ - var pick = flatRest(function(object, paths) { - return object == null ? {} : basePick(object, paths); - }); - - /** - * Creates an object composed of the `object` properties `predicate` returns - * truthy for. The predicate is invoked with two arguments: (value, key). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The source object. - * @param {Function} [predicate=_.identity] The function invoked per property. - * @returns {Object} Returns the new object. - * @example - * - * var object = { 'a': 1, 'b': '2', 'c': 3 }; - * - * _.pickBy(object, _.isNumber); - * // => { 'a': 1, 'c': 3 } - */ - function pickBy(object, predicate) { - if (object == null) { - return {}; - } - var props = arrayMap(getAllKeysIn(object), function(prop) { - return [prop]; - }); - predicate = getIteratee(predicate); - return basePickBy(object, props, function(value, path) { - return predicate(value, path[0]); - }); - } - - /** - * This method is like `_.get` except that if the resolved value is a - * function it's invoked with the `this` binding of its parent object and - * its result is returned. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The object to query. - * @param {Array|string} path The path of the property to resolve. - * @param {*} [defaultValue] The value returned for `undefined` resolved values. - * @returns {*} Returns the resolved value. - * @example - * - * var object = { 'a': [{ 'b': { 'c1': 3, 'c2': _.constant(4) } }] }; - * - * _.result(object, 'a[0].b.c1'); - * // => 3 - * - * _.result(object, 'a[0].b.c2'); - * // => 4 - * - * _.result(object, 'a[0].b.c3', 'default'); - * // => 'default' - * - * _.result(object, 'a[0].b.c3', _.constant('default')); - * // => 'default' - */ - function result(object, path, defaultValue) { - path = castPath(path, object); - - var index = -1, - length = path.length; - - // Ensure the loop is entered when path is empty. - if (!length) { - length = 1; - object = undefined; - } - while (++index < length) { - var value = object == null ? undefined : object[toKey(path[index])]; - if (value === undefined) { - index = length; - value = defaultValue; - } - object = isFunction(value) ? value.call(object) : value; - } - return object; - } - - /** - * Sets the value at `path` of `object`. If a portion of `path` doesn't exist, - * it's created. Arrays are created for missing index properties while objects - * are created for all other missing properties. Use `_.setWith` to customize - * `path` creation. - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 3.7.0 - * @category Object - * @param {Object} object The object to modify. - * @param {Array|string} path The path of the property to set. - * @param {*} value The value to set. - * @returns {Object} Returns `object`. - * @example - * - * var object = { 'a': [{ 'b': { 'c': 3 } }] }; - * - * _.set(object, 'a[0].b.c', 4); - * console.log(object.a[0].b.c); - * // => 4 - * - * _.set(object, ['x', '0', 'y', 'z'], 5); - * console.log(object.x[0].y.z); - * // => 5 - */ - function set(object, path, value) { - return object == null ? object : baseSet(object, path, value); - } - - /** - * This method is like `_.set` except that it accepts `customizer` which is - * invoked to produce the objects of `path`. If `customizer` returns `undefined` - * path creation is handled by the method instead. The `customizer` is invoked - * with three arguments: (nsValue, key, nsObject). - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The object to modify. - * @param {Array|string} path The path of the property to set. - * @param {*} value The value to set. - * @param {Function} [customizer] The function to customize assigned values. - * @returns {Object} Returns `object`. - * @example - * - * var object = {}; - * - * _.setWith(object, '[0][1]', 'a', Object); - * // => { '0': { '1': 'a' } } - */ - function setWith(object, path, value, customizer) { - customizer = typeof customizer == 'function' ? customizer : undefined; - return object == null ? object : baseSet(object, path, value, customizer); - } - - /** - * Creates an array of own enumerable string keyed-value pairs for `object` - * which can be consumed by `_.fromPairs`. If `object` is a map or set, its - * entries are returned. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @alias entries - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the key-value pairs. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.toPairs(new Foo); - * // => [['a', 1], ['b', 2]] (iteration order is not guaranteed) - */ - var toPairs = createToPairs(keys); - - /** - * Creates an array of own and inherited enumerable string keyed-value pairs - * for `object` which can be consumed by `_.fromPairs`. If `object` is a map - * or set, its entries are returned. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @alias entriesIn - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the key-value pairs. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.toPairsIn(new Foo); - * // => [['a', 1], ['b', 2], ['c', 3]] (iteration order is not guaranteed) - */ - var toPairsIn = createToPairs(keysIn); - - /** - * An alternative to `_.reduce`; this method transforms `object` to a new - * `accumulator` object which is the result of running each of its own - * enumerable string keyed properties thru `iteratee`, with each invocation - * potentially mutating the `accumulator` object. If `accumulator` is not - * provided, a new object with the same `[[Prototype]]` will be used. The - * iteratee is invoked with four arguments: (accumulator, value, key, object). - * Iteratee functions may exit iteration early by explicitly returning `false`. - * - * @static - * @memberOf _ - * @since 1.3.0 - * @category Object - * @param {Object} object The object to iterate over. - * @param {Function} [iteratee=_.identity] The function invoked per iteration. - * @param {*} [accumulator] The custom accumulator value. - * @returns {*} Returns the accumulated value. - * @example - * - * _.transform([2, 3, 4], function(result, n) { - * result.push(n *= n); - * return n % 2 == 0; - * }, []); - * // => [4, 9] - * - * _.transform({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) { - * (result[value] || (result[value] = [])).push(key); - * }, {}); - * // => { '1': ['a', 'c'], '2': ['b'] } - */ - function transform(object, iteratee, accumulator) { - var isArr = isArray(object), - isArrLike = isArr || isBuffer(object) || isTypedArray(object); - - iteratee = getIteratee(iteratee, 4); - if (accumulator == null) { - var Ctor = object && object.constructor; - if (isArrLike) { - accumulator = isArr ? new Ctor : []; - } - else if (isObject(object)) { - accumulator = isFunction(Ctor) ? baseCreate(getPrototype(object)) : {}; - } - else { - accumulator = {}; - } - } - (isArrLike ? arrayEach : baseForOwn)(object, function(value, index, object) { - return iteratee(accumulator, value, index, object); - }); - return accumulator; - } - - /** - * Removes the property at `path` of `object`. - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Object - * @param {Object} object The object to modify. - * @param {Array|string} path The path of the property to unset. - * @returns {boolean} Returns `true` if the property is deleted, else `false`. - * @example - * - * var object = { 'a': [{ 'b': { 'c': 7 } }] }; - * _.unset(object, 'a[0].b.c'); - * // => true - * - * console.log(object); - * // => { 'a': [{ 'b': {} }] }; - * - * _.unset(object, ['a', '0', 'b', 'c']); - * // => true - * - * console.log(object); - * // => { 'a': [{ 'b': {} }] }; - */ - function unset(object, path) { - return object == null ? true : baseUnset(object, path); - } - - /** - * This method is like `_.set` except that accepts `updater` to produce the - * value to set. Use `_.updateWith` to customize `path` creation. The `updater` - * is invoked with one argument: (value). - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.6.0 - * @category Object - * @param {Object} object The object to modify. - * @param {Array|string} path The path of the property to set. - * @param {Function} updater The function to produce the updated value. - * @returns {Object} Returns `object`. - * @example - * - * var object = { 'a': [{ 'b': { 'c': 3 } }] }; - * - * _.update(object, 'a[0].b.c', function(n) { return n * n; }); - * console.log(object.a[0].b.c); - * // => 9 - * - * _.update(object, 'x[0].y.z', function(n) { return n ? n + 1 : 0; }); - * console.log(object.x[0].y.z); - * // => 0 - */ - function update(object, path, updater) { - return object == null ? object : baseUpdate(object, path, castFunction(updater)); - } - - /** - * This method is like `_.update` except that it accepts `customizer` which is - * invoked to produce the objects of `path`. If `customizer` returns `undefined` - * path creation is handled by the method instead. The `customizer` is invoked - * with three arguments: (nsValue, key, nsObject). - * - * **Note:** This method mutates `object`. - * - * @static - * @memberOf _ - * @since 4.6.0 - * @category Object - * @param {Object} object The object to modify. - * @param {Array|string} path The path of the property to set. - * @param {Function} updater The function to produce the updated value. - * @param {Function} [customizer] The function to customize assigned values. - * @returns {Object} Returns `object`. - * @example - * - * var object = {}; - * - * _.updateWith(object, '[0][1]', _.constant('a'), Object); - * // => { '0': { '1': 'a' } } - */ - function updateWith(object, path, updater, customizer) { - customizer = typeof customizer == 'function' ? customizer : undefined; - return object == null ? object : baseUpdate(object, path, castFunction(updater), customizer); - } - - /** - * Creates an array of the own enumerable string keyed property values of `object`. - * - * **Note:** Non-object values are coerced to objects. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property values. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.values(new Foo); - * // => [1, 2] (iteration order is not guaranteed) - * - * _.values('hi'); - * // => ['h', 'i'] - */ - function values(object) { - return object == null ? [] : baseValues(object, keys(object)); - } - - /** - * Creates an array of the own and inherited enumerable string keyed property - * values of `object`. - * - * **Note:** Non-object values are coerced to objects. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category Object - * @param {Object} object The object to query. - * @returns {Array} Returns the array of property values. - * @example - * - * function Foo() { - * this.a = 1; - * this.b = 2; - * } - * - * Foo.prototype.c = 3; - * - * _.valuesIn(new Foo); - * // => [1, 2, 3] (iteration order is not guaranteed) - */ - function valuesIn(object) { - return object == null ? [] : baseValues(object, keysIn(object)); - } - - /*------------------------------------------------------------------------*/ - - /** - * Clamps `number` within the inclusive `lower` and `upper` bounds. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category Number - * @param {number} number The number to clamp. - * @param {number} [lower] The lower bound. - * @param {number} upper The upper bound. - * @returns {number} Returns the clamped number. - * @example - * - * _.clamp(-10, -5, 5); - * // => -5 - * - * _.clamp(10, -5, 5); - * // => 5 - */ - function clamp(number, lower, upper) { - if (upper === undefined) { - upper = lower; - lower = undefined; - } - if (upper !== undefined) { - upper = toNumber(upper); - upper = upper === upper ? upper : 0; - } - if (lower !== undefined) { - lower = toNumber(lower); - lower = lower === lower ? lower : 0; - } - return baseClamp(toNumber(number), lower, upper); - } - - /** - * Checks if `n` is between `start` and up to, but not including, `end`. If - * `end` is not specified, it's set to `start` with `start` then set to `0`. - * If `start` is greater than `end` the params are swapped to support - * negative ranges. - * - * @static - * @memberOf _ - * @since 3.3.0 - * @category Number - * @param {number} number The number to check. - * @param {number} [start=0] The start of the range. - * @param {number} end The end of the range. - * @returns {boolean} Returns `true` if `number` is in the range, else `false`. - * @see _.range, _.rangeRight - * @example - * - * _.inRange(3, 2, 4); - * // => true - * - * _.inRange(4, 8); - * // => true - * - * _.inRange(4, 2); - * // => false - * - * _.inRange(2, 2); - * // => false - * - * _.inRange(1.2, 2); - * // => true - * - * _.inRange(5.2, 4); - * // => false - * - * _.inRange(-3, -2, -6); - * // => true - */ - function inRange(number, start, end) { - start = toFinite(start); - if (end === undefined) { - end = start; - start = 0; - } else { - end = toFinite(end); - } - number = toNumber(number); - return baseInRange(number, start, end); - } - - /** - * Produces a random number between the inclusive `lower` and `upper` bounds. - * If only one argument is provided a number between `0` and the given number - * is returned. If `floating` is `true`, or either `lower` or `upper` are - * floats, a floating-point number is returned instead of an integer. - * - * **Note:** JavaScript follows the IEEE-754 standard for resolving - * floating-point values which can produce unexpected results. - * - * @static - * @memberOf _ - * @since 0.7.0 - * @category Number - * @param {number} [lower=0] The lower bound. - * @param {number} [upper=1] The upper bound. - * @param {boolean} [floating] Specify returning a floating-point number. - * @returns {number} Returns the random number. - * @example - * - * _.random(0, 5); - * // => an integer between 0 and 5 - * - * _.random(5); - * // => also an integer between 0 and 5 - * - * _.random(5, true); - * // => a floating-point number between 0 and 5 - * - * _.random(1.2, 5.2); - * // => a floating-point number between 1.2 and 5.2 - */ - function random(lower, upper, floating) { - if (floating && typeof floating != 'boolean' && isIterateeCall(lower, upper, floating)) { - upper = floating = undefined; - } - if (floating === undefined) { - if (typeof upper == 'boolean') { - floating = upper; - upper = undefined; - } - else if (typeof lower == 'boolean') { - floating = lower; - lower = undefined; - } - } - if (lower === undefined && upper === undefined) { - lower = 0; - upper = 1; - } - else { - lower = toFinite(lower); - if (upper === undefined) { - upper = lower; - lower = 0; - } else { - upper = toFinite(upper); - } - } - if (lower > upper) { - var temp = lower; - lower = upper; - upper = temp; - } - if (floating || lower % 1 || upper % 1) { - var rand = nativeRandom(); - return nativeMin(lower + (rand * (upper - lower + freeParseFloat('1e-' + ((rand + '').length - 1)))), upper); - } - return baseRandom(lower, upper); - } - - /*------------------------------------------------------------------------*/ - - /** - * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to convert. - * @returns {string} Returns the camel cased string. - * @example - * - * _.camelCase('Foo Bar'); - * // => 'fooBar' - * - * _.camelCase('--foo-bar--'); - * // => 'fooBar' - * - * _.camelCase('__FOO_BAR__'); - * // => 'fooBar' - */ - var camelCase = createCompounder(function(result, word, index) { - word = word.toLowerCase(); - return result + (index ? capitalize(word) : word); - }); - - /** - * Converts the first character of `string` to upper case and the remaining - * to lower case. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to capitalize. - * @returns {string} Returns the capitalized string. - * @example - * - * _.capitalize('FRED'); - * // => 'Fred' - */ - function capitalize(string) { - return upperFirst(toString(string).toLowerCase()); - } - - /** - * Deburrs `string` by converting - * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table) - * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A) - * letters to basic Latin letters and removing - * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to deburr. - * @returns {string} Returns the deburred string. - * @example - * - * _.deburr('déjà vu'); - * // => 'deja vu' - */ - function deburr(string) { - string = toString(string); - return string && string.replace(reLatin, deburrLetter).replace(reComboMark, ''); - } - - /** - * Checks if `string` ends with the given target string. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to inspect. - * @param {string} [target] The string to search for. - * @param {number} [position=string.length] The position to search up to. - * @returns {boolean} Returns `true` if `string` ends with `target`, - * else `false`. - * @example - * - * _.endsWith('abc', 'c'); - * // => true - * - * _.endsWith('abc', 'b'); - * // => false - * - * _.endsWith('abc', 'b', 2); - * // => true - */ - function endsWith(string, target, position) { - string = toString(string); - target = baseToString(target); - - var length = string.length; - position = position === undefined - ? length - : baseClamp(toInteger(position), 0, length); - - var end = position; - position -= target.length; - return position >= 0 && string.slice(position, end) == target; - } - - /** - * Converts the characters "&", "<", ">", '"', and "'" in `string` to their - * corresponding HTML entities. - * - * **Note:** No other characters are escaped. To escape additional - * characters use a third-party library like [_he_](https://mths.be/he). - * - * Though the ">" character is escaped for symmetry, characters like - * ">" and "/" don't need escaping in HTML and have no special meaning - * unless they're part of a tag or unquoted attribute value. See - * [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands) - * (under "semi-related fun fact") for more details. - * - * When working with HTML you should always - * [quote attribute values](http://wonko.com/post/html-escaping) to reduce - * XSS vectors. - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category String - * @param {string} [string=''] The string to escape. - * @returns {string} Returns the escaped string. - * @example - * - * _.escape('fred, barney, & pebbles'); - * // => 'fred, barney, & pebbles' - */ - function escape(string) { - string = toString(string); - return (string && reHasUnescapedHtml.test(string)) - ? string.replace(reUnescapedHtml, escapeHtmlChar) - : string; - } - - /** - * Escapes the `RegExp` special characters "^", "$", "\", ".", "*", "+", - * "?", "(", ")", "[", "]", "{", "}", and "|" in `string`. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to escape. - * @returns {string} Returns the escaped string. - * @example - * - * _.escapeRegExp('[lodash](https://lodash.com/)'); - * // => '\[lodash\]\(https://lodash\.com/\)' - */ - function escapeRegExp(string) { - string = toString(string); - return (string && reHasRegExpChar.test(string)) - ? string.replace(reRegExpChar, '\\$&') - : string; - } - - /** - * Converts `string` to - * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to convert. - * @returns {string} Returns the kebab cased string. - * @example - * - * _.kebabCase('Foo Bar'); - * // => 'foo-bar' - * - * _.kebabCase('fooBar'); - * // => 'foo-bar' - * - * _.kebabCase('__FOO_BAR__'); - * // => 'foo-bar' - */ - var kebabCase = createCompounder(function(result, word, index) { - return result + (index ? '-' : '') + word.toLowerCase(); - }); - - /** - * Converts `string`, as space separated words, to lower case. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category String - * @param {string} [string=''] The string to convert. - * @returns {string} Returns the lower cased string. - * @example - * - * _.lowerCase('--Foo-Bar--'); - * // => 'foo bar' - * - * _.lowerCase('fooBar'); - * // => 'foo bar' - * - * _.lowerCase('__FOO_BAR__'); - * // => 'foo bar' - */ - var lowerCase = createCompounder(function(result, word, index) { - return result + (index ? ' ' : '') + word.toLowerCase(); - }); - - /** - * Converts the first character of `string` to lower case. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category String - * @param {string} [string=''] The string to convert. - * @returns {string} Returns the converted string. - * @example - * - * _.lowerFirst('Fred'); - * // => 'fred' - * - * _.lowerFirst('FRED'); - * // => 'fRED' - */ - var lowerFirst = createCaseFirst('toLowerCase'); - - /** - * Pads `string` on the left and right sides if it's shorter than `length`. - * Padding characters are truncated if they can't be evenly divided by `length`. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to pad. - * @param {number} [length=0] The padding length. - * @param {string} [chars=' '] The string used as padding. - * @returns {string} Returns the padded string. - * @example - * - * _.pad('abc', 8); - * // => ' abc ' - * - * _.pad('abc', 8, '_-'); - * // => '_-abc_-_' - * - * _.pad('abc', 3); - * // => 'abc' - */ - function pad(string, length, chars) { - string = toString(string); - length = toInteger(length); - - var strLength = length ? stringSize(string) : 0; - if (!length || strLength >= length) { - return string; - } - var mid = (length - strLength) / 2; - return ( - createPadding(nativeFloor(mid), chars) + - string + - createPadding(nativeCeil(mid), chars) - ); - } - - /** - * Pads `string` on the right side if it's shorter than `length`. Padding - * characters are truncated if they exceed `length`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category String - * @param {string} [string=''] The string to pad. - * @param {number} [length=0] The padding length. - * @param {string} [chars=' '] The string used as padding. - * @returns {string} Returns the padded string. - * @example - * - * _.padEnd('abc', 6); - * // => 'abc ' - * - * _.padEnd('abc', 6, '_-'); - * // => 'abc_-_' - * - * _.padEnd('abc', 3); - * // => 'abc' - */ - function padEnd(string, length, chars) { - string = toString(string); - length = toInteger(length); - - var strLength = length ? stringSize(string) : 0; - return (length && strLength < length) - ? (string + createPadding(length - strLength, chars)) - : string; - } - - /** - * Pads `string` on the left side if it's shorter than `length`. Padding - * characters are truncated if they exceed `length`. - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category String - * @param {string} [string=''] The string to pad. - * @param {number} [length=0] The padding length. - * @param {string} [chars=' '] The string used as padding. - * @returns {string} Returns the padded string. - * @example - * - * _.padStart('abc', 6); - * // => ' abc' - * - * _.padStart('abc', 6, '_-'); - * // => '_-_abc' - * - * _.padStart('abc', 3); - * // => 'abc' - */ - function padStart(string, length, chars) { - string = toString(string); - length = toInteger(length); - - var strLength = length ? stringSize(string) : 0; - return (length && strLength < length) - ? (createPadding(length - strLength, chars) + string) - : string; - } - - /** - * Converts `string` to an integer of the specified radix. If `radix` is - * `undefined` or `0`, a `radix` of `10` is used unless `value` is a - * hexadecimal, in which case a `radix` of `16` is used. - * - * **Note:** This method aligns with the - * [ES5 implementation](https://es5.github.io/#x15.1.2.2) of `parseInt`. - * - * @static - * @memberOf _ - * @since 1.1.0 - * @category String - * @param {string} string The string to convert. - * @param {number} [radix=10] The radix to interpret `value` by. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {number} Returns the converted integer. - * @example - * - * _.parseInt('08'); - * // => 8 - * - * _.map(['6', '08', '10'], _.parseInt); - * // => [6, 8, 10] - */ - function parseInt(string, radix, guard) { - if (guard || radix == null) { - radix = 0; - } else if (radix) { - radix = +radix; - } - return nativeParseInt(toString(string).replace(reTrimStart, ''), radix || 0); - } - - /** - * Repeats the given string `n` times. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to repeat. - * @param {number} [n=1] The number of times to repeat the string. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {string} Returns the repeated string. - * @example - * - * _.repeat('*', 3); - * // => '***' - * - * _.repeat('abc', 2); - * // => 'abcabc' - * - * _.repeat('abc', 0); - * // => '' - */ - function repeat(string, n, guard) { - if ((guard ? isIterateeCall(string, n, guard) : n === undefined)) { - n = 1; - } else { - n = toInteger(n); - } - return baseRepeat(toString(string), n); - } - - /** - * Replaces matches for `pattern` in `string` with `replacement`. - * - * **Note:** This method is based on - * [`String#replace`](https://mdn.io/String/replace). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category String - * @param {string} [string=''] The string to modify. - * @param {RegExp|string} pattern The pattern to replace. - * @param {Function|string} replacement The match replacement. - * @returns {string} Returns the modified string. - * @example - * - * _.replace('Hi Fred', 'Fred', 'Barney'); - * // => 'Hi Barney' - */ - function replace() { - var args = arguments, - string = toString(args[0]); - - return args.length < 3 ? string : string.replace(args[1], args[2]); - } - - /** - * Converts `string` to - * [snake case](https://en.wikipedia.org/wiki/Snake_case). - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to convert. - * @returns {string} Returns the snake cased string. - * @example - * - * _.snakeCase('Foo Bar'); - * // => 'foo_bar' - * - * _.snakeCase('fooBar'); - * // => 'foo_bar' - * - * _.snakeCase('--FOO-BAR--'); - * // => 'foo_bar' - */ - var snakeCase = createCompounder(function(result, word, index) { - return result + (index ? '_' : '') + word.toLowerCase(); - }); - - /** - * Splits `string` by `separator`. - * - * **Note:** This method is based on - * [`String#split`](https://mdn.io/String/split). - * - * @static - * @memberOf _ - * @since 4.0.0 - * @category String - * @param {string} [string=''] The string to split. - * @param {RegExp|string} separator The separator pattern to split by. - * @param {number} [limit] The length to truncate results to. - * @returns {Array} Returns the string segments. - * @example - * - * _.split('a-b-c', '-', 2); - * // => ['a', 'b'] - */ - function split(string, separator, limit) { - if (limit && typeof limit != 'number' && isIterateeCall(string, separator, limit)) { - separator = limit = undefined; - } - limit = limit === undefined ? MAX_ARRAY_LENGTH : limit >>> 0; - if (!limit) { - return []; - } - string = toString(string); - if (string && ( - typeof separator == 'string' || - (separator != null && !isRegExp(separator)) - )) { - separator = baseToString(separator); - if (!separator && hasUnicode(string)) { - return castSlice(stringToArray(string), 0, limit); - } - } - return string.split(separator, limit); - } - - /** - * Converts `string` to - * [start case](https://en.wikipedia.org/wiki/Letter_case#Stylistic_or_specialised_usage). - * - * @static - * @memberOf _ - * @since 3.1.0 - * @category String - * @param {string} [string=''] The string to convert. - * @returns {string} Returns the start cased string. - * @example - * - * _.startCase('--foo-bar--'); - * // => 'Foo Bar' - * - * _.startCase('fooBar'); - * // => 'Foo Bar' - * - * _.startCase('__FOO_BAR__'); - * // => 'FOO BAR' - */ - var startCase = createCompounder(function(result, word, index) { - return result + (index ? ' ' : '') + upperFirst(word); - }); - - /** - * Checks if `string` starts with the given target string. - * - * @static - * @memberOf _ - * @since 3.0.0 - * @category String - * @param {string} [string=''] The string to inspect. - * @param {string} [target] The string to search for. - * @param {number} [position=0] The position to search from. - * @returns {boolean} Returns `true` if `string` starts with `target`, - * else `false`. - * @example - * - * _.startsWith('abc', 'a'); - * // => true - * - * _.startsWith('abc', 'b'); - * // => false - * - * _.startsWith('abc', 'b', 1); - * // => true - */ - function startsWith(string, target, position) { - string = toString(string); - position = position == null - ? 0 - : baseClamp(toInteger(position), 0, string.length); - - target = baseToString(target); - return string.slice(position, position + target.length) == target; - } - - /** - * Creates a compiled template function that can interpolate data properties - * in "interpolate" delimiters, HTML-escape interpolated data properties in - * "escape" delimiters, and execute JavaScript in "evaluate" delimiters. Data - * properties may be accessed as free variables in the template. If a setting - * object is given, it takes precedence over `_.templateSettings` values. - * - * **Note:** In the development build `_.template` utilizes - * [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl) - * for easier debugging. - * - * For more information on precompiling templates see - * [lodash's custom builds documentation](https://lodash.com/custom-builds). - * - * For more information on Chrome extension sandboxes see - * [Chrome's extensions documentation](https://developer.chrome.com/extensions/sandboxingEval). - * - * @static - * @since 0.1.0 - * @memberOf _ - * @category String - * @param {string} [string=''] The template string. - * @param {Object} [options={}] The options object. - * @param {RegExp} [options.escape=_.templateSettings.escape] - * The HTML "escape" delimiter. - * @param {RegExp} [options.evaluate=_.templateSettings.evaluate] - * The "evaluate" delimiter. - * @param {Object} [options.imports=_.templateSettings.imports] - * An object to import into the template as free variables. - * @param {RegExp} [options.interpolate=_.templateSettings.interpolate] - * The "interpolate" delimiter. - * @param {string} [options.sourceURL='lodash.templateSources[n]'] - * The sourceURL of the compiled template. - * @param {string} [options.variable='obj'] - * The data object variable name. - * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. - * @returns {Function} Returns the compiled template function. - * @example - * - * // Use the "interpolate" delimiter to create a compiled template. - * var compiled = _.template('hello <%= user %>!'); - * compiled({ 'user': 'fred' }); - * // => 'hello fred!' - * - * // Use the HTML "escape" delimiter to escape data property values. - * var compiled = _.template('<%- value %>'); - * compiled({ 'value': '