mirror of
https://github.com/oven-sh/setup-bun.git
synced 2025-07-18 12:38:24 +02:00
change base
This commit is contained in:
parent
4573031972
commit
d7222bce30
2489 changed files with 767517 additions and 1327644 deletions
145
.gitignore
vendored
145
.gitignore
vendored
|
@ -1 +1,144 @@
|
||||||
.DS_Store
|
# Created by https://www.toptal.com/developers/gitignore/api/node
|
||||||
|
# Edit at https://www.toptal.com/developers/gitignore?templates=node
|
||||||
|
|
||||||
|
### Node ###
|
||||||
|
# Logs
|
||||||
|
logs
|
||||||
|
*.log
|
||||||
|
npm-debug.log*
|
||||||
|
yarn-debug.log*
|
||||||
|
yarn-error.log*
|
||||||
|
lerna-debug.log*
|
||||||
|
.pnpm-debug.log*
|
||||||
|
|
||||||
|
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||||
|
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
||||||
|
|
||||||
|
# Runtime data
|
||||||
|
pids
|
||||||
|
*.pid
|
||||||
|
*.seed
|
||||||
|
*.pid.lock
|
||||||
|
|
||||||
|
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||||
|
lib-cov
|
||||||
|
|
||||||
|
# Coverage directory used by tools like istanbul
|
||||||
|
coverage
|
||||||
|
*.lcov
|
||||||
|
|
||||||
|
# nyc test coverage
|
||||||
|
.nyc_output
|
||||||
|
|
||||||
|
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||||
|
.grunt
|
||||||
|
|
||||||
|
# Bower dependency directory (https://bower.io/)
|
||||||
|
bower_components
|
||||||
|
|
||||||
|
# node-waf configuration
|
||||||
|
.lock-wscript
|
||||||
|
|
||||||
|
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||||
|
build/Release
|
||||||
|
|
||||||
|
# Dependency directories
|
||||||
|
node_modules/
|
||||||
|
jspm_packages/
|
||||||
|
|
||||||
|
# Snowpack dependency directory (https://snowpack.dev/)
|
||||||
|
web_modules/
|
||||||
|
|
||||||
|
# TypeScript cache
|
||||||
|
*.tsbuildinfo
|
||||||
|
|
||||||
|
# Optional npm cache directory
|
||||||
|
.npm
|
||||||
|
|
||||||
|
# Optional eslint cache
|
||||||
|
.eslintcache
|
||||||
|
|
||||||
|
# Optional stylelint cache
|
||||||
|
.stylelintcache
|
||||||
|
|
||||||
|
# Microbundle cache
|
||||||
|
.rpt2_cache/
|
||||||
|
.rts2_cache_cjs/
|
||||||
|
.rts2_cache_es/
|
||||||
|
.rts2_cache_umd/
|
||||||
|
|
||||||
|
# Optional REPL history
|
||||||
|
.node_repl_history
|
||||||
|
|
||||||
|
# Output of 'npm pack'
|
||||||
|
*.tgz
|
||||||
|
|
||||||
|
# Yarn Integrity file
|
||||||
|
.yarn-integrity
|
||||||
|
|
||||||
|
# dotenv environment variable files
|
||||||
|
.env
|
||||||
|
.env.development.local
|
||||||
|
.env.test.local
|
||||||
|
.env.production.local
|
||||||
|
.env.local
|
||||||
|
|
||||||
|
# parcel-bundler cache (https://parceljs.org/)
|
||||||
|
.cache
|
||||||
|
.parcel-cache
|
||||||
|
|
||||||
|
# Next.js build output
|
||||||
|
.next
|
||||||
|
out
|
||||||
|
|
||||||
|
# Nuxt.js build / generate output
|
||||||
|
.nuxt
|
||||||
|
dist
|
||||||
|
|
||||||
|
# Gatsby files
|
||||||
|
.cache/
|
||||||
|
# Comment in the public line in if your project uses Gatsby and not Next.js
|
||||||
|
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||||
|
# public
|
||||||
|
|
||||||
|
# vuepress build output
|
||||||
|
.vuepress/dist
|
||||||
|
|
||||||
|
# vuepress v2.x temp and cache directory
|
||||||
|
.temp
|
||||||
|
|
||||||
|
# Docusaurus cache and generated files
|
||||||
|
.docusaurus
|
||||||
|
|
||||||
|
# Serverless directories
|
||||||
|
.serverless/
|
||||||
|
|
||||||
|
# FuseBox cache
|
||||||
|
.fusebox/
|
||||||
|
|
||||||
|
# DynamoDB Local files
|
||||||
|
.dynamodb/
|
||||||
|
|
||||||
|
# TernJS port file
|
||||||
|
.tern-port
|
||||||
|
|
||||||
|
# Stores VSCode versions used for testing VSCode extensions
|
||||||
|
.vscode-test
|
||||||
|
|
||||||
|
# yarn v2
|
||||||
|
.yarn/cache
|
||||||
|
.yarn/unplugged
|
||||||
|
.yarn/build-state.yml
|
||||||
|
.yarn/install-state.gz
|
||||||
|
.pnp.*
|
||||||
|
|
||||||
|
### Node Patch ###
|
||||||
|
# Serverless Webpack directories
|
||||||
|
.webpack/
|
||||||
|
|
||||||
|
# Optional stylelint cache
|
||||||
|
|
||||||
|
# SvelteKit build / generate output
|
||||||
|
.svelte-kit
|
||||||
|
|
||||||
|
# End of https://www.toptal.com/developers/gitignore/api/node
|
|
@ -16,4 +16,4 @@ outputs:
|
||||||
description: If the version of Bun was cached.
|
description: If the version of Bun was cached.
|
||||||
runs:
|
runs:
|
||||||
using: node16
|
using: node16
|
||||||
main: dist/action.js
|
main: target/index.js
|
||||||
|
|
BIN
bun.lockb
BIN
bun.lockb
Binary file not shown.
17
dist/action.js
vendored
17
dist/action.js
vendored
|
@ -1,17 +0,0 @@
|
||||||
import { tmpdir } from "node:os";
|
|
||||||
import * as action from "@actions/core";
|
|
||||||
import setup from "./setup.js";
|
|
||||||
if (!process.env.RUNNER_TEMP) {
|
|
||||||
process.env.RUNNER_TEMP = tmpdir();
|
|
||||||
}
|
|
||||||
setup({
|
|
||||||
version: action.getInput("bun-version") || undefined,
|
|
||||||
customUrl: action.getInput("bun-download-url") || undefined,
|
|
||||||
})
|
|
||||||
.then(({ version, cacheHit }) => {
|
|
||||||
action.setOutput("bun-version", version);
|
|
||||||
action.setOutput("cache-hit", cacheHit);
|
|
||||||
})
|
|
||||||
.catch((error) => {
|
|
||||||
action.setFailed(error);
|
|
||||||
});
|
|
99
dist/setup.js
vendored
99
dist/setup.js
vendored
|
@ -1,99 +0,0 @@
|
||||||
import { homedir } from "node:os";
|
|
||||||
import { join } from "node:path";
|
|
||||||
import { readdir } from "node:fs/promises";
|
|
||||||
import * as action from "@actions/core";
|
|
||||||
import { downloadTool, extractZip } from "@actions/tool-cache";
|
|
||||||
import * as cache from "@actions/cache";
|
|
||||||
import { restoreCache, saveCache } from "@actions/cache";
|
|
||||||
import { mv } from "@actions/io";
|
|
||||||
import { getExecOutput } from "@actions/exec";
|
|
||||||
export default async (options) => {
|
|
||||||
const { url, cacheKey } = getDownloadUrl(options);
|
|
||||||
const cacheEnabled = cacheKey && cache.isFeatureAvailable();
|
|
||||||
const dir = join(homedir(), ".bun", "bin");
|
|
||||||
action.addPath(dir);
|
|
||||||
const path = join(dir, "bun");
|
|
||||||
let version;
|
|
||||||
let cacheHit = false;
|
|
||||||
if (cacheEnabled) {
|
|
||||||
const cacheRestored = await restoreCache([path], cacheKey);
|
|
||||||
if (cacheRestored) {
|
|
||||||
version = await verifyBun(path);
|
|
||||||
if (version) {
|
|
||||||
cacheHit = true;
|
|
||||||
action.info("Using a cached version of Bun.");
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
action.warning("Found a cached version of Bun, but it appears to be corrupted? Attempting to download a new version.");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (!cacheHit) {
|
|
||||||
action.info(`Downloading a new version of Bun: ${url}`);
|
|
||||||
const zipPath = await downloadTool(url);
|
|
||||||
const extractedPath = await extractZip(zipPath);
|
|
||||||
const exePath = await extractBun(extractedPath);
|
|
||||||
await mv(exePath, path);
|
|
||||||
version = await verifyBun(path);
|
|
||||||
}
|
|
||||||
if (!version) {
|
|
||||||
throw new Error("Downloaded a new version of Bun, but failed to check its version? Try again in debug mode.");
|
|
||||||
}
|
|
||||||
if (cacheEnabled) {
|
|
||||||
try {
|
|
||||||
await saveCache([path], cacheKey);
|
|
||||||
}
|
|
||||||
catch (error) {
|
|
||||||
action.warning("Failed to save Bun to cache.");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return {
|
|
||||||
version,
|
|
||||||
cacheHit,
|
|
||||||
};
|
|
||||||
};
|
|
||||||
function getDownloadUrl(options) {
|
|
||||||
if (options?.customUrl) {
|
|
||||||
return {
|
|
||||||
url: options.customUrl,
|
|
||||||
cacheKey: null,
|
|
||||||
};
|
|
||||||
}
|
|
||||||
const release = encodeURIComponent(options?.version ?? "latest");
|
|
||||||
const os = encodeURIComponent(options?.os ?? process.platform);
|
|
||||||
const arch = encodeURIComponent(options?.arch ?? process.arch);
|
|
||||||
const avx2 = encodeURIComponent(options?.avx2 ?? true);
|
|
||||||
const profile = encodeURIComponent(options?.profile ?? false);
|
|
||||||
const { href } = new URL(`${release}/${os}/${arch}?avx2=${avx2}&profile=${profile}`, "https://bun.sh/download/");
|
|
||||||
return {
|
|
||||||
url: href,
|
|
||||||
cacheKey: /^latest|canary|action/i.test(release)
|
|
||||||
? null
|
|
||||||
: `bun-${release}-${os}-${arch}-${avx2}-${profile}`,
|
|
||||||
};
|
|
||||||
}
|
|
||||||
async function extractBun(path) {
|
|
||||||
for (const entry of await readdir(path, { withFileTypes: true })) {
|
|
||||||
const { name } = entry;
|
|
||||||
const entryPath = join(path, name);
|
|
||||||
if (entry.isFile()) {
|
|
||||||
if (name === "bun") {
|
|
||||||
return entryPath;
|
|
||||||
}
|
|
||||||
if (/^bun.*\.zip/.test(name)) {
|
|
||||||
const extractedPath = await extractZip(entryPath);
|
|
||||||
return extractBun(extractedPath);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (/^bun/.test(name) && entry.isDirectory()) {
|
|
||||||
return extractBun(entryPath);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
throw new Error("Could not find executable: bun");
|
|
||||||
}
|
|
||||||
async function verifyBun(path) {
|
|
||||||
const { exitCode, stdout } = await getExecOutput(path, ["--version"], {
|
|
||||||
ignoreReturnCode: true,
|
|
||||||
});
|
|
||||||
return exitCode === 0 ? stdout.trim() : undefined;
|
|
||||||
}
|
|
1
node_modules/.bin/acorn
generated
vendored
1
node_modules/.bin/acorn
generated
vendored
|
@ -1 +0,0 @@
|
||||||
../acorn/bin/acorn
|
|
1
node_modules/.bin/esbuild
generated
vendored
1
node_modules/.bin/esbuild
generated
vendored
|
@ -1 +0,0 @@
|
||||||
../esbuild/bin/esbuild
|
|
18
node_modules/.bin/prettier
generated
vendored
18
node_modules/.bin/prettier
generated
vendored
|
@ -1 +1,17 @@
|
||||||
../prettier/bin-prettier.js
|
#!/bin/sh
|
||||||
|
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
|
||||||
|
|
||||||
|
case `uname` in
|
||||||
|
*CYGWIN*) basedir=`cygpath -w "$basedir"`;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if [ -z "$NODE_PATH" ]; then
|
||||||
|
export NODE_PATH="/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/prettier@2.8.4/node_modules/prettier/node_modules:/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/prettier@2.8.4/node_modules:/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/node_modules"
|
||||||
|
else
|
||||||
|
export NODE_PATH="/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/prettier@2.8.4/node_modules/prettier/node_modules:/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/prettier@2.8.4/node_modules:/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/node_modules:$NODE_PATH"
|
||||||
|
fi
|
||||||
|
if [ -x "$basedir/node" ]; then
|
||||||
|
exec "$basedir/node" "$basedir/../prettier/bin-prettier.js" "$@"
|
||||||
|
else
|
||||||
|
exec node "$basedir/../prettier/bin-prettier.js" "$@"
|
||||||
|
fi
|
||||||
|
|
1
node_modules/.bin/semver
generated
vendored
1
node_modules/.bin/semver
generated
vendored
|
@ -1 +0,0 @@
|
||||||
../semver/bin/semver.js
|
|
1
node_modules/.bin/ts-node
generated
vendored
1
node_modules/.bin/ts-node
generated
vendored
|
@ -1 +0,0 @@
|
||||||
../ts-node/dist/bin.js
|
|
1
node_modules/.bin/ts-node-cwd
generated
vendored
1
node_modules/.bin/ts-node-cwd
generated
vendored
|
@ -1 +0,0 @@
|
||||||
../ts-node/dist/bin-cwd.js
|
|
1
node_modules/.bin/ts-node-esm
generated
vendored
1
node_modules/.bin/ts-node-esm
generated
vendored
|
@ -1 +0,0 @@
|
||||||
../ts-node/dist/bin-esm.js
|
|
1
node_modules/.bin/ts-node-script
generated
vendored
1
node_modules/.bin/ts-node-script
generated
vendored
|
@ -1 +0,0 @@
|
||||||
../ts-node/dist/bin-script.js
|
|
1
node_modules/.bin/ts-node-transpile-only
generated
vendored
1
node_modules/.bin/ts-node-transpile-only
generated
vendored
|
@ -1 +0,0 @@
|
||||||
../ts-node/dist/bin-transpile.js
|
|
1
node_modules/.bin/ts-script
generated
vendored
1
node_modules/.bin/ts-script
generated
vendored
|
@ -1 +0,0 @@
|
||||||
../ts-node/dist/bin-script-deprecated.js
|
|
18
node_modules/.bin/tsc
generated
vendored
18
node_modules/.bin/tsc
generated
vendored
|
@ -1 +1,17 @@
|
||||||
../typescript/bin/tsc
|
#!/bin/sh
|
||||||
|
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
|
||||||
|
|
||||||
|
case `uname` in
|
||||||
|
*CYGWIN*) basedir=`cygpath -w "$basedir"`;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if [ -z "$NODE_PATH" ]; then
|
||||||
|
export NODE_PATH="/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/typescript@5.0.3/node_modules/typescript/bin/node_modules:/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/typescript@5.0.3/node_modules/typescript/node_modules:/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/typescript@5.0.3/node_modules:/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/node_modules"
|
||||||
|
else
|
||||||
|
export NODE_PATH="/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/typescript@5.0.3/node_modules/typescript/bin/node_modules:/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/typescript@5.0.3/node_modules/typescript/node_modules:/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/typescript@5.0.3/node_modules:/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/node_modules:$NODE_PATH"
|
||||||
|
fi
|
||||||
|
if [ -x "$basedir/node" ]; then
|
||||||
|
exec "$basedir/node" "$basedir/../typescript/bin/tsc" "$@"
|
||||||
|
else
|
||||||
|
exec node "$basedir/../typescript/bin/tsc" "$@"
|
||||||
|
fi
|
||||||
|
|
18
node_modules/.bin/tsserver
generated
vendored
18
node_modules/.bin/tsserver
generated
vendored
|
@ -1 +1,17 @@
|
||||||
../typescript/bin/tsserver
|
#!/bin/sh
|
||||||
|
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
|
||||||
|
|
||||||
|
case `uname` in
|
||||||
|
*CYGWIN*) basedir=`cygpath -w "$basedir"`;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if [ -z "$NODE_PATH" ]; then
|
||||||
|
export NODE_PATH="/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/typescript@5.0.3/node_modules/typescript/bin/node_modules:/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/typescript@5.0.3/node_modules/typescript/node_modules:/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/typescript@5.0.3/node_modules:/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/node_modules"
|
||||||
|
else
|
||||||
|
export NODE_PATH="/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/typescript@5.0.3/node_modules/typescript/bin/node_modules:/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/typescript@5.0.3/node_modules/typescript/node_modules:/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/typescript@5.0.3/node_modules:/mnt/c/Users/Jozef Steinhübl/Workspace/TypeScript/setup-bun/node_modules/.pnpm/node_modules:$NODE_PATH"
|
||||||
|
fi
|
||||||
|
if [ -x "$basedir/node" ]; then
|
||||||
|
exec "$basedir/node" "$basedir/../typescript/bin/tsserver" "$@"
|
||||||
|
else
|
||||||
|
exec node "$basedir/../typescript/bin/tsserver" "$@"
|
||||||
|
fi
|
||||||
|
|
1
node_modules/.bin/uuid
generated
vendored
1
node_modules/.bin/uuid
generated
vendored
|
@ -1 +0,0 @@
|
||||||
../uuid/bin/uuid
|
|
9
node_modules/@actions/cache/node_modules/@actions/glob/LICENSE.md
generated
vendored
9
node_modules/@actions/cache/node_modules/@actions/glob/LICENSE.md
generated
vendored
|
@ -1,9 +0,0 @@
|
||||||
The MIT License (MIT)
|
|
||||||
|
|
||||||
Copyright 2019 GitHub
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
113
node_modules/@actions/cache/node_modules/@actions/glob/README.md
generated
vendored
113
node_modules/@actions/cache/node_modules/@actions/glob/README.md
generated
vendored
|
@ -1,113 +0,0 @@
|
||||||
# `@actions/glob`
|
|
||||||
|
|
||||||
## Usage
|
|
||||||
|
|
||||||
### Basic
|
|
||||||
|
|
||||||
You can use this package to search for files matching glob patterns.
|
|
||||||
|
|
||||||
Relative paths and absolute paths are both allowed. Relative paths are rooted against the current working directory.
|
|
||||||
|
|
||||||
```js
|
|
||||||
const glob = require('@actions/glob');
|
|
||||||
|
|
||||||
const patterns = ['**/tar.gz', '**/tar.bz']
|
|
||||||
const globber = await glob.create(patterns.join('\n'))
|
|
||||||
const files = await globber.glob()
|
|
||||||
```
|
|
||||||
|
|
||||||
### Opt out of following symbolic links
|
|
||||||
|
|
||||||
```js
|
|
||||||
const glob = require('@actions/glob');
|
|
||||||
|
|
||||||
const globber = await glob.create('**', {followSymbolicLinks: false})
|
|
||||||
const files = await globber.glob()
|
|
||||||
```
|
|
||||||
|
|
||||||
### Iterator
|
|
||||||
|
|
||||||
When dealing with a large amount of results, consider iterating the results as they are returned:
|
|
||||||
|
|
||||||
```js
|
|
||||||
const glob = require('@actions/glob');
|
|
||||||
|
|
||||||
const globber = await glob.create('**')
|
|
||||||
for await (const file of globber.globGenerator()) {
|
|
||||||
console.log(file)
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
## Recommended action inputs
|
|
||||||
|
|
||||||
Glob follows symbolic links by default. Following is often appropriate unless deleting files.
|
|
||||||
|
|
||||||
Users may want to opt-out from following symbolic links for other reasons. For example,
|
|
||||||
excessive amounts of symbolic links can create the appearance of very, very many files
|
|
||||||
and slow the search.
|
|
||||||
|
|
||||||
When an action allows a user to specify input patterns, it is generally recommended to
|
|
||||||
allow users to opt-out from following symbolic links.
|
|
||||||
|
|
||||||
Snippet from `action.yml`:
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
inputs:
|
|
||||||
files:
|
|
||||||
description: 'Files to print'
|
|
||||||
required: true
|
|
||||||
follow-symbolic-links:
|
|
||||||
description: 'Indicates whether to follow symbolic links'
|
|
||||||
default: true
|
|
||||||
```
|
|
||||||
|
|
||||||
And corresponding toolkit consumption:
|
|
||||||
|
|
||||||
```js
|
|
||||||
const core = require('@actions/core')
|
|
||||||
const glob = require('@actions/glob')
|
|
||||||
|
|
||||||
const globOptions = {
|
|
||||||
followSymbolicLinks: core.getInput('follow-symbolic-links').toUpper() !== 'FALSE'
|
|
||||||
}
|
|
||||||
const globber = glob.create(core.getInput('files'), globOptions)
|
|
||||||
for await (const file of globber.globGenerator()) {
|
|
||||||
console.log(file)
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
## Patterns
|
|
||||||
|
|
||||||
### Glob behavior
|
|
||||||
|
|
||||||
Patterns `*`, `?`, `[...]`, `**` (globstar) are supported.
|
|
||||||
|
|
||||||
With the following behaviors:
|
|
||||||
- File names that begin with `.` may be included in the results
|
|
||||||
- Case insensitive on Windows
|
|
||||||
- Directory separator `/` and `\` both supported on Windows
|
|
||||||
|
|
||||||
### Tilde expansion
|
|
||||||
|
|
||||||
Supports basic tilde expansion, for current user HOME replacement only.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
- `~` may expand to /Users/johndoe
|
|
||||||
- `~/foo` may expand to /Users/johndoe/foo
|
|
||||||
|
|
||||||
### Comments
|
|
||||||
|
|
||||||
Patterns that begin with `#` are treated as comments.
|
|
||||||
|
|
||||||
### Exclude patterns
|
|
||||||
|
|
||||||
Leading `!` changes the meaning of an include pattern to exclude.
|
|
||||||
|
|
||||||
Multiple leading `!` flips the meaning.
|
|
||||||
|
|
||||||
### Escaping
|
|
||||||
|
|
||||||
Wrapping special characters in `[]` can be used to escape literal glob characters
|
|
||||||
in a file name. For example the literal file name `hello[a-z]` can be escaped as `hello[[]a-z]`.
|
|
||||||
|
|
||||||
On Linux/macOS `\` is also treated as an escape character.
|
|
10
node_modules/@actions/cache/node_modules/@actions/glob/lib/glob.d.ts
generated
vendored
10
node_modules/@actions/cache/node_modules/@actions/glob/lib/glob.d.ts
generated
vendored
|
@ -1,10 +0,0 @@
|
||||||
import { Globber } from './internal-globber';
|
|
||||||
import { GlobOptions } from './internal-glob-options';
|
|
||||||
export { Globber, GlobOptions };
|
|
||||||
/**
|
|
||||||
* Constructs a globber
|
|
||||||
*
|
|
||||||
* @param patterns Patterns separated by newlines
|
|
||||||
* @param options Glob options
|
|
||||||
*/
|
|
||||||
export declare function create(patterns: string, options?: GlobOptions): Promise<Globber>;
|
|
26
node_modules/@actions/cache/node_modules/@actions/glob/lib/glob.js
generated
vendored
26
node_modules/@actions/cache/node_modules/@actions/glob/lib/glob.js
generated
vendored
|
@ -1,26 +0,0 @@
|
||||||
"use strict";
|
|
||||||
var __awaiter = (this && this.__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) {
|
|
||||||
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) : adopt(result.value).then(fulfilled, rejected); }
|
|
||||||
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
||||||
});
|
|
||||||
};
|
|
||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
|
||||||
exports.create = void 0;
|
|
||||||
const internal_globber_1 = require("./internal-globber");
|
|
||||||
/**
|
|
||||||
* Constructs a globber
|
|
||||||
*
|
|
||||||
* @param patterns Patterns separated by newlines
|
|
||||||
* @param options Glob options
|
|
||||||
*/
|
|
||||||
function create(patterns, options) {
|
|
||||||
return __awaiter(this, void 0, void 0, function* () {
|
|
||||||
return yield internal_globber_1.DefaultGlobber.create(patterns, options);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
exports.create = create;
|
|
||||||
//# sourceMappingURL=glob.js.map
|
|
1
node_modules/@actions/cache/node_modules/@actions/glob/lib/glob.js.map
generated
vendored
1
node_modules/@actions/cache/node_modules/@actions/glob/lib/glob.js.map
generated
vendored
|
@ -1 +0,0 @@
|
||||||
{"version":3,"file":"glob.js","sourceRoot":"","sources":["../src/glob.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAA0D;AAK1D;;;;;GAKG;AACH,SAAsB,MAAM,CAC1B,QAAgB,EAChB,OAAqB;;QAErB,OAAO,MAAM,iCAAc,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IACvD,CAAC;CAAA;AALD,wBAKC"}
|
|
|
@ -1,5 +0,0 @@
|
||||||
import { GlobOptions } from './internal-glob-options';
|
|
||||||
/**
|
|
||||||
* Returns a copy with defaults filled in.
|
|
||||||
*/
|
|
||||||
export declare function getOptions(copy?: GlobOptions): GlobOptions;
|
|
|
@ -1,50 +0,0 @@
|
||||||
"use strict";
|
|
||||||
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
||||||
if (k2 === undefined) k2 = k;
|
|
||||||
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
||||||
}) : (function(o, m, k, k2) {
|
|
||||||
if (k2 === undefined) k2 = k;
|
|
||||||
o[k2] = m[k];
|
|
||||||
}));
|
|
||||||
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
||||||
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
||||||
}) : function(o, v) {
|
|
||||||
o["default"] = v;
|
|
||||||
});
|
|
||||||
var __importStar = (this && this.__importStar) || function (mod) {
|
|
||||||
if (mod && mod.__esModule) return mod;
|
|
||||||
var result = {};
|
|
||||||
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
||||||
__setModuleDefault(result, mod);
|
|
||||||
return result;
|
|
||||||
};
|
|
||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
|
||||||
exports.getOptions = void 0;
|
|
||||||
const core = __importStar(require("@actions/core"));
|
|
||||||
/**
|
|
||||||
* Returns a copy with defaults filled in.
|
|
||||||
*/
|
|
||||||
function getOptions(copy) {
|
|
||||||
const result = {
|
|
||||||
followSymbolicLinks: true,
|
|
||||||
implicitDescendants: true,
|
|
||||||
omitBrokenSymbolicLinks: true
|
|
||||||
};
|
|
||||||
if (copy) {
|
|
||||||
if (typeof copy.followSymbolicLinks === 'boolean') {
|
|
||||||
result.followSymbolicLinks = copy.followSymbolicLinks;
|
|
||||||
core.debug(`followSymbolicLinks '${result.followSymbolicLinks}'`);
|
|
||||||
}
|
|
||||||
if (typeof copy.implicitDescendants === 'boolean') {
|
|
||||||
result.implicitDescendants = copy.implicitDescendants;
|
|
||||||
core.debug(`implicitDescendants '${result.implicitDescendants}'`);
|
|
||||||
}
|
|
||||||
if (typeof copy.omitBrokenSymbolicLinks === 'boolean') {
|
|
||||||
result.omitBrokenSymbolicLinks = copy.omitBrokenSymbolicLinks;
|
|
||||||
core.debug(`omitBrokenSymbolicLinks '${result.omitBrokenSymbolicLinks}'`);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
exports.getOptions = getOptions;
|
|
||||||
//# sourceMappingURL=internal-glob-options-helper.js.map
|
|
|
@ -1 +0,0 @@
|
||||||
{"version":3,"file":"internal-glob-options-helper.js","sourceRoot":"","sources":["../src/internal-glob-options-helper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAqC;AAGrC;;GAEG;AACH,SAAgB,UAAU,CAAC,IAAkB;IAC3C,MAAM,MAAM,GAAgB;QAC1B,mBAAmB,EAAE,IAAI;QACzB,mBAAmB,EAAE,IAAI;QACzB,uBAAuB,EAAE,IAAI;KAC9B,CAAA;IAED,IAAI,IAAI,EAAE;QACR,IAAI,OAAO,IAAI,CAAC,mBAAmB,KAAK,SAAS,EAAE;YACjD,MAAM,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAA;YACrD,IAAI,CAAC,KAAK,CAAC,wBAAwB,MAAM,CAAC,mBAAmB,GAAG,CAAC,CAAA;SAClE;QAED,IAAI,OAAO,IAAI,CAAC,mBAAmB,KAAK,SAAS,EAAE;YACjD,MAAM,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAA;YACrD,IAAI,CAAC,KAAK,CAAC,wBAAwB,MAAM,CAAC,mBAAmB,GAAG,CAAC,CAAA;SAClE;QAED,IAAI,OAAO,IAAI,CAAC,uBAAuB,KAAK,SAAS,EAAE;YACrD,MAAM,CAAC,uBAAuB,GAAG,IAAI,CAAC,uBAAuB,CAAA;YAC7D,IAAI,CAAC,KAAK,CAAC,4BAA4B,MAAM,CAAC,uBAAuB,GAAG,CAAC,CAAA;SAC1E;KACF;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAzBD,gCAyBC"}
|
|
29
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-glob-options.d.ts
generated
vendored
29
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-glob-options.d.ts
generated
vendored
|
@ -1,29 +0,0 @@
|
||||||
/**
|
|
||||||
* Options to control globbing behavior
|
|
||||||
*/
|
|
||||||
export interface GlobOptions {
|
|
||||||
/**
|
|
||||||
* Indicates whether to follow symbolic links. Generally should set to false
|
|
||||||
* when deleting files.
|
|
||||||
*
|
|
||||||
* @default true
|
|
||||||
*/
|
|
||||||
followSymbolicLinks?: boolean;
|
|
||||||
/**
|
|
||||||
* Indicates whether directories that match a glob pattern, should implicitly
|
|
||||||
* cause all descendant paths to be matched.
|
|
||||||
*
|
|
||||||
* For example, given the directory `my-dir`, the following glob patterns
|
|
||||||
* would produce the same results: `my-dir/**`, `my-dir/`, `my-dir`
|
|
||||||
*
|
|
||||||
* @default true
|
|
||||||
*/
|
|
||||||
implicitDescendants?: boolean;
|
|
||||||
/**
|
|
||||||
* Indicates whether broken symbolic should be ignored and omitted from the
|
|
||||||
* result set. Otherwise an error will be thrown.
|
|
||||||
*
|
|
||||||
* @default true
|
|
||||||
*/
|
|
||||||
omitBrokenSymbolicLinks?: boolean;
|
|
||||||
}
|
|
3
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-glob-options.js
generated
vendored
3
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-glob-options.js
generated
vendored
|
@ -1,3 +0,0 @@
|
||||||
"use strict";
|
|
||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
|
||||||
//# sourceMappingURL=internal-glob-options.js.map
|
|
|
@ -1 +0,0 @@
|
||||||
{"version":3,"file":"internal-glob-options.js","sourceRoot":"","sources":["../src/internal-glob-options.ts"],"names":[],"mappings":""}
|
|
42
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-globber.d.ts
generated
vendored
42
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-globber.d.ts
generated
vendored
|
@ -1,42 +0,0 @@
|
||||||
import { GlobOptions } from './internal-glob-options';
|
|
||||||
export { GlobOptions };
|
|
||||||
/**
|
|
||||||
* Used to match files and directories
|
|
||||||
*/
|
|
||||||
export interface Globber {
|
|
||||||
/**
|
|
||||||
* Returns the search path preceding the first glob segment, from each pattern.
|
|
||||||
* Duplicates and descendants of other paths are filtered out.
|
|
||||||
*
|
|
||||||
* Example 1: The patterns `/foo/*` and `/bar/*` returns `/foo` and `/bar`.
|
|
||||||
*
|
|
||||||
* Example 2: The patterns `/foo/*` and `/foo/bar/*` returns `/foo`.
|
|
||||||
*/
|
|
||||||
getSearchPaths(): string[];
|
|
||||||
/**
|
|
||||||
* Returns files and directories matching the glob patterns.
|
|
||||||
*
|
|
||||||
* Order of the results is not guaranteed.
|
|
||||||
*/
|
|
||||||
glob(): Promise<string[]>;
|
|
||||||
/**
|
|
||||||
* Returns files and directories matching the glob patterns.
|
|
||||||
*
|
|
||||||
* Order of the results is not guaranteed.
|
|
||||||
*/
|
|
||||||
globGenerator(): AsyncGenerator<string, void>;
|
|
||||||
}
|
|
||||||
export declare class DefaultGlobber implements Globber {
|
|
||||||
private readonly options;
|
|
||||||
private readonly patterns;
|
|
||||||
private readonly searchPaths;
|
|
||||||
private constructor();
|
|
||||||
getSearchPaths(): string[];
|
|
||||||
glob(): Promise<string[]>;
|
|
||||||
globGenerator(): AsyncGenerator<string, void>;
|
|
||||||
/**
|
|
||||||
* Constructs a DefaultGlobber
|
|
||||||
*/
|
|
||||||
static create(patterns: string, options?: GlobOptions): Promise<DefaultGlobber>;
|
|
||||||
private static stat;
|
|
||||||
}
|
|
235
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-globber.js
generated
vendored
235
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-globber.js
generated
vendored
|
@ -1,235 +0,0 @@
|
||||||
"use strict";
|
|
||||||
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
||||||
if (k2 === undefined) k2 = k;
|
|
||||||
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
||||||
}) : (function(o, m, k, k2) {
|
|
||||||
if (k2 === undefined) k2 = k;
|
|
||||||
o[k2] = m[k];
|
|
||||||
}));
|
|
||||||
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
||||||
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
||||||
}) : function(o, v) {
|
|
||||||
o["default"] = v;
|
|
||||||
});
|
|
||||||
var __importStar = (this && this.__importStar) || function (mod) {
|
|
||||||
if (mod && mod.__esModule) return mod;
|
|
||||||
var result = {};
|
|
||||||
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
||||||
__setModuleDefault(result, mod);
|
|
||||||
return result;
|
|
||||||
};
|
|
||||||
var __awaiter = (this && this.__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) {
|
|
||||||
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) : adopt(result.value).then(fulfilled, rejected); }
|
|
||||||
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
||||||
});
|
|
||||||
};
|
|
||||||
var __asyncValues = (this && this.__asyncValues) || function (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); }
|
|
||||||
};
|
|
||||||
var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
|
|
||||||
var __asyncGenerator = (this && this.__asyncGenerator) || function (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]); }
|
|
||||||
};
|
|
||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
|
||||||
exports.DefaultGlobber = void 0;
|
|
||||||
const core = __importStar(require("@actions/core"));
|
|
||||||
const fs = __importStar(require("fs"));
|
|
||||||
const globOptionsHelper = __importStar(require("./internal-glob-options-helper"));
|
|
||||||
const path = __importStar(require("path"));
|
|
||||||
const patternHelper = __importStar(require("./internal-pattern-helper"));
|
|
||||||
const internal_match_kind_1 = require("./internal-match-kind");
|
|
||||||
const internal_pattern_1 = require("./internal-pattern");
|
|
||||||
const internal_search_state_1 = require("./internal-search-state");
|
|
||||||
const IS_WINDOWS = process.platform === 'win32';
|
|
||||||
class DefaultGlobber {
|
|
||||||
constructor(options) {
|
|
||||||
this.patterns = [];
|
|
||||||
this.searchPaths = [];
|
|
||||||
this.options = globOptionsHelper.getOptions(options);
|
|
||||||
}
|
|
||||||
getSearchPaths() {
|
|
||||||
// Return a copy
|
|
||||||
return this.searchPaths.slice();
|
|
||||||
}
|
|
||||||
glob() {
|
|
||||||
var e_1, _a;
|
|
||||||
return __awaiter(this, void 0, void 0, function* () {
|
|
||||||
const result = [];
|
|
||||||
try {
|
|
||||||
for (var _b = __asyncValues(this.globGenerator()), _c; _c = yield _b.next(), !_c.done;) {
|
|
||||||
const itemPath = _c.value;
|
|
||||||
result.push(itemPath);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
||||||
finally {
|
|
||||||
try {
|
|
||||||
if (_c && !_c.done && (_a = _b.return)) yield _a.call(_b);
|
|
||||||
}
|
|
||||||
finally { if (e_1) throw e_1.error; }
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
globGenerator() {
|
|
||||||
return __asyncGenerator(this, arguments, function* globGenerator_1() {
|
|
||||||
// Fill in defaults options
|
|
||||||
const options = globOptionsHelper.getOptions(this.options);
|
|
||||||
// Implicit descendants?
|
|
||||||
const patterns = [];
|
|
||||||
for (const pattern of this.patterns) {
|
|
||||||
patterns.push(pattern);
|
|
||||||
if (options.implicitDescendants &&
|
|
||||||
(pattern.trailingSeparator ||
|
|
||||||
pattern.segments[pattern.segments.length - 1] !== '**')) {
|
|
||||||
patterns.push(new internal_pattern_1.Pattern(pattern.negate, true, pattern.segments.concat('**')));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// Push the search paths
|
|
||||||
const stack = [];
|
|
||||||
for (const searchPath of patternHelper.getSearchPaths(patterns)) {
|
|
||||||
core.debug(`Search path '${searchPath}'`);
|
|
||||||
// Exists?
|
|
||||||
try {
|
|
||||||
// Intentionally using lstat. Detection for broken symlink
|
|
||||||
// will be performed later (if following symlinks).
|
|
||||||
yield __await(fs.promises.lstat(searchPath));
|
|
||||||
}
|
|
||||||
catch (err) {
|
|
||||||
if (err.code === 'ENOENT') {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
throw err;
|
|
||||||
}
|
|
||||||
stack.unshift(new internal_search_state_1.SearchState(searchPath, 1));
|
|
||||||
}
|
|
||||||
// Search
|
|
||||||
const traversalChain = []; // used to detect cycles
|
|
||||||
while (stack.length) {
|
|
||||||
// Pop
|
|
||||||
const item = stack.pop();
|
|
||||||
// Match?
|
|
||||||
const match = patternHelper.match(patterns, item.path);
|
|
||||||
const partialMatch = !!match || patternHelper.partialMatch(patterns, item.path);
|
|
||||||
if (!match && !partialMatch) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
// Stat
|
|
||||||
const stats = yield __await(DefaultGlobber.stat(item, options, traversalChain)
|
|
||||||
// Broken symlink, or symlink cycle detected, or no longer exists
|
|
||||||
);
|
|
||||||
// Broken symlink, or symlink cycle detected, or no longer exists
|
|
||||||
if (!stats) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
// Directory
|
|
||||||
if (stats.isDirectory()) {
|
|
||||||
// Matched
|
|
||||||
if (match & internal_match_kind_1.MatchKind.Directory) {
|
|
||||||
yield yield __await(item.path);
|
|
||||||
}
|
|
||||||
// Descend?
|
|
||||||
else if (!partialMatch) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
// Push the child items in reverse
|
|
||||||
const childLevel = item.level + 1;
|
|
||||||
const childItems = (yield __await(fs.promises.readdir(item.path))).map(x => new internal_search_state_1.SearchState(path.join(item.path, x), childLevel));
|
|
||||||
stack.push(...childItems.reverse());
|
|
||||||
}
|
|
||||||
// File
|
|
||||||
else if (match & internal_match_kind_1.MatchKind.File) {
|
|
||||||
yield yield __await(item.path);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Constructs a DefaultGlobber
|
|
||||||
*/
|
|
||||||
static create(patterns, options) {
|
|
||||||
return __awaiter(this, void 0, void 0, function* () {
|
|
||||||
const result = new DefaultGlobber(options);
|
|
||||||
if (IS_WINDOWS) {
|
|
||||||
patterns = patterns.replace(/\r\n/g, '\n');
|
|
||||||
patterns = patterns.replace(/\r/g, '\n');
|
|
||||||
}
|
|
||||||
const lines = patterns.split('\n').map(x => x.trim());
|
|
||||||
for (const line of lines) {
|
|
||||||
// Empty or comment
|
|
||||||
if (!line || line.startsWith('#')) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
// Pattern
|
|
||||||
else {
|
|
||||||
result.patterns.push(new internal_pattern_1.Pattern(line));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
result.searchPaths.push(...patternHelper.getSearchPaths(result.patterns));
|
|
||||||
return result;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
static stat(item, options, traversalChain) {
|
|
||||||
return __awaiter(this, void 0, void 0, function* () {
|
|
||||||
// Note:
|
|
||||||
// `stat` returns info about the target of a symlink (or symlink chain)
|
|
||||||
// `lstat` returns info about a symlink itself
|
|
||||||
let stats;
|
|
||||||
if (options.followSymbolicLinks) {
|
|
||||||
try {
|
|
||||||
// Use `stat` (following symlinks)
|
|
||||||
stats = yield fs.promises.stat(item.path);
|
|
||||||
}
|
|
||||||
catch (err) {
|
|
||||||
if (err.code === 'ENOENT') {
|
|
||||||
if (options.omitBrokenSymbolicLinks) {
|
|
||||||
core.debug(`Broken symlink '${item.path}'`);
|
|
||||||
return undefined;
|
|
||||||
}
|
|
||||||
throw new Error(`No information found for the path '${item.path}'. This may indicate a broken symbolic link.`);
|
|
||||||
}
|
|
||||||
throw err;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
// Use `lstat` (not following symlinks)
|
|
||||||
stats = yield fs.promises.lstat(item.path);
|
|
||||||
}
|
|
||||||
// Note, isDirectory() returns false for the lstat of a symlink
|
|
||||||
if (stats.isDirectory() && options.followSymbolicLinks) {
|
|
||||||
// Get the realpath
|
|
||||||
const realPath = yield fs.promises.realpath(item.path);
|
|
||||||
// Fixup the traversal chain to match the item level
|
|
||||||
while (traversalChain.length >= item.level) {
|
|
||||||
traversalChain.pop();
|
|
||||||
}
|
|
||||||
// Test for a cycle
|
|
||||||
if (traversalChain.some((x) => x === realPath)) {
|
|
||||||
core.debug(`Symlink cycle detected for path '${item.path}' and realpath '${realPath}'`);
|
|
||||||
return undefined;
|
|
||||||
}
|
|
||||||
// Update the traversal chain
|
|
||||||
traversalChain.push(realPath);
|
|
||||||
}
|
|
||||||
return stats;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
exports.DefaultGlobber = DefaultGlobber;
|
|
||||||
//# sourceMappingURL=internal-globber.js.map
|
|
1
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-globber.js.map
generated
vendored
1
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-globber.js.map
generated
vendored
|
@ -1 +0,0 @@
|
||||||
{"version":3,"file":"internal-globber.js","sourceRoot":"","sources":["../src/internal-globber.ts"],"names":[],"mappings":"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"}
|
|
13
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-match-kind.d.ts
generated
vendored
13
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-match-kind.d.ts
generated
vendored
|
@ -1,13 +0,0 @@
|
||||||
/**
|
|
||||||
* Indicates whether a pattern matches a path
|
|
||||||
*/
|
|
||||||
export declare enum MatchKind {
|
|
||||||
/** Not matched */
|
|
||||||
None = 0,
|
|
||||||
/** Matched if the path is a directory */
|
|
||||||
Directory = 1,
|
|
||||||
/** Matched if the path is a regular file */
|
|
||||||
File = 2,
|
|
||||||
/** Matched */
|
|
||||||
All = 3
|
|
||||||
}
|
|
18
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-match-kind.js
generated
vendored
18
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-match-kind.js
generated
vendored
|
@ -1,18 +0,0 @@
|
||||||
"use strict";
|
|
||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
|
||||||
exports.MatchKind = void 0;
|
|
||||||
/**
|
|
||||||
* Indicates whether a pattern matches a path
|
|
||||||
*/
|
|
||||||
var MatchKind;
|
|
||||||
(function (MatchKind) {
|
|
||||||
/** Not matched */
|
|
||||||
MatchKind[MatchKind["None"] = 0] = "None";
|
|
||||||
/** Matched if the path is a directory */
|
|
||||||
MatchKind[MatchKind["Directory"] = 1] = "Directory";
|
|
||||||
/** Matched if the path is a regular file */
|
|
||||||
MatchKind[MatchKind["File"] = 2] = "File";
|
|
||||||
/** Matched */
|
|
||||||
MatchKind[MatchKind["All"] = 3] = "All";
|
|
||||||
})(MatchKind = exports.MatchKind || (exports.MatchKind = {}));
|
|
||||||
//# sourceMappingURL=internal-match-kind.js.map
|
|
|
@ -1 +0,0 @@
|
||||||
{"version":3,"file":"internal-match-kind.js","sourceRoot":"","sources":["../src/internal-match-kind.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,SAYX;AAZD,WAAY,SAAS;IACnB,kBAAkB;IAClB,yCAAQ,CAAA;IAER,yCAAyC;IACzC,mDAAa,CAAA;IAEb,4CAA4C;IAC5C,yCAAQ,CAAA;IAER,cAAc;IACd,uCAAsB,CAAA;AACxB,CAAC,EAZW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAYpB"}
|
|
42
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-path-helper.d.ts
generated
vendored
42
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-path-helper.d.ts
generated
vendored
|
@ -1,42 +0,0 @@
|
||||||
/**
|
|
||||||
* Similar to path.dirname except normalizes the path separators and slightly better handling for Windows UNC paths.
|
|
||||||
*
|
|
||||||
* For example, on Linux/macOS:
|
|
||||||
* - `/ => /`
|
|
||||||
* - `/hello => /`
|
|
||||||
*
|
|
||||||
* For example, on Windows:
|
|
||||||
* - `C:\ => C:\`
|
|
||||||
* - `C:\hello => C:\`
|
|
||||||
* - `C: => C:`
|
|
||||||
* - `C:hello => C:`
|
|
||||||
* - `\ => \`
|
|
||||||
* - `\hello => \`
|
|
||||||
* - `\\hello => \\hello`
|
|
||||||
* - `\\hello\world => \\hello\world`
|
|
||||||
*/
|
|
||||||
export declare function dirname(p: string): string;
|
|
||||||
/**
|
|
||||||
* Roots the path if not already rooted. On Windows, relative roots like `\`
|
|
||||||
* or `C:` are expanded based on the current working directory.
|
|
||||||
*/
|
|
||||||
export declare function ensureAbsoluteRoot(root: string, itemPath: string): string;
|
|
||||||
/**
|
|
||||||
* On Linux/macOS, true if path starts with `/`. On Windows, true for paths like:
|
|
||||||
* `\\hello\share` and `C:\hello` (and using alternate separator).
|
|
||||||
*/
|
|
||||||
export declare function hasAbsoluteRoot(itemPath: string): boolean;
|
|
||||||
/**
|
|
||||||
* On Linux/macOS, true if path starts with `/`. On Windows, true for paths like:
|
|
||||||
* `\`, `\hello`, `\\hello\share`, `C:`, and `C:\hello` (and using alternate separator).
|
|
||||||
*/
|
|
||||||
export declare function hasRoot(itemPath: string): boolean;
|
|
||||||
/**
|
|
||||||
* Removes redundant slashes and converts `/` to `\` on Windows
|
|
||||||
*/
|
|
||||||
export declare function normalizeSeparators(p: string): string;
|
|
||||||
/**
|
|
||||||
* Normalizes the path separators and trims the trailing separator (when safe).
|
|
||||||
* For example, `/foo/ => /foo` but `/ => /`
|
|
||||||
*/
|
|
||||||
export declare function safeTrimTrailingSeparator(p: string): string;
|
|
198
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-path-helper.js
generated
vendored
198
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-path-helper.js
generated
vendored
|
@ -1,198 +0,0 @@
|
||||||
"use strict";
|
|
||||||
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
||||||
if (k2 === undefined) k2 = k;
|
|
||||||
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
||||||
}) : (function(o, m, k, k2) {
|
|
||||||
if (k2 === undefined) k2 = k;
|
|
||||||
o[k2] = m[k];
|
|
||||||
}));
|
|
||||||
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
||||||
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
||||||
}) : function(o, v) {
|
|
||||||
o["default"] = v;
|
|
||||||
});
|
|
||||||
var __importStar = (this && this.__importStar) || function (mod) {
|
|
||||||
if (mod && mod.__esModule) return mod;
|
|
||||||
var result = {};
|
|
||||||
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
||||||
__setModuleDefault(result, mod);
|
|
||||||
return result;
|
|
||||||
};
|
|
||||||
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
||||||
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
||||||
};
|
|
||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
|
||||||
exports.safeTrimTrailingSeparator = exports.normalizeSeparators = exports.hasRoot = exports.hasAbsoluteRoot = exports.ensureAbsoluteRoot = exports.dirname = void 0;
|
|
||||||
const path = __importStar(require("path"));
|
|
||||||
const assert_1 = __importDefault(require("assert"));
|
|
||||||
const IS_WINDOWS = process.platform === 'win32';
|
|
||||||
/**
|
|
||||||
* Similar to path.dirname except normalizes the path separators and slightly better handling for Windows UNC paths.
|
|
||||||
*
|
|
||||||
* For example, on Linux/macOS:
|
|
||||||
* - `/ => /`
|
|
||||||
* - `/hello => /`
|
|
||||||
*
|
|
||||||
* For example, on Windows:
|
|
||||||
* - `C:\ => C:\`
|
|
||||||
* - `C:\hello => C:\`
|
|
||||||
* - `C: => C:`
|
|
||||||
* - `C:hello => C:`
|
|
||||||
* - `\ => \`
|
|
||||||
* - `\hello => \`
|
|
||||||
* - `\\hello => \\hello`
|
|
||||||
* - `\\hello\world => \\hello\world`
|
|
||||||
*/
|
|
||||||
function dirname(p) {
|
|
||||||
// Normalize slashes and trim unnecessary trailing slash
|
|
||||||
p = safeTrimTrailingSeparator(p);
|
|
||||||
// Windows UNC root, e.g. \\hello or \\hello\world
|
|
||||||
if (IS_WINDOWS && /^\\\\[^\\]+(\\[^\\]+)?$/.test(p)) {
|
|
||||||
return p;
|
|
||||||
}
|
|
||||||
// Get dirname
|
|
||||||
let result = path.dirname(p);
|
|
||||||
// Trim trailing slash for Windows UNC root, e.g. \\hello\world\
|
|
||||||
if (IS_WINDOWS && /^\\\\[^\\]+\\[^\\]+\\$/.test(result)) {
|
|
||||||
result = safeTrimTrailingSeparator(result);
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
exports.dirname = dirname;
|
|
||||||
/**
|
|
||||||
* Roots the path if not already rooted. On Windows, relative roots like `\`
|
|
||||||
* or `C:` are expanded based on the current working directory.
|
|
||||||
*/
|
|
||||||
function ensureAbsoluteRoot(root, itemPath) {
|
|
||||||
assert_1.default(root, `ensureAbsoluteRoot parameter 'root' must not be empty`);
|
|
||||||
assert_1.default(itemPath, `ensureAbsoluteRoot parameter 'itemPath' must not be empty`);
|
|
||||||
// Already rooted
|
|
||||||
if (hasAbsoluteRoot(itemPath)) {
|
|
||||||
return itemPath;
|
|
||||||
}
|
|
||||||
// Windows
|
|
||||||
if (IS_WINDOWS) {
|
|
||||||
// Check for itemPath like C: or C:foo
|
|
||||||
if (itemPath.match(/^[A-Z]:[^\\/]|^[A-Z]:$/i)) {
|
|
||||||
let cwd = process.cwd();
|
|
||||||
assert_1.default(cwd.match(/^[A-Z]:\\/i), `Expected current directory to start with an absolute drive root. Actual '${cwd}'`);
|
|
||||||
// Drive letter matches cwd? Expand to cwd
|
|
||||||
if (itemPath[0].toUpperCase() === cwd[0].toUpperCase()) {
|
|
||||||
// Drive only, e.g. C:
|
|
||||||
if (itemPath.length === 2) {
|
|
||||||
// Preserve specified drive letter case (upper or lower)
|
|
||||||
return `${itemPath[0]}:\\${cwd.substr(3)}`;
|
|
||||||
}
|
|
||||||
// Drive + path, e.g. C:foo
|
|
||||||
else {
|
|
||||||
if (!cwd.endsWith('\\')) {
|
|
||||||
cwd += '\\';
|
|
||||||
}
|
|
||||||
// Preserve specified drive letter case (upper or lower)
|
|
||||||
return `${itemPath[0]}:\\${cwd.substr(3)}${itemPath.substr(2)}`;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// Different drive
|
|
||||||
else {
|
|
||||||
return `${itemPath[0]}:\\${itemPath.substr(2)}`;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// Check for itemPath like \ or \foo
|
|
||||||
else if (normalizeSeparators(itemPath).match(/^\\$|^\\[^\\]/)) {
|
|
||||||
const cwd = process.cwd();
|
|
||||||
assert_1.default(cwd.match(/^[A-Z]:\\/i), `Expected current directory to start with an absolute drive root. Actual '${cwd}'`);
|
|
||||||
return `${cwd[0]}:\\${itemPath.substr(1)}`;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
assert_1.default(hasAbsoluteRoot(root), `ensureAbsoluteRoot parameter 'root' must have an absolute root`);
|
|
||||||
// Otherwise ensure root ends with a separator
|
|
||||||
if (root.endsWith('/') || (IS_WINDOWS && root.endsWith('\\'))) {
|
|
||||||
// Intentionally empty
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
// Append separator
|
|
||||||
root += path.sep;
|
|
||||||
}
|
|
||||||
return root + itemPath;
|
|
||||||
}
|
|
||||||
exports.ensureAbsoluteRoot = ensureAbsoluteRoot;
|
|
||||||
/**
|
|
||||||
* On Linux/macOS, true if path starts with `/`. On Windows, true for paths like:
|
|
||||||
* `\\hello\share` and `C:\hello` (and using alternate separator).
|
|
||||||
*/
|
|
||||||
function hasAbsoluteRoot(itemPath) {
|
|
||||||
assert_1.default(itemPath, `hasAbsoluteRoot parameter 'itemPath' must not be empty`);
|
|
||||||
// Normalize separators
|
|
||||||
itemPath = normalizeSeparators(itemPath);
|
|
||||||
// Windows
|
|
||||||
if (IS_WINDOWS) {
|
|
||||||
// E.g. \\hello\share or C:\hello
|
|
||||||
return itemPath.startsWith('\\\\') || /^[A-Z]:\\/i.test(itemPath);
|
|
||||||
}
|
|
||||||
// E.g. /hello
|
|
||||||
return itemPath.startsWith('/');
|
|
||||||
}
|
|
||||||
exports.hasAbsoluteRoot = hasAbsoluteRoot;
|
|
||||||
/**
|
|
||||||
* On Linux/macOS, true if path starts with `/`. On Windows, true for paths like:
|
|
||||||
* `\`, `\hello`, `\\hello\share`, `C:`, and `C:\hello` (and using alternate separator).
|
|
||||||
*/
|
|
||||||
function hasRoot(itemPath) {
|
|
||||||
assert_1.default(itemPath, `isRooted parameter 'itemPath' must not be empty`);
|
|
||||||
// Normalize separators
|
|
||||||
itemPath = normalizeSeparators(itemPath);
|
|
||||||
// Windows
|
|
||||||
if (IS_WINDOWS) {
|
|
||||||
// E.g. \ or \hello or \\hello
|
|
||||||
// E.g. C: or C:\hello
|
|
||||||
return itemPath.startsWith('\\') || /^[A-Z]:/i.test(itemPath);
|
|
||||||
}
|
|
||||||
// E.g. /hello
|
|
||||||
return itemPath.startsWith('/');
|
|
||||||
}
|
|
||||||
exports.hasRoot = hasRoot;
|
|
||||||
/**
|
|
||||||
* Removes redundant slashes and converts `/` to `\` on Windows
|
|
||||||
*/
|
|
||||||
function normalizeSeparators(p) {
|
|
||||||
p = p || '';
|
|
||||||
// Windows
|
|
||||||
if (IS_WINDOWS) {
|
|
||||||
// Convert slashes on Windows
|
|
||||||
p = p.replace(/\//g, '\\');
|
|
||||||
// Remove redundant slashes
|
|
||||||
const isUnc = /^\\\\+[^\\]/.test(p); // e.g. \\hello
|
|
||||||
return (isUnc ? '\\' : '') + p.replace(/\\\\+/g, '\\'); // preserve leading \\ for UNC
|
|
||||||
}
|
|
||||||
// Remove redundant slashes
|
|
||||||
return p.replace(/\/\/+/g, '/');
|
|
||||||
}
|
|
||||||
exports.normalizeSeparators = normalizeSeparators;
|
|
||||||
/**
|
|
||||||
* Normalizes the path separators and trims the trailing separator (when safe).
|
|
||||||
* For example, `/foo/ => /foo` but `/ => /`
|
|
||||||
*/
|
|
||||||
function safeTrimTrailingSeparator(p) {
|
|
||||||
// Short-circuit if empty
|
|
||||||
if (!p) {
|
|
||||||
return '';
|
|
||||||
}
|
|
||||||
// Normalize separators
|
|
||||||
p = normalizeSeparators(p);
|
|
||||||
// No trailing slash
|
|
||||||
if (!p.endsWith(path.sep)) {
|
|
||||||
return p;
|
|
||||||
}
|
|
||||||
// Check '/' on Linux/macOS and '\' on Windows
|
|
||||||
if (p === path.sep) {
|
|
||||||
return p;
|
|
||||||
}
|
|
||||||
// On Windows check if drive root. E.g. C:\
|
|
||||||
if (IS_WINDOWS && /^[A-Z]:\\$/i.test(p)) {
|
|
||||||
return p;
|
|
||||||
}
|
|
||||||
// Otherwise trim trailing slash
|
|
||||||
return p.substr(0, p.length - 1);
|
|
||||||
}
|
|
||||||
exports.safeTrimTrailingSeparator = safeTrimTrailingSeparator;
|
|
||||||
//# sourceMappingURL=internal-path-helper.js.map
|
|
|
@ -1 +0,0 @@
|
||||||
{"version":3,"file":"internal-path-helper.js","sourceRoot":"","sources":["../src/internal-path-helper.ts"],"names":[],"mappings":"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"}
|
|
15
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-path.d.ts
generated
vendored
15
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-path.d.ts
generated
vendored
|
@ -1,15 +0,0 @@
|
||||||
/**
|
|
||||||
* Helper class for parsing paths into segments
|
|
||||||
*/
|
|
||||||
export declare class Path {
|
|
||||||
segments: string[];
|
|
||||||
/**
|
|
||||||
* Constructs a Path
|
|
||||||
* @param itemPath Path or array of segments
|
|
||||||
*/
|
|
||||||
constructor(itemPath: string | string[]);
|
|
||||||
/**
|
|
||||||
* Converts the path to it's string representation
|
|
||||||
*/
|
|
||||||
toString(): string;
|
|
||||||
}
|
|
113
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-path.js
generated
vendored
113
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-path.js
generated
vendored
|
@ -1,113 +0,0 @@
|
||||||
"use strict";
|
|
||||||
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
||||||
if (k2 === undefined) k2 = k;
|
|
||||||
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
||||||
}) : (function(o, m, k, k2) {
|
|
||||||
if (k2 === undefined) k2 = k;
|
|
||||||
o[k2] = m[k];
|
|
||||||
}));
|
|
||||||
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
||||||
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
||||||
}) : function(o, v) {
|
|
||||||
o["default"] = v;
|
|
||||||
});
|
|
||||||
var __importStar = (this && this.__importStar) || function (mod) {
|
|
||||||
if (mod && mod.__esModule) return mod;
|
|
||||||
var result = {};
|
|
||||||
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
||||||
__setModuleDefault(result, mod);
|
|
||||||
return result;
|
|
||||||
};
|
|
||||||
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
||||||
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
||||||
};
|
|
||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
|
||||||
exports.Path = void 0;
|
|
||||||
const path = __importStar(require("path"));
|
|
||||||
const pathHelper = __importStar(require("./internal-path-helper"));
|
|
||||||
const assert_1 = __importDefault(require("assert"));
|
|
||||||
const IS_WINDOWS = process.platform === 'win32';
|
|
||||||
/**
|
|
||||||
* Helper class for parsing paths into segments
|
|
||||||
*/
|
|
||||||
class Path {
|
|
||||||
/**
|
|
||||||
* Constructs a Path
|
|
||||||
* @param itemPath Path or array of segments
|
|
||||||
*/
|
|
||||||
constructor(itemPath) {
|
|
||||||
this.segments = [];
|
|
||||||
// String
|
|
||||||
if (typeof itemPath === 'string') {
|
|
||||||
assert_1.default(itemPath, `Parameter 'itemPath' must not be empty`);
|
|
||||||
// Normalize slashes and trim unnecessary trailing slash
|
|
||||||
itemPath = pathHelper.safeTrimTrailingSeparator(itemPath);
|
|
||||||
// Not rooted
|
|
||||||
if (!pathHelper.hasRoot(itemPath)) {
|
|
||||||
this.segments = itemPath.split(path.sep);
|
|
||||||
}
|
|
||||||
// Rooted
|
|
||||||
else {
|
|
||||||
// Add all segments, while not at the root
|
|
||||||
let remaining = itemPath;
|
|
||||||
let dir = pathHelper.dirname(remaining);
|
|
||||||
while (dir !== remaining) {
|
|
||||||
// Add the segment
|
|
||||||
const basename = path.basename(remaining);
|
|
||||||
this.segments.unshift(basename);
|
|
||||||
// Truncate the last segment
|
|
||||||
remaining = dir;
|
|
||||||
dir = pathHelper.dirname(remaining);
|
|
||||||
}
|
|
||||||
// Remainder is the root
|
|
||||||
this.segments.unshift(remaining);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// Array
|
|
||||||
else {
|
|
||||||
// Must not be empty
|
|
||||||
assert_1.default(itemPath.length > 0, `Parameter 'itemPath' must not be an empty array`);
|
|
||||||
// Each segment
|
|
||||||
for (let i = 0; i < itemPath.length; i++) {
|
|
||||||
let segment = itemPath[i];
|
|
||||||
// Must not be empty
|
|
||||||
assert_1.default(segment, `Parameter 'itemPath' must not contain any empty segments`);
|
|
||||||
// Normalize slashes
|
|
||||||
segment = pathHelper.normalizeSeparators(itemPath[i]);
|
|
||||||
// Root segment
|
|
||||||
if (i === 0 && pathHelper.hasRoot(segment)) {
|
|
||||||
segment = pathHelper.safeTrimTrailingSeparator(segment);
|
|
||||||
assert_1.default(segment === pathHelper.dirname(segment), `Parameter 'itemPath' root segment contains information for multiple segments`);
|
|
||||||
this.segments.push(segment);
|
|
||||||
}
|
|
||||||
// All other segments
|
|
||||||
else {
|
|
||||||
// Must not contain slash
|
|
||||||
assert_1.default(!segment.includes(path.sep), `Parameter 'itemPath' contains unexpected path separators`);
|
|
||||||
this.segments.push(segment);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Converts the path to it's string representation
|
|
||||||
*/
|
|
||||||
toString() {
|
|
||||||
// First segment
|
|
||||||
let result = this.segments[0];
|
|
||||||
// All others
|
|
||||||
let skipSlash = result.endsWith(path.sep) || (IS_WINDOWS && /^[A-Z]:$/i.test(result));
|
|
||||||
for (let i = 1; i < this.segments.length; i++) {
|
|
||||||
if (skipSlash) {
|
|
||||||
skipSlash = false;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
result += path.sep;
|
|
||||||
}
|
|
||||||
result += this.segments[i];
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
exports.Path = Path;
|
|
||||||
//# sourceMappingURL=internal-path.js.map
|
|
1
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-path.js.map
generated
vendored
1
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-path.js.map
generated
vendored
|
@ -1 +0,0 @@
|
||||||
{"version":3,"file":"internal-path.js","sourceRoot":"","sources":["../src/internal-path.ts"],"names":[],"mappings":"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"}
|
|
15
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-pattern-helper.d.ts
generated
vendored
15
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-pattern-helper.d.ts
generated
vendored
|
@ -1,15 +0,0 @@
|
||||||
import { MatchKind } from './internal-match-kind';
|
|
||||||
import { Pattern } from './internal-pattern';
|
|
||||||
/**
|
|
||||||
* Given an array of patterns, returns an array of paths to search.
|
|
||||||
* Duplicates and paths under other included paths are filtered out.
|
|
||||||
*/
|
|
||||||
export declare function getSearchPaths(patterns: Pattern[]): string[];
|
|
||||||
/**
|
|
||||||
* Matches the patterns against the path
|
|
||||||
*/
|
|
||||||
export declare function match(patterns: Pattern[], itemPath: string): MatchKind;
|
|
||||||
/**
|
|
||||||
* Checks whether to descend further into the directory
|
|
||||||
*/
|
|
||||||
export declare function partialMatch(patterns: Pattern[], itemPath: string): boolean;
|
|
94
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-pattern-helper.js
generated
vendored
94
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-pattern-helper.js
generated
vendored
|
@ -1,94 +0,0 @@
|
||||||
"use strict";
|
|
||||||
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
||||||
if (k2 === undefined) k2 = k;
|
|
||||||
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
||||||
}) : (function(o, m, k, k2) {
|
|
||||||
if (k2 === undefined) k2 = k;
|
|
||||||
o[k2] = m[k];
|
|
||||||
}));
|
|
||||||
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
||||||
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
||||||
}) : function(o, v) {
|
|
||||||
o["default"] = v;
|
|
||||||
});
|
|
||||||
var __importStar = (this && this.__importStar) || function (mod) {
|
|
||||||
if (mod && mod.__esModule) return mod;
|
|
||||||
var result = {};
|
|
||||||
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
||||||
__setModuleDefault(result, mod);
|
|
||||||
return result;
|
|
||||||
};
|
|
||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
|
||||||
exports.partialMatch = exports.match = exports.getSearchPaths = void 0;
|
|
||||||
const pathHelper = __importStar(require("./internal-path-helper"));
|
|
||||||
const internal_match_kind_1 = require("./internal-match-kind");
|
|
||||||
const IS_WINDOWS = process.platform === 'win32';
|
|
||||||
/**
|
|
||||||
* Given an array of patterns, returns an array of paths to search.
|
|
||||||
* Duplicates and paths under other included paths are filtered out.
|
|
||||||
*/
|
|
||||||
function getSearchPaths(patterns) {
|
|
||||||
// Ignore negate patterns
|
|
||||||
patterns = patterns.filter(x => !x.negate);
|
|
||||||
// Create a map of all search paths
|
|
||||||
const searchPathMap = {};
|
|
||||||
for (const pattern of patterns) {
|
|
||||||
const key = IS_WINDOWS
|
|
||||||
? pattern.searchPath.toUpperCase()
|
|
||||||
: pattern.searchPath;
|
|
||||||
searchPathMap[key] = 'candidate';
|
|
||||||
}
|
|
||||||
const result = [];
|
|
||||||
for (const pattern of patterns) {
|
|
||||||
// Check if already included
|
|
||||||
const key = IS_WINDOWS
|
|
||||||
? pattern.searchPath.toUpperCase()
|
|
||||||
: pattern.searchPath;
|
|
||||||
if (searchPathMap[key] === 'included') {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
// Check for an ancestor search path
|
|
||||||
let foundAncestor = false;
|
|
||||||
let tempKey = key;
|
|
||||||
let parent = pathHelper.dirname(tempKey);
|
|
||||||
while (parent !== tempKey) {
|
|
||||||
if (searchPathMap[parent]) {
|
|
||||||
foundAncestor = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
tempKey = parent;
|
|
||||||
parent = pathHelper.dirname(tempKey);
|
|
||||||
}
|
|
||||||
// Include the search pattern in the result
|
|
||||||
if (!foundAncestor) {
|
|
||||||
result.push(pattern.searchPath);
|
|
||||||
searchPathMap[key] = 'included';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
exports.getSearchPaths = getSearchPaths;
|
|
||||||
/**
|
|
||||||
* Matches the patterns against the path
|
|
||||||
*/
|
|
||||||
function match(patterns, itemPath) {
|
|
||||||
let result = internal_match_kind_1.MatchKind.None;
|
|
||||||
for (const pattern of patterns) {
|
|
||||||
if (pattern.negate) {
|
|
||||||
result &= ~pattern.match(itemPath);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
result |= pattern.match(itemPath);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
exports.match = match;
|
|
||||||
/**
|
|
||||||
* Checks whether to descend further into the directory
|
|
||||||
*/
|
|
||||||
function partialMatch(patterns, itemPath) {
|
|
||||||
return patterns.some(x => !x.negate && x.partialMatch(itemPath));
|
|
||||||
}
|
|
||||||
exports.partialMatch = partialMatch;
|
|
||||||
//# sourceMappingURL=internal-pattern-helper.js.map
|
|
|
@ -1 +0,0 @@
|
||||||
{"version":3,"file":"internal-pattern-helper.js","sourceRoot":"","sources":["../src/internal-pattern-helper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,mEAAoD;AACpD,+DAA+C;AAG/C,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAA;AAE/C;;;GAGG;AACH,SAAgB,cAAc,CAAC,QAAmB;IAChD,yBAAyB;IACzB,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IAE1C,mCAAmC;IACnC,MAAM,aAAa,GAA4B,EAAE,CAAA;IACjD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;QAC9B,MAAM,GAAG,GAAG,UAAU;YACpB,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE;YAClC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAA;QACtB,aAAa,CAAC,GAAG,CAAC,GAAG,WAAW,CAAA;KACjC;IAED,MAAM,MAAM,GAAa,EAAE,CAAA;IAE3B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;QAC9B,4BAA4B;QAC5B,MAAM,GAAG,GAAG,UAAU;YACpB,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE;YAClC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAA;QACtB,IAAI,aAAa,CAAC,GAAG,CAAC,KAAK,UAAU,EAAE;YACrC,SAAQ;SACT;QAED,oCAAoC;QACpC,IAAI,aAAa,GAAG,KAAK,CAAA;QACzB,IAAI,OAAO,GAAG,GAAG,CAAA;QACjB,IAAI,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACxC,OAAO,MAAM,KAAK,OAAO,EAAE;YACzB,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE;gBACzB,aAAa,GAAG,IAAI,CAAA;gBACpB,MAAK;aACN;YAED,OAAO,GAAG,MAAM,CAAA;YAChB,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;SACrC;QAED,2CAA2C;QAC3C,IAAI,CAAC,aAAa,EAAE;YAClB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;YAC/B,aAAa,CAAC,GAAG,CAAC,GAAG,UAAU,CAAA;SAChC;KACF;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AA9CD,wCA8CC;AAED;;GAEG;AACH,SAAgB,KAAK,CAAC,QAAmB,EAAE,QAAgB;IACzD,IAAI,MAAM,GAAc,+BAAS,CAAC,IAAI,CAAA;IAEtC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;QAC9B,IAAI,OAAO,CAAC,MAAM,EAAE;YAClB,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;SACnC;aAAM;YACL,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;SAClC;KACF;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAZD,sBAYC;AAED;;GAEG;AACH,SAAgB,YAAY,CAAC,QAAmB,EAAE,QAAgB;IAChE,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAA;AAClE,CAAC;AAFD,oCAEC"}
|
|
64
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-pattern.d.ts
generated
vendored
64
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-pattern.d.ts
generated
vendored
|
@ -1,64 +0,0 @@
|
||||||
import { MatchKind } from './internal-match-kind';
|
|
||||||
export declare class Pattern {
|
|
||||||
/**
|
|
||||||
* Indicates whether matches should be excluded from the result set
|
|
||||||
*/
|
|
||||||
readonly negate: boolean;
|
|
||||||
/**
|
|
||||||
* The directory to search. The literal path prior to the first glob segment.
|
|
||||||
*/
|
|
||||||
readonly searchPath: string;
|
|
||||||
/**
|
|
||||||
* The path/pattern segments. Note, only the first segment (the root directory)
|
|
||||||
* may contain a directory separator character. Use the trailingSeparator field
|
|
||||||
* to determine whether the pattern ended with a trailing slash.
|
|
||||||
*/
|
|
||||||
readonly segments: string[];
|
|
||||||
/**
|
|
||||||
* Indicates the pattern should only match directories, not regular files.
|
|
||||||
*/
|
|
||||||
readonly trailingSeparator: boolean;
|
|
||||||
/**
|
|
||||||
* The Minimatch object used for matching
|
|
||||||
*/
|
|
||||||
private readonly minimatch;
|
|
||||||
/**
|
|
||||||
* Used to workaround a limitation with Minimatch when determining a partial
|
|
||||||
* match and the path is a root directory. For example, when the pattern is
|
|
||||||
* `/foo/**` or `C:\foo\**` and the path is `/` or `C:\`.
|
|
||||||
*/
|
|
||||||
private readonly rootRegExp;
|
|
||||||
/**
|
|
||||||
* Indicates that the pattern is implicitly added as opposed to user specified.
|
|
||||||
*/
|
|
||||||
private readonly isImplicitPattern;
|
|
||||||
constructor(pattern: string);
|
|
||||||
constructor(pattern: string, isImplicitPattern: boolean, segments: undefined, homedir: string);
|
|
||||||
constructor(negate: boolean, isImplicitPattern: boolean, segments: string[], homedir?: string);
|
|
||||||
/**
|
|
||||||
* Matches the pattern against the specified path
|
|
||||||
*/
|
|
||||||
match(itemPath: string): MatchKind;
|
|
||||||
/**
|
|
||||||
* Indicates whether the pattern may match descendants of the specified path
|
|
||||||
*/
|
|
||||||
partialMatch(itemPath: string): boolean;
|
|
||||||
/**
|
|
||||||
* Escapes glob patterns within a path
|
|
||||||
*/
|
|
||||||
static globEscape(s: string): string;
|
|
||||||
/**
|
|
||||||
* Normalizes slashes and ensures absolute root
|
|
||||||
*/
|
|
||||||
private static fixupPattern;
|
|
||||||
/**
|
|
||||||
* Attempts to unescape a pattern segment to create a literal path segment.
|
|
||||||
* Otherwise returns empty string.
|
|
||||||
*/
|
|
||||||
private static getLiteral;
|
|
||||||
/**
|
|
||||||
* Escapes regexp special characters
|
|
||||||
* https://javascript.info/regexp-escaping
|
|
||||||
*/
|
|
||||||
private static regExpEscape;
|
|
||||||
}
|
|
255
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-pattern.js
generated
vendored
255
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-pattern.js
generated
vendored
|
@ -1,255 +0,0 @@
|
||||||
"use strict";
|
|
||||||
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
||||||
if (k2 === undefined) k2 = k;
|
|
||||||
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
||||||
}) : (function(o, m, k, k2) {
|
|
||||||
if (k2 === undefined) k2 = k;
|
|
||||||
o[k2] = m[k];
|
|
||||||
}));
|
|
||||||
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
||||||
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
||||||
}) : function(o, v) {
|
|
||||||
o["default"] = v;
|
|
||||||
});
|
|
||||||
var __importStar = (this && this.__importStar) || function (mod) {
|
|
||||||
if (mod && mod.__esModule) return mod;
|
|
||||||
var result = {};
|
|
||||||
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
||||||
__setModuleDefault(result, mod);
|
|
||||||
return result;
|
|
||||||
};
|
|
||||||
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
||||||
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
||||||
};
|
|
||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
|
||||||
exports.Pattern = void 0;
|
|
||||||
const os = __importStar(require("os"));
|
|
||||||
const path = __importStar(require("path"));
|
|
||||||
const pathHelper = __importStar(require("./internal-path-helper"));
|
|
||||||
const assert_1 = __importDefault(require("assert"));
|
|
||||||
const minimatch_1 = require("minimatch");
|
|
||||||
const internal_match_kind_1 = require("./internal-match-kind");
|
|
||||||
const internal_path_1 = require("./internal-path");
|
|
||||||
const IS_WINDOWS = process.platform === 'win32';
|
|
||||||
class Pattern {
|
|
||||||
constructor(patternOrNegate, isImplicitPattern = false, segments, homedir) {
|
|
||||||
/**
|
|
||||||
* Indicates whether matches should be excluded from the result set
|
|
||||||
*/
|
|
||||||
this.negate = false;
|
|
||||||
// Pattern overload
|
|
||||||
let pattern;
|
|
||||||
if (typeof patternOrNegate === 'string') {
|
|
||||||
pattern = patternOrNegate.trim();
|
|
||||||
}
|
|
||||||
// Segments overload
|
|
||||||
else {
|
|
||||||
// Convert to pattern
|
|
||||||
segments = segments || [];
|
|
||||||
assert_1.default(segments.length, `Parameter 'segments' must not empty`);
|
|
||||||
const root = Pattern.getLiteral(segments[0]);
|
|
||||||
assert_1.default(root && pathHelper.hasAbsoluteRoot(root), `Parameter 'segments' first element must be a root path`);
|
|
||||||
pattern = new internal_path_1.Path(segments).toString().trim();
|
|
||||||
if (patternOrNegate) {
|
|
||||||
pattern = `!${pattern}`;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// Negate
|
|
||||||
while (pattern.startsWith('!')) {
|
|
||||||
this.negate = !this.negate;
|
|
||||||
pattern = pattern.substr(1).trim();
|
|
||||||
}
|
|
||||||
// Normalize slashes and ensures absolute root
|
|
||||||
pattern = Pattern.fixupPattern(pattern, homedir);
|
|
||||||
// Segments
|
|
||||||
this.segments = new internal_path_1.Path(pattern).segments;
|
|
||||||
// Trailing slash indicates the pattern should only match directories, not regular files
|
|
||||||
this.trailingSeparator = pathHelper
|
|
||||||
.normalizeSeparators(pattern)
|
|
||||||
.endsWith(path.sep);
|
|
||||||
pattern = pathHelper.safeTrimTrailingSeparator(pattern);
|
|
||||||
// Search path (literal path prior to the first glob segment)
|
|
||||||
let foundGlob = false;
|
|
||||||
const searchSegments = this.segments
|
|
||||||
.map(x => Pattern.getLiteral(x))
|
|
||||||
.filter(x => !foundGlob && !(foundGlob = x === ''));
|
|
||||||
this.searchPath = new internal_path_1.Path(searchSegments).toString();
|
|
||||||
// Root RegExp (required when determining partial match)
|
|
||||||
this.rootRegExp = new RegExp(Pattern.regExpEscape(searchSegments[0]), IS_WINDOWS ? 'i' : '');
|
|
||||||
this.isImplicitPattern = isImplicitPattern;
|
|
||||||
// Create minimatch
|
|
||||||
const minimatchOptions = {
|
|
||||||
dot: true,
|
|
||||||
nobrace: true,
|
|
||||||
nocase: IS_WINDOWS,
|
|
||||||
nocomment: true,
|
|
||||||
noext: true,
|
|
||||||
nonegate: true
|
|
||||||
};
|
|
||||||
pattern = IS_WINDOWS ? pattern.replace(/\\/g, '/') : pattern;
|
|
||||||
this.minimatch = new minimatch_1.Minimatch(pattern, minimatchOptions);
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Matches the pattern against the specified path
|
|
||||||
*/
|
|
||||||
match(itemPath) {
|
|
||||||
// Last segment is globstar?
|
|
||||||
if (this.segments[this.segments.length - 1] === '**') {
|
|
||||||
// Normalize slashes
|
|
||||||
itemPath = pathHelper.normalizeSeparators(itemPath);
|
|
||||||
// Append a trailing slash. Otherwise Minimatch will not match the directory immediately
|
|
||||||
// preceding the globstar. For example, given the pattern `/foo/**`, Minimatch returns
|
|
||||||
// false for `/foo` but returns true for `/foo/`. Append a trailing slash to handle that quirk.
|
|
||||||
if (!itemPath.endsWith(path.sep) && this.isImplicitPattern === false) {
|
|
||||||
// Note, this is safe because the constructor ensures the pattern has an absolute root.
|
|
||||||
// For example, formats like C: and C:foo on Windows are resolved to an absolute root.
|
|
||||||
itemPath = `${itemPath}${path.sep}`;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
// Normalize slashes and trim unnecessary trailing slash
|
|
||||||
itemPath = pathHelper.safeTrimTrailingSeparator(itemPath);
|
|
||||||
}
|
|
||||||
// Match
|
|
||||||
if (this.minimatch.match(itemPath)) {
|
|
||||||
return this.trailingSeparator ? internal_match_kind_1.MatchKind.Directory : internal_match_kind_1.MatchKind.All;
|
|
||||||
}
|
|
||||||
return internal_match_kind_1.MatchKind.None;
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Indicates whether the pattern may match descendants of the specified path
|
|
||||||
*/
|
|
||||||
partialMatch(itemPath) {
|
|
||||||
// Normalize slashes and trim unnecessary trailing slash
|
|
||||||
itemPath = pathHelper.safeTrimTrailingSeparator(itemPath);
|
|
||||||
// matchOne does not handle root path correctly
|
|
||||||
if (pathHelper.dirname(itemPath) === itemPath) {
|
|
||||||
return this.rootRegExp.test(itemPath);
|
|
||||||
}
|
|
||||||
return this.minimatch.matchOne(itemPath.split(IS_WINDOWS ? /\\+/ : /\/+/), this.minimatch.set[0], true);
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Escapes glob patterns within a path
|
|
||||||
*/
|
|
||||||
static globEscape(s) {
|
|
||||||
return (IS_WINDOWS ? s : s.replace(/\\/g, '\\\\')) // escape '\' on Linux/macOS
|
|
||||||
.replace(/(\[)(?=[^/]+\])/g, '[[]') // escape '[' when ']' follows within the path segment
|
|
||||||
.replace(/\?/g, '[?]') // escape '?'
|
|
||||||
.replace(/\*/g, '[*]'); // escape '*'
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Normalizes slashes and ensures absolute root
|
|
||||||
*/
|
|
||||||
static fixupPattern(pattern, homedir) {
|
|
||||||
// Empty
|
|
||||||
assert_1.default(pattern, 'pattern cannot be empty');
|
|
||||||
// Must not contain `.` segment, unless first segment
|
|
||||||
// Must not contain `..` segment
|
|
||||||
const literalSegments = new internal_path_1.Path(pattern).segments.map(x => Pattern.getLiteral(x));
|
|
||||||
assert_1.default(literalSegments.every((x, i) => (x !== '.' || i === 0) && x !== '..'), `Invalid pattern '${pattern}'. Relative pathing '.' and '..' is not allowed.`);
|
|
||||||
// Must not contain globs in root, e.g. Windows UNC path \\foo\b*r
|
|
||||||
assert_1.default(!pathHelper.hasRoot(pattern) || literalSegments[0], `Invalid pattern '${pattern}'. Root segment must not contain globs.`);
|
|
||||||
// Normalize slashes
|
|
||||||
pattern = pathHelper.normalizeSeparators(pattern);
|
|
||||||
// Replace leading `.` segment
|
|
||||||
if (pattern === '.' || pattern.startsWith(`.${path.sep}`)) {
|
|
||||||
pattern = Pattern.globEscape(process.cwd()) + pattern.substr(1);
|
|
||||||
}
|
|
||||||
// Replace leading `~` segment
|
|
||||||
else if (pattern === '~' || pattern.startsWith(`~${path.sep}`)) {
|
|
||||||
homedir = homedir || os.homedir();
|
|
||||||
assert_1.default(homedir, 'Unable to determine HOME directory');
|
|
||||||
assert_1.default(pathHelper.hasAbsoluteRoot(homedir), `Expected HOME directory to be a rooted path. Actual '${homedir}'`);
|
|
||||||
pattern = Pattern.globEscape(homedir) + pattern.substr(1);
|
|
||||||
}
|
|
||||||
// Replace relative drive root, e.g. pattern is C: or C:foo
|
|
||||||
else if (IS_WINDOWS &&
|
|
||||||
(pattern.match(/^[A-Z]:$/i) || pattern.match(/^[A-Z]:[^\\]/i))) {
|
|
||||||
let root = pathHelper.ensureAbsoluteRoot('C:\\dummy-root', pattern.substr(0, 2));
|
|
||||||
if (pattern.length > 2 && !root.endsWith('\\')) {
|
|
||||||
root += '\\';
|
|
||||||
}
|
|
||||||
pattern = Pattern.globEscape(root) + pattern.substr(2);
|
|
||||||
}
|
|
||||||
// Replace relative root, e.g. pattern is \ or \foo
|
|
||||||
else if (IS_WINDOWS && (pattern === '\\' || pattern.match(/^\\[^\\]/))) {
|
|
||||||
let root = pathHelper.ensureAbsoluteRoot('C:\\dummy-root', '\\');
|
|
||||||
if (!root.endsWith('\\')) {
|
|
||||||
root += '\\';
|
|
||||||
}
|
|
||||||
pattern = Pattern.globEscape(root) + pattern.substr(1);
|
|
||||||
}
|
|
||||||
// Otherwise ensure absolute root
|
|
||||||
else {
|
|
||||||
pattern = pathHelper.ensureAbsoluteRoot(Pattern.globEscape(process.cwd()), pattern);
|
|
||||||
}
|
|
||||||
return pathHelper.normalizeSeparators(pattern);
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Attempts to unescape a pattern segment to create a literal path segment.
|
|
||||||
* Otherwise returns empty string.
|
|
||||||
*/
|
|
||||||
static getLiteral(segment) {
|
|
||||||
let literal = '';
|
|
||||||
for (let i = 0; i < segment.length; i++) {
|
|
||||||
const c = segment[i];
|
|
||||||
// Escape
|
|
||||||
if (c === '\\' && !IS_WINDOWS && i + 1 < segment.length) {
|
|
||||||
literal += segment[++i];
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
// Wildcard
|
|
||||||
else if (c === '*' || c === '?') {
|
|
||||||
return '';
|
|
||||||
}
|
|
||||||
// Character set
|
|
||||||
else if (c === '[' && i + 1 < segment.length) {
|
|
||||||
let set = '';
|
|
||||||
let closed = -1;
|
|
||||||
for (let i2 = i + 1; i2 < segment.length; i2++) {
|
|
||||||
const c2 = segment[i2];
|
|
||||||
// Escape
|
|
||||||
if (c2 === '\\' && !IS_WINDOWS && i2 + 1 < segment.length) {
|
|
||||||
set += segment[++i2];
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
// Closed
|
|
||||||
else if (c2 === ']') {
|
|
||||||
closed = i2;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
// Otherwise
|
|
||||||
else {
|
|
||||||
set += c2;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// Closed?
|
|
||||||
if (closed >= 0) {
|
|
||||||
// Cannot convert
|
|
||||||
if (set.length > 1) {
|
|
||||||
return '';
|
|
||||||
}
|
|
||||||
// Convert to literal
|
|
||||||
if (set) {
|
|
||||||
literal += set;
|
|
||||||
i = closed;
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// Otherwise fall thru
|
|
||||||
}
|
|
||||||
// Append
|
|
||||||
literal += c;
|
|
||||||
}
|
|
||||||
return literal;
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Escapes regexp special characters
|
|
||||||
* https://javascript.info/regexp-escaping
|
|
||||||
*/
|
|
||||||
static regExpEscape(s) {
|
|
||||||
return s.replace(/[[\\^$.|?*+()]/g, '\\$&');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
exports.Pattern = Pattern;
|
|
||||||
//# sourceMappingURL=internal-pattern.js.map
|
|
1
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-pattern.js.map
generated
vendored
1
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-pattern.js.map
generated
vendored
File diff suppressed because one or more lines are too long
|
@ -1,5 +0,0 @@
|
||||||
export declare class SearchState {
|
|
||||||
readonly path: string;
|
|
||||||
readonly level: number;
|
|
||||||
constructor(path: string, level: number);
|
|
||||||
}
|
|
11
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-search-state.js
generated
vendored
11
node_modules/@actions/cache/node_modules/@actions/glob/lib/internal-search-state.js
generated
vendored
|
@ -1,11 +0,0 @@
|
||||||
"use strict";
|
|
||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
|
||||||
exports.SearchState = void 0;
|
|
||||||
class SearchState {
|
|
||||||
constructor(path, level) {
|
|
||||||
this.path = path;
|
|
||||||
this.level = level;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
exports.SearchState = SearchState;
|
|
||||||
//# sourceMappingURL=internal-search-state.js.map
|
|
|
@ -1 +0,0 @@
|
||||||
{"version":3,"file":"internal-search-state.js","sourceRoot":"","sources":["../src/internal-search-state.ts"],"names":[],"mappings":";;;AAAA,MAAa,WAAW;IAItB,YAAY,IAAY,EAAE,KAAa;QACrC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;CACF;AARD,kCAQC"}
|
|
43
node_modules/@actions/cache/node_modules/@actions/glob/package.json
generated
vendored
43
node_modules/@actions/cache/node_modules/@actions/glob/package.json
generated
vendored
|
@ -1,43 +0,0 @@
|
||||||
{
|
|
||||||
"name": "@actions/glob",
|
|
||||||
"version": "0.1.2",
|
|
||||||
"preview": true,
|
|
||||||
"description": "Actions glob lib",
|
|
||||||
"keywords": [
|
|
||||||
"github",
|
|
||||||
"actions",
|
|
||||||
"glob"
|
|
||||||
],
|
|
||||||
"homepage": "https://github.com/actions/toolkit/tree/main/packages/glob",
|
|
||||||
"license": "MIT",
|
|
||||||
"main": "lib/glob.js",
|
|
||||||
"types": "lib/glob.d.ts",
|
|
||||||
"directories": {
|
|
||||||
"lib": "lib",
|
|
||||||
"test": "__tests__"
|
|
||||||
},
|
|
||||||
"files": [
|
|
||||||
"lib",
|
|
||||||
"!.DS_Store"
|
|
||||||
],
|
|
||||||
"publishConfig": {
|
|
||||||
"access": "public"
|
|
||||||
},
|
|
||||||
"repository": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "git+https://github.com/actions/toolkit.git",
|
|
||||||
"directory": "packages/glob"
|
|
||||||
},
|
|
||||||
"scripts": {
|
|
||||||
"audit-moderate": "npm install && npm audit --json --audit-level=moderate > audit.json",
|
|
||||||
"test": "echo \"Error: run tests from root\" && exit 1",
|
|
||||||
"tsc": "tsc"
|
|
||||||
},
|
|
||||||
"bugs": {
|
|
||||||
"url": "https://github.com/actions/toolkit/issues"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"@actions/core": "^1.2.6",
|
|
||||||
"minimatch": "^3.0.4"
|
|
||||||
}
|
|
||||||
}
|
|
229
node_modules/@actions/core/node_modules/uuid/CHANGELOG.md
generated
vendored
229
node_modules/@actions/core/node_modules/uuid/CHANGELOG.md
generated
vendored
|
@ -1,229 +0,0 @@
|
||||||
# Changelog
|
|
||||||
|
|
||||||
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
||||||
|
|
||||||
### [8.3.2](https://github.com/uuidjs/uuid/compare/v8.3.1...v8.3.2) (2020-12-08)
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
- lazy load getRandomValues ([#537](https://github.com/uuidjs/uuid/issues/537)) ([16c8f6d](https://github.com/uuidjs/uuid/commit/16c8f6df2f6b09b4d6235602d6a591188320a82e)), closes [#536](https://github.com/uuidjs/uuid/issues/536)
|
|
||||||
|
|
||||||
### [8.3.1](https://github.com/uuidjs/uuid/compare/v8.3.0...v8.3.1) (2020-10-04)
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
- support expo>=39.0.0 ([#515](https://github.com/uuidjs/uuid/issues/515)) ([c65a0f3](https://github.com/uuidjs/uuid/commit/c65a0f3fa73b901959d638d1e3591dfacdbed867)), closes [#375](https://github.com/uuidjs/uuid/issues/375)
|
|
||||||
|
|
||||||
## [8.3.0](https://github.com/uuidjs/uuid/compare/v8.2.0...v8.3.0) (2020-07-27)
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
- add parse/stringify/validate/version/NIL APIs ([#479](https://github.com/uuidjs/uuid/issues/479)) ([0e6c10b](https://github.com/uuidjs/uuid/commit/0e6c10ba1bf9517796ff23c052fc0468eedfd5f4)), closes [#475](https://github.com/uuidjs/uuid/issues/475) [#478](https://github.com/uuidjs/uuid/issues/478) [#480](https://github.com/uuidjs/uuid/issues/480) [#481](https://github.com/uuidjs/uuid/issues/481) [#180](https://github.com/uuidjs/uuid/issues/180)
|
|
||||||
|
|
||||||
## [8.2.0](https://github.com/uuidjs/uuid/compare/v8.1.0...v8.2.0) (2020-06-23)
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
- improve performance of v1 string representation ([#453](https://github.com/uuidjs/uuid/issues/453)) ([0ee0b67](https://github.com/uuidjs/uuid/commit/0ee0b67c37846529c66089880414d29f3ae132d5))
|
|
||||||
- remove deprecated v4 string parameter ([#454](https://github.com/uuidjs/uuid/issues/454)) ([88ce3ca](https://github.com/uuidjs/uuid/commit/88ce3ca0ba046f60856de62c7ce03f7ba98ba46c)), closes [#437](https://github.com/uuidjs/uuid/issues/437)
|
|
||||||
- support jspm ([#473](https://github.com/uuidjs/uuid/issues/473)) ([e9f2587](https://github.com/uuidjs/uuid/commit/e9f2587a92575cac31bc1d4ae944e17c09756659))
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
- prepare package exports for webpack 5 ([#468](https://github.com/uuidjs/uuid/issues/468)) ([8d6e6a5](https://github.com/uuidjs/uuid/commit/8d6e6a5f8965ca9575eb4d92e99a43435f4a58a8))
|
|
||||||
|
|
||||||
## [8.1.0](https://github.com/uuidjs/uuid/compare/v8.0.0...v8.1.0) (2020-05-20)
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
- improve v4 performance by reusing random number array ([#435](https://github.com/uuidjs/uuid/issues/435)) ([bf4af0d](https://github.com/uuidjs/uuid/commit/bf4af0d711b4d2ed03d1f74fd12ad0baa87dc79d))
|
|
||||||
- optimize V8 performance of bytesToUuid ([#434](https://github.com/uuidjs/uuid/issues/434)) ([e156415](https://github.com/uuidjs/uuid/commit/e156415448ec1af2351fa0b6660cfb22581971f2))
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
- export package.json required by react-native and bundlers ([#449](https://github.com/uuidjs/uuid/issues/449)) ([be1c8fe](https://github.com/uuidjs/uuid/commit/be1c8fe9a3206c358e0059b52fafd7213aa48a52)), closes [ai/nanoevents#44](https://github.com/ai/nanoevents/issues/44#issuecomment-602010343) [#444](https://github.com/uuidjs/uuid/issues/444)
|
|
||||||
|
|
||||||
## [8.0.0](https://github.com/uuidjs/uuid/compare/v7.0.3...v8.0.0) (2020-04-29)
|
|
||||||
|
|
||||||
### ⚠ BREAKING CHANGES
|
|
||||||
|
|
||||||
- For native ECMAScript Module (ESM) usage in Node.js only named exports are exposed, there is no more default export.
|
|
||||||
|
|
||||||
```diff
|
|
||||||
-import uuid from 'uuid';
|
|
||||||
-console.log(uuid.v4()); // -> 'cd6c3b08-0adc-4f4b-a6ef-36087a1c9869'
|
|
||||||
+import { v4 as uuidv4 } from 'uuid';
|
|
||||||
+uuidv4(); // ⇨ '9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d'
|
|
||||||
```
|
|
||||||
|
|
||||||
- Deep requiring specific algorithms of this library like `require('uuid/v4')`, which has been deprecated in `uuid@7`, is no longer supported.
|
|
||||||
|
|
||||||
Instead use the named exports that this module exports.
|
|
||||||
|
|
||||||
For ECMAScript Modules (ESM):
|
|
||||||
|
|
||||||
```diff
|
|
||||||
-import uuidv4 from 'uuid/v4';
|
|
||||||
+import { v4 as uuidv4 } from 'uuid';
|
|
||||||
uuidv4();
|
|
||||||
```
|
|
||||||
|
|
||||||
For CommonJS:
|
|
||||||
|
|
||||||
```diff
|
|
||||||
-const uuidv4 = require('uuid/v4');
|
|
||||||
+const { v4: uuidv4 } = require('uuid');
|
|
||||||
uuidv4();
|
|
||||||
```
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
- native Node.js ES Modules (wrapper approach) ([#423](https://github.com/uuidjs/uuid/issues/423)) ([2d9f590](https://github.com/uuidjs/uuid/commit/2d9f590ad9701d692625c07ed62f0a0f91227991)), closes [#245](https://github.com/uuidjs/uuid/issues/245) [#419](https://github.com/uuidjs/uuid/issues/419) [#342](https://github.com/uuidjs/uuid/issues/342)
|
|
||||||
- remove deep requires ([#426](https://github.com/uuidjs/uuid/issues/426)) ([daf72b8](https://github.com/uuidjs/uuid/commit/daf72b84ceb20272a81bb5fbddb05dd95922cbba))
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
- add CommonJS syntax example to README quickstart section ([#417](https://github.com/uuidjs/uuid/issues/417)) ([e0ec840](https://github.com/uuidjs/uuid/commit/e0ec8402c7ad44b7ef0453036c612f5db513fda0))
|
|
||||||
|
|
||||||
### [7.0.3](https://github.com/uuidjs/uuid/compare/v7.0.2...v7.0.3) (2020-03-31)
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
- make deep require deprecation warning work in browsers ([#409](https://github.com/uuidjs/uuid/issues/409)) ([4b71107](https://github.com/uuidjs/uuid/commit/4b71107d8c0d2ef56861ede6403fc9dc35a1e6bf)), closes [#408](https://github.com/uuidjs/uuid/issues/408)
|
|
||||||
|
|
||||||
### [7.0.2](https://github.com/uuidjs/uuid/compare/v7.0.1...v7.0.2) (2020-03-04)
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
- make access to msCrypto consistent ([#393](https://github.com/uuidjs/uuid/issues/393)) ([8bf2a20](https://github.com/uuidjs/uuid/commit/8bf2a20f3565df743da7215eebdbada9d2df118c))
|
|
||||||
- simplify link in deprecation warning ([#391](https://github.com/uuidjs/uuid/issues/391)) ([bb2c8e4](https://github.com/uuidjs/uuid/commit/bb2c8e4e9f4c5f9c1eaaf3ea59710c633cd90cb7))
|
|
||||||
- update links to match content in readme ([#386](https://github.com/uuidjs/uuid/issues/386)) ([44f2f86](https://github.com/uuidjs/uuid/commit/44f2f86e9d2bbf14ee5f0f00f72a3db1292666d4))
|
|
||||||
|
|
||||||
### [7.0.1](https://github.com/uuidjs/uuid/compare/v7.0.0...v7.0.1) (2020-02-25)
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
- clean up esm builds for node and browser ([#383](https://github.com/uuidjs/uuid/issues/383)) ([59e6a49](https://github.com/uuidjs/uuid/commit/59e6a49e7ce7b3e8fb0f3ee52b9daae72af467dc))
|
|
||||||
- provide browser versions independent from module system ([#380](https://github.com/uuidjs/uuid/issues/380)) ([4344a22](https://github.com/uuidjs/uuid/commit/4344a22e7aed33be8627eeaaf05360f256a21753)), closes [#378](https://github.com/uuidjs/uuid/issues/378)
|
|
||||||
|
|
||||||
## [7.0.0](https://github.com/uuidjs/uuid/compare/v3.4.0...v7.0.0) (2020-02-24)
|
|
||||||
|
|
||||||
### ⚠ BREAKING CHANGES
|
|
||||||
|
|
||||||
- The default export, which used to be the v4() method but which was already discouraged in v3.x of this library, has been removed.
|
|
||||||
- Explicitly note that deep imports of the different uuid version functions are deprecated and no longer encouraged and that ECMAScript module named imports should be used instead. Emit a deprecation warning for people who deep-require the different algorithm variants.
|
|
||||||
- Remove builtin support for insecure random number generators in the browser. Users who want that will have to supply their own random number generator function.
|
|
||||||
- Remove support for generating v3 and v5 UUIDs in Node.js<4.x
|
|
||||||
- Convert code base to ECMAScript Modules (ESM) and release CommonJS build for node and ESM build for browser bundlers.
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
- add UMD build to npm package ([#357](https://github.com/uuidjs/uuid/issues/357)) ([4e75adf](https://github.com/uuidjs/uuid/commit/4e75adf435196f28e3fbbe0185d654b5ded7ca2c)), closes [#345](https://github.com/uuidjs/uuid/issues/345)
|
|
||||||
- add various es module and CommonJS examples ([b238510](https://github.com/uuidjs/uuid/commit/b238510bf352463521f74bab175a3af9b7a42555))
|
|
||||||
- ensure that docs are up-to-date in CI ([ee5e77d](https://github.com/uuidjs/uuid/commit/ee5e77db547474f5a8f23d6c857a6d399209986b))
|
|
||||||
- hybrid CommonJS & ECMAScript modules build ([a3f078f](https://github.com/uuidjs/uuid/commit/a3f078faa0baff69ab41aed08e041f8f9c8993d0))
|
|
||||||
- remove insecure fallback random number generator ([3a5842b](https://github.com/uuidjs/uuid/commit/3a5842b141a6e5de0ae338f391661e6b84b167c9)), closes [#173](https://github.com/uuidjs/uuid/issues/173)
|
|
||||||
- remove support for pre Node.js v4 Buffer API ([#356](https://github.com/uuidjs/uuid/issues/356)) ([b59b5c5](https://github.com/uuidjs/uuid/commit/b59b5c5ecad271c5453f1a156f011671f6d35627))
|
|
||||||
- rename repository to github:uuidjs/uuid ([#351](https://github.com/uuidjs/uuid/issues/351)) ([c37a518](https://github.com/uuidjs/uuid/commit/c37a518e367ac4b6d0aa62dba1bc6ce9e85020f7)), closes [#338](https://github.com/uuidjs/uuid/issues/338)
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
- add deep-require proxies for local testing and adjust tests ([#365](https://github.com/uuidjs/uuid/issues/365)) ([7fedc79](https://github.com/uuidjs/uuid/commit/7fedc79ac8fda4bfd1c566c7f05ef4ac13b2db48))
|
|
||||||
- add note about removal of default export ([#372](https://github.com/uuidjs/uuid/issues/372)) ([12749b7](https://github.com/uuidjs/uuid/commit/12749b700eb49db8a9759fd306d8be05dbfbd58c)), closes [#370](https://github.com/uuidjs/uuid/issues/370)
|
|
||||||
- deprecated deep requiring of the different algorithm versions ([#361](https://github.com/uuidjs/uuid/issues/361)) ([c0bdf15](https://github.com/uuidjs/uuid/commit/c0bdf15e417639b1aeb0b247b2fb11f7a0a26b23))
|
|
||||||
|
|
||||||
## [3.4.0](https://github.com/uuidjs/uuid/compare/v3.3.3...v3.4.0) (2020-01-16)
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
- rename repository to github:uuidjs/uuid ([#351](https://github.com/uuidjs/uuid/issues/351)) ([e2d7314](https://github.com/uuidjs/uuid/commit/e2d7314)), closes [#338](https://github.com/uuidjs/uuid/issues/338)
|
|
||||||
|
|
||||||
## [3.3.3](https://github.com/uuidjs/uuid/compare/v3.3.2...v3.3.3) (2019-08-19)
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
- no longer run ci tests on node v4
|
|
||||||
- upgrade dependencies
|
|
||||||
|
|
||||||
## [3.3.2](https://github.com/uuidjs/uuid/compare/v3.3.1...v3.3.2) (2018-06-28)
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
- typo ([305d877](https://github.com/uuidjs/uuid/commit/305d877))
|
|
||||||
|
|
||||||
## [3.3.1](https://github.com/uuidjs/uuid/compare/v3.3.0...v3.3.1) (2018-06-28)
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
- fix [#284](https://github.com/uuidjs/uuid/issues/284) by setting function name in try-catch ([f2a60f2](https://github.com/uuidjs/uuid/commit/f2a60f2))
|
|
||||||
|
|
||||||
# [3.3.0](https://github.com/uuidjs/uuid/compare/v3.2.1...v3.3.0) (2018-06-22)
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
- assignment to readonly property to allow running in strict mode ([#270](https://github.com/uuidjs/uuid/issues/270)) ([d062fdc](https://github.com/uuidjs/uuid/commit/d062fdc))
|
|
||||||
- fix [#229](https://github.com/uuidjs/uuid/issues/229) ([c9684d4](https://github.com/uuidjs/uuid/commit/c9684d4))
|
|
||||||
- Get correct version of IE11 crypto ([#274](https://github.com/uuidjs/uuid/issues/274)) ([153d331](https://github.com/uuidjs/uuid/commit/153d331))
|
|
||||||
- mem issue when generating uuid ([#267](https://github.com/uuidjs/uuid/issues/267)) ([c47702c](https://github.com/uuidjs/uuid/commit/c47702c))
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
- enforce Conventional Commit style commit messages ([#282](https://github.com/uuidjs/uuid/issues/282)) ([cc9a182](https://github.com/uuidjs/uuid/commit/cc9a182))
|
|
||||||
|
|
||||||
## [3.2.1](https://github.com/uuidjs/uuid/compare/v3.2.0...v3.2.1) (2018-01-16)
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
- use msCrypto if available. Fixes [#241](https://github.com/uuidjs/uuid/issues/241) ([#247](https://github.com/uuidjs/uuid/issues/247)) ([1fef18b](https://github.com/uuidjs/uuid/commit/1fef18b))
|
|
||||||
|
|
||||||
# [3.2.0](https://github.com/uuidjs/uuid/compare/v3.1.0...v3.2.0) (2018-01-16)
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
- remove mistakenly added typescript dependency, rollback version (standard-version will auto-increment) ([09fa824](https://github.com/uuidjs/uuid/commit/09fa824))
|
|
||||||
- use msCrypto if available. Fixes [#241](https://github.com/uuidjs/uuid/issues/241) ([#247](https://github.com/uuidjs/uuid/issues/247)) ([1fef18b](https://github.com/uuidjs/uuid/commit/1fef18b))
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
- Add v3 Support ([#217](https://github.com/uuidjs/uuid/issues/217)) ([d94f726](https://github.com/uuidjs/uuid/commit/d94f726))
|
|
||||||
|
|
||||||
# [3.1.0](https://github.com/uuidjs/uuid/compare/v3.1.0...v3.0.1) (2017-06-17)
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
- (fix) Add .npmignore file to exclude test/ and other non-essential files from packing. (#183)
|
|
||||||
- Fix typo (#178)
|
|
||||||
- Simple typo fix (#165)
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
- v5 support in CLI (#197)
|
|
||||||
- V5 support (#188)
|
|
||||||
|
|
||||||
# 3.0.1 (2016-11-28)
|
|
||||||
|
|
||||||
- split uuid versions into separate files
|
|
||||||
|
|
||||||
# 3.0.0 (2016-11-17)
|
|
||||||
|
|
||||||
- remove .parse and .unparse
|
|
||||||
|
|
||||||
# 2.0.0
|
|
||||||
|
|
||||||
- Removed uuid.BufferClass
|
|
||||||
|
|
||||||
# 1.4.0
|
|
||||||
|
|
||||||
- Improved module context detection
|
|
||||||
- Removed public RNG functions
|
|
||||||
|
|
||||||
# 1.3.2
|
|
||||||
|
|
||||||
- Improve tests and handling of v1() options (Issue #24)
|
|
||||||
- Expose RNG option to allow for perf testing with different generators
|
|
||||||
|
|
||||||
# 1.3.0
|
|
||||||
|
|
||||||
- Support for version 1 ids, thanks to [@ctavan](https://github.com/ctavan)!
|
|
||||||
- Support for node.js crypto API
|
|
||||||
- De-emphasizing performance in favor of a) cryptographic quality PRNGs where available and b) more manageable code
|
|
18
node_modules/@actions/core/node_modules/uuid/CONTRIBUTING.md
generated
vendored
18
node_modules/@actions/core/node_modules/uuid/CONTRIBUTING.md
generated
vendored
|
@ -1,18 +0,0 @@
|
||||||
# Contributing
|
|
||||||
|
|
||||||
Please feel free to file GitHub Issues or propose Pull Requests. We're always happy to discuss improvements to this library!
|
|
||||||
|
|
||||||
## Testing
|
|
||||||
|
|
||||||
```shell
|
|
||||||
npm test
|
|
||||||
```
|
|
||||||
|
|
||||||
## Releasing
|
|
||||||
|
|
||||||
Releases are supposed to be done from master, version bumping is automated through [`standard-version`](https://github.com/conventional-changelog/standard-version):
|
|
||||||
|
|
||||||
```shell
|
|
||||||
npm run release -- --dry-run # verify output manually
|
|
||||||
npm run release # follow the instructions from the output of this command
|
|
||||||
```
|
|
9
node_modules/@actions/core/node_modules/uuid/LICENSE.md
generated
vendored
9
node_modules/@actions/core/node_modules/uuid/LICENSE.md
generated
vendored
|
@ -1,9 +0,0 @@
|
||||||
The MIT License (MIT)
|
|
||||||
|
|
||||||
Copyright (c) 2010-2020 Robert Kieffer and other contributors
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
505
node_modules/@actions/core/node_modules/uuid/README.md
generated
vendored
505
node_modules/@actions/core/node_modules/uuid/README.md
generated
vendored
|
@ -1,505 +0,0 @@
|
||||||
<!--
|
|
||||||
-- This file is auto-generated from README_js.md. Changes should be made there.
|
|
||||||
-->
|
|
||||||
|
|
||||||
# uuid [](https://github.com/uuidjs/uuid/actions?query=workflow%3ACI) [](https://github.com/uuidjs/uuid/actions?query=workflow%3ABrowser)
|
|
||||||
|
|
||||||
For the creation of [RFC4122](http://www.ietf.org/rfc/rfc4122.txt) UUIDs
|
|
||||||
|
|
||||||
- **Complete** - Support for RFC4122 version 1, 3, 4, and 5 UUIDs
|
|
||||||
- **Cross-platform** - Support for ...
|
|
||||||
- CommonJS, [ECMAScript Modules](#ecmascript-modules) and [CDN builds](#cdn-builds)
|
|
||||||
- Node 8, 10, 12, 14
|
|
||||||
- Chrome, Safari, Firefox, Edge, IE 11 browsers
|
|
||||||
- Webpack and rollup.js module bundlers
|
|
||||||
- [React Native / Expo](#react-native--expo)
|
|
||||||
- **Secure** - Cryptographically-strong random values
|
|
||||||
- **Small** - Zero-dependency, small footprint, plays nice with "tree shaking" packagers
|
|
||||||
- **CLI** - Includes the [`uuid` command line](#command-line) utility
|
|
||||||
|
|
||||||
**Upgrading from `uuid@3.x`?** Your code is probably okay, but check out [Upgrading From `uuid@3.x`](#upgrading-from-uuid3x) for details.
|
|
||||||
|
|
||||||
## Quickstart
|
|
||||||
|
|
||||||
To create a random UUID...
|
|
||||||
|
|
||||||
**1. Install**
|
|
||||||
|
|
||||||
```shell
|
|
||||||
npm install uuid
|
|
||||||
```
|
|
||||||
|
|
||||||
**2. Create a UUID** (ES6 module syntax)
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
import { v4 as uuidv4 } from 'uuid';
|
|
||||||
uuidv4(); // ⇨ '9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d'
|
|
||||||
```
|
|
||||||
|
|
||||||
... or using CommonJS syntax:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
const { v4: uuidv4 } = require('uuid');
|
|
||||||
uuidv4(); // ⇨ '1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed'
|
|
||||||
```
|
|
||||||
|
|
||||||
For timestamp UUIDs, namespace UUIDs, and other options read on ...
|
|
||||||
|
|
||||||
## API Summary
|
|
||||||
|
|
||||||
| | | |
|
|
||||||
| --- | --- | --- |
|
|
||||||
| [`uuid.NIL`](#uuidnil) | The nil UUID string (all zeros) | New in `uuid@8.3` |
|
|
||||||
| [`uuid.parse()`](#uuidparsestr) | Convert UUID string to array of bytes | New in `uuid@8.3` |
|
|
||||||
| [`uuid.stringify()`](#uuidstringifyarr-offset) | Convert array of bytes to UUID string | New in `uuid@8.3` |
|
|
||||||
| [`uuid.v1()`](#uuidv1options-buffer-offset) | Create a version 1 (timestamp) UUID | |
|
|
||||||
| [`uuid.v3()`](#uuidv3name-namespace-buffer-offset) | Create a version 3 (namespace w/ MD5) UUID | |
|
|
||||||
| [`uuid.v4()`](#uuidv4options-buffer-offset) | Create a version 4 (random) UUID | |
|
|
||||||
| [`uuid.v5()`](#uuidv5name-namespace-buffer-offset) | Create a version 5 (namespace w/ SHA-1) UUID | |
|
|
||||||
| [`uuid.validate()`](#uuidvalidatestr) | Test a string to see if it is a valid UUID | New in `uuid@8.3` |
|
|
||||||
| [`uuid.version()`](#uuidversionstr) | Detect RFC version of a UUID | New in `uuid@8.3` |
|
|
||||||
|
|
||||||
## API
|
|
||||||
|
|
||||||
### uuid.NIL
|
|
||||||
|
|
||||||
The nil UUID string (all zeros).
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
import { NIL as NIL_UUID } from 'uuid';
|
|
||||||
|
|
||||||
NIL_UUID; // ⇨ '00000000-0000-0000-0000-000000000000'
|
|
||||||
```
|
|
||||||
|
|
||||||
### uuid.parse(str)
|
|
||||||
|
|
||||||
Convert UUID string to array of bytes
|
|
||||||
|
|
||||||
| | |
|
|
||||||
| --------- | ---------------------------------------- |
|
|
||||||
| `str` | A valid UUID `String` |
|
|
||||||
| _returns_ | `Uint8Array[16]` |
|
|
||||||
| _throws_ | `TypeError` if `str` is not a valid UUID |
|
|
||||||
|
|
||||||
Note: Ordering of values in the byte arrays used by `parse()` and `stringify()` follows the left ↠ right order of hex-pairs in UUID strings. As shown in the example below.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
import { parse as uuidParse } from 'uuid';
|
|
||||||
|
|
||||||
// Parse a UUID
|
|
||||||
const bytes = uuidParse('6ec0bd7f-11c0-43da-975e-2a8ad9ebae0b');
|
|
||||||
|
|
||||||
// Convert to hex strings to show byte order (for documentation purposes)
|
|
||||||
[...bytes].map((v) => v.toString(16).padStart(2, '0')); // ⇨
|
|
||||||
// [
|
|
||||||
// '6e', 'c0', 'bd', '7f',
|
|
||||||
// '11', 'c0', '43', 'da',
|
|
||||||
// '97', '5e', '2a', '8a',
|
|
||||||
// 'd9', 'eb', 'ae', '0b'
|
|
||||||
// ]
|
|
||||||
```
|
|
||||||
|
|
||||||
### uuid.stringify(arr[, offset])
|
|
||||||
|
|
||||||
Convert array of bytes to UUID string
|
|
||||||
|
|
||||||
| | |
|
|
||||||
| -------------- | ---------------------------------------------------------------------------- |
|
|
||||||
| `arr` | `Array`-like collection of 16 values (starting from `offset`) between 0-255. |
|
|
||||||
| [`offset` = 0] | `Number` Starting index in the Array |
|
|
||||||
| _returns_ | `String` |
|
|
||||||
| _throws_ | `TypeError` if a valid UUID string cannot be generated |
|
|
||||||
|
|
||||||
Note: Ordering of values in the byte arrays used by `parse()` and `stringify()` follows the left ↠ right order of hex-pairs in UUID strings. As shown in the example below.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
import { stringify as uuidStringify } from 'uuid';
|
|
||||||
|
|
||||||
const uuidBytes = [
|
|
||||||
0x6e,
|
|
||||||
0xc0,
|
|
||||||
0xbd,
|
|
||||||
0x7f,
|
|
||||||
0x11,
|
|
||||||
0xc0,
|
|
||||||
0x43,
|
|
||||||
0xda,
|
|
||||||
0x97,
|
|
||||||
0x5e,
|
|
||||||
0x2a,
|
|
||||||
0x8a,
|
|
||||||
0xd9,
|
|
||||||
0xeb,
|
|
||||||
0xae,
|
|
||||||
0x0b,
|
|
||||||
];
|
|
||||||
|
|
||||||
uuidStringify(uuidBytes); // ⇨ '6ec0bd7f-11c0-43da-975e-2a8ad9ebae0b'
|
|
||||||
```
|
|
||||||
|
|
||||||
### uuid.v1([options[, buffer[, offset]]])
|
|
||||||
|
|
||||||
Create an RFC version 1 (timestamp) UUID
|
|
||||||
|
|
||||||
| | |
|
|
||||||
| --- | --- |
|
|
||||||
| [`options`] | `Object` with one or more of the following properties: |
|
|
||||||
| [`options.node` ] | RFC "node" field as an `Array[6]` of byte values (per 4.1.6) |
|
|
||||||
| [`options.clockseq`] | RFC "clock sequence" as a `Number` between 0 - 0x3fff |
|
|
||||||
| [`options.msecs`] | RFC "timestamp" field (`Number` of milliseconds, unix epoch) |
|
|
||||||
| [`options.nsecs`] | RFC "timestamp" field (`Number` of nanseconds to add to `msecs`, should be 0-10,000) |
|
|
||||||
| [`options.random`] | `Array` of 16 random bytes (0-255) |
|
|
||||||
| [`options.rng`] | Alternative to `options.random`, a `Function` that returns an `Array` of 16 random bytes (0-255) |
|
|
||||||
| [`buffer`] | `Array \| Buffer` If specified, uuid will be written here in byte-form, starting at `offset` |
|
|
||||||
| [`offset` = 0] | `Number` Index to start writing UUID bytes in `buffer` |
|
|
||||||
| _returns_ | UUID `String` if no `buffer` is specified, otherwise returns `buffer` |
|
|
||||||
| _throws_ | `Error` if more than 10M UUIDs/sec are requested |
|
|
||||||
|
|
||||||
Note: The default [node id](https://tools.ietf.org/html/rfc4122#section-4.1.6) (the last 12 digits in the UUID) is generated once, randomly, on process startup, and then remains unchanged for the duration of the process.
|
|
||||||
|
|
||||||
Note: `options.random` and `options.rng` are only meaningful on the very first call to `v1()`, where they may be passed to initialize the internal `node` and `clockseq` fields.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
import { v1 as uuidv1 } from 'uuid';
|
|
||||||
|
|
||||||
uuidv1(); // ⇨ '2c5ea4c0-4067-11e9-8bad-9b1deb4d3b7d'
|
|
||||||
```
|
|
||||||
|
|
||||||
Example using `options`:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
import { v1 as uuidv1 } from 'uuid';
|
|
||||||
|
|
||||||
const v1options = {
|
|
||||||
node: [0x01, 0x23, 0x45, 0x67, 0x89, 0xab],
|
|
||||||
clockseq: 0x1234,
|
|
||||||
msecs: new Date('2011-11-01').getTime(),
|
|
||||||
nsecs: 5678,
|
|
||||||
};
|
|
||||||
uuidv1(v1options); // ⇨ '710b962e-041c-11e1-9234-0123456789ab'
|
|
||||||
```
|
|
||||||
|
|
||||||
### uuid.v3(name, namespace[, buffer[, offset]])
|
|
||||||
|
|
||||||
Create an RFC version 3 (namespace w/ MD5) UUID
|
|
||||||
|
|
||||||
API is identical to `v5()`, but uses "v3" instead.
|
|
||||||
|
|
||||||
⚠️ Note: Per the RFC, "_If backward compatibility is not an issue, SHA-1 [Version 5] is preferred_."
|
|
||||||
|
|
||||||
### uuid.v4([options[, buffer[, offset]]])
|
|
||||||
|
|
||||||
Create an RFC version 4 (random) UUID
|
|
||||||
|
|
||||||
| | |
|
|
||||||
| --- | --- |
|
|
||||||
| [`options`] | `Object` with one or more of the following properties: |
|
|
||||||
| [`options.random`] | `Array` of 16 random bytes (0-255) |
|
|
||||||
| [`options.rng`] | Alternative to `options.random`, a `Function` that returns an `Array` of 16 random bytes (0-255) |
|
|
||||||
| [`buffer`] | `Array \| Buffer` If specified, uuid will be written here in byte-form, starting at `offset` |
|
|
||||||
| [`offset` = 0] | `Number` Index to start writing UUID bytes in `buffer` |
|
|
||||||
| _returns_ | UUID `String` if no `buffer` is specified, otherwise returns `buffer` |
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
import { v4 as uuidv4 } from 'uuid';
|
|
||||||
|
|
||||||
uuidv4(); // ⇨ '1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed'
|
|
||||||
```
|
|
||||||
|
|
||||||
Example using predefined `random` values:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
import { v4 as uuidv4 } from 'uuid';
|
|
||||||
|
|
||||||
const v4options = {
|
|
||||||
random: [
|
|
||||||
0x10,
|
|
||||||
0x91,
|
|
||||||
0x56,
|
|
||||||
0xbe,
|
|
||||||
0xc4,
|
|
||||||
0xfb,
|
|
||||||
0xc1,
|
|
||||||
0xea,
|
|
||||||
0x71,
|
|
||||||
0xb4,
|
|
||||||
0xef,
|
|
||||||
0xe1,
|
|
||||||
0x67,
|
|
||||||
0x1c,
|
|
||||||
0x58,
|
|
||||||
0x36,
|
|
||||||
],
|
|
||||||
};
|
|
||||||
uuidv4(v4options); // ⇨ '109156be-c4fb-41ea-b1b4-efe1671c5836'
|
|
||||||
```
|
|
||||||
|
|
||||||
### uuid.v5(name, namespace[, buffer[, offset]])
|
|
||||||
|
|
||||||
Create an RFC version 5 (namespace w/ SHA-1) UUID
|
|
||||||
|
|
||||||
| | |
|
|
||||||
| --- | --- |
|
|
||||||
| `name` | `String \| Array` |
|
|
||||||
| `namespace` | `String \| Array[16]` Namespace UUID |
|
|
||||||
| [`buffer`] | `Array \| Buffer` If specified, uuid will be written here in byte-form, starting at `offset` |
|
|
||||||
| [`offset` = 0] | `Number` Index to start writing UUID bytes in `buffer` |
|
|
||||||
| _returns_ | UUID `String` if no `buffer` is specified, otherwise returns `buffer` |
|
|
||||||
|
|
||||||
Note: The RFC `DNS` and `URL` namespaces are available as `v5.DNS` and `v5.URL`.
|
|
||||||
|
|
||||||
Example with custom namespace:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
import { v5 as uuidv5 } from 'uuid';
|
|
||||||
|
|
||||||
// Define a custom namespace. Readers, create your own using something like
|
|
||||||
// https://www.uuidgenerator.net/
|
|
||||||
const MY_NAMESPACE = '1b671a64-40d5-491e-99b0-da01ff1f3341';
|
|
||||||
|
|
||||||
uuidv5('Hello, World!', MY_NAMESPACE); // ⇨ '630eb68f-e0fa-5ecc-887a-7c7a62614681'
|
|
||||||
```
|
|
||||||
|
|
||||||
Example with RFC `URL` namespace:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
import { v5 as uuidv5 } from 'uuid';
|
|
||||||
|
|
||||||
uuidv5('https://www.w3.org/', uuidv5.URL); // ⇨ 'c106a26a-21bb-5538-8bf2-57095d1976c1'
|
|
||||||
```
|
|
||||||
|
|
||||||
### uuid.validate(str)
|
|
||||||
|
|
||||||
Test a string to see if it is a valid UUID
|
|
||||||
|
|
||||||
| | |
|
|
||||||
| --------- | --------------------------------------------------- |
|
|
||||||
| `str` | `String` to validate |
|
|
||||||
| _returns_ | `true` if string is a valid UUID, `false` otherwise |
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
import { validate as uuidValidate } from 'uuid';
|
|
||||||
|
|
||||||
uuidValidate('not a UUID'); // ⇨ false
|
|
||||||
uuidValidate('6ec0bd7f-11c0-43da-975e-2a8ad9ebae0b'); // ⇨ true
|
|
||||||
```
|
|
||||||
|
|
||||||
Using `validate` and `version` together it is possible to do per-version validation, e.g. validate for only v4 UUIds.
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
import { version as uuidVersion } from 'uuid';
|
|
||||||
import { validate as uuidValidate } from 'uuid';
|
|
||||||
|
|
||||||
function uuidValidateV4(uuid) {
|
|
||||||
return uuidValidate(uuid) && uuidVersion(uuid) === 4;
|
|
||||||
}
|
|
||||||
|
|
||||||
const v1Uuid = 'd9428888-122b-11e1-b85c-61cd3cbb3210';
|
|
||||||
const v4Uuid = '109156be-c4fb-41ea-b1b4-efe1671c5836';
|
|
||||||
|
|
||||||
uuidValidateV4(v4Uuid); // ⇨ true
|
|
||||||
uuidValidateV4(v1Uuid); // ⇨ false
|
|
||||||
```
|
|
||||||
|
|
||||||
### uuid.version(str)
|
|
||||||
|
|
||||||
Detect RFC version of a UUID
|
|
||||||
|
|
||||||
| | |
|
|
||||||
| --------- | ---------------------------------------- |
|
|
||||||
| `str` | A valid UUID `String` |
|
|
||||||
| _returns_ | `Number` The RFC version of the UUID |
|
|
||||||
| _throws_ | `TypeError` if `str` is not a valid UUID |
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
import { version as uuidVersion } from 'uuid';
|
|
||||||
|
|
||||||
uuidVersion('45637ec4-c85f-11ea-87d0-0242ac130003'); // ⇨ 1
|
|
||||||
uuidVersion('6ec0bd7f-11c0-43da-975e-2a8ad9ebae0b'); // ⇨ 4
|
|
||||||
```
|
|
||||||
|
|
||||||
## Command Line
|
|
||||||
|
|
||||||
UUIDs can be generated from the command line using `uuid`.
|
|
||||||
|
|
||||||
```shell
|
|
||||||
$ uuid
|
|
||||||
ddeb27fb-d9a0-4624-be4d-4615062daed4
|
|
||||||
```
|
|
||||||
|
|
||||||
The default is to generate version 4 UUIDS, however the other versions are supported. Type `uuid --help` for details:
|
|
||||||
|
|
||||||
```shell
|
|
||||||
$ uuid --help
|
|
||||||
|
|
||||||
Usage:
|
|
||||||
uuid
|
|
||||||
uuid v1
|
|
||||||
uuid v3 <name> <namespace uuid>
|
|
||||||
uuid v4
|
|
||||||
uuid v5 <name> <namespace uuid>
|
|
||||||
uuid --help
|
|
||||||
|
|
||||||
Note: <namespace uuid> may be "URL" or "DNS" to use the corresponding UUIDs
|
|
||||||
defined by RFC4122
|
|
||||||
```
|
|
||||||
|
|
||||||
## ECMAScript Modules
|
|
||||||
|
|
||||||
This library comes with [ECMAScript Modules](https://www.ecma-international.org/ecma-262/6.0/#sec-modules) (ESM) support for Node.js versions that support it ([example](./examples/node-esmodules/)) as well as bundlers like [rollup.js](https://rollupjs.org/guide/en/#tree-shaking) ([example](./examples/browser-rollup/)) and [webpack](https://webpack.js.org/guides/tree-shaking/) ([example](./examples/browser-webpack/)) (targeting both, Node.js and browser environments).
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
import { v4 as uuidv4 } from 'uuid';
|
|
||||||
uuidv4(); // ⇨ '1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed'
|
|
||||||
```
|
|
||||||
|
|
||||||
To run the examples you must first create a dist build of this library in the module root:
|
|
||||||
|
|
||||||
```shell
|
|
||||||
npm run build
|
|
||||||
```
|
|
||||||
|
|
||||||
## CDN Builds
|
|
||||||
|
|
||||||
### ECMAScript Modules
|
|
||||||
|
|
||||||
To load this module directly into modern browsers that [support loading ECMAScript Modules](https://caniuse.com/#feat=es6-module) you can make use of [jspm](https://jspm.org/):
|
|
||||||
|
|
||||||
```html
|
|
||||||
<script type="module">
|
|
||||||
import { v4 as uuidv4 } from 'https://jspm.dev/uuid';
|
|
||||||
console.log(uuidv4()); // ⇨ '1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed'
|
|
||||||
</script>
|
|
||||||
```
|
|
||||||
|
|
||||||
### UMD
|
|
||||||
|
|
||||||
To load this module directly into older browsers you can use the [UMD (Universal Module Definition)](https://github.com/umdjs/umd) builds from any of the following CDNs:
|
|
||||||
|
|
||||||
**Using [UNPKG](https://unpkg.com/uuid@latest/dist/umd/)**:
|
|
||||||
|
|
||||||
```html
|
|
||||||
<script src="https://unpkg.com/uuid@latest/dist/umd/uuidv4.min.js"></script>
|
|
||||||
```
|
|
||||||
|
|
||||||
**Using [jsDelivr](https://cdn.jsdelivr.net/npm/uuid@latest/dist/umd/)**:
|
|
||||||
|
|
||||||
```html
|
|
||||||
<script src="https://cdn.jsdelivr.net/npm/uuid@latest/dist/umd/uuidv4.min.js"></script>
|
|
||||||
```
|
|
||||||
|
|
||||||
**Using [cdnjs](https://cdnjs.com/libraries/uuid)**:
|
|
||||||
|
|
||||||
```html
|
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/uuid/8.1.0/uuidv4.min.js"></script>
|
|
||||||
```
|
|
||||||
|
|
||||||
These CDNs all provide the same [`uuidv4()`](#uuidv4options-buffer-offset) method:
|
|
||||||
|
|
||||||
```html
|
|
||||||
<script>
|
|
||||||
uuidv4(); // ⇨ '55af1e37-0734-46d8-b070-a1e42e4fc392'
|
|
||||||
</script>
|
|
||||||
```
|
|
||||||
|
|
||||||
Methods for the other algorithms ([`uuidv1()`](#uuidv1options-buffer-offset), [`uuidv3()`](#uuidv3name-namespace-buffer-offset) and [`uuidv5()`](#uuidv5name-namespace-buffer-offset)) are available from the files `uuidv1.min.js`, `uuidv3.min.js` and `uuidv5.min.js` respectively.
|
|
||||||
|
|
||||||
## "getRandomValues() not supported"
|
|
||||||
|
|
||||||
This error occurs in environments where the standard [`crypto.getRandomValues()`](https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues) API is not supported. This issue can be resolved by adding an appropriate polyfill:
|
|
||||||
|
|
||||||
### React Native / Expo
|
|
||||||
|
|
||||||
1. Install [`react-native-get-random-values`](https://github.com/LinusU/react-native-get-random-values#readme)
|
|
||||||
1. Import it _before_ `uuid`. Since `uuid` might also appear as a transitive dependency of some other imports it's safest to just import `react-native-get-random-values` as the very first thing in your entry point:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
import 'react-native-get-random-values';
|
|
||||||
import { v4 as uuidv4 } from 'uuid';
|
|
||||||
```
|
|
||||||
|
|
||||||
Note: If you are using Expo, you must be using at least `react-native-get-random-values@1.5.0` and `expo@39.0.0`.
|
|
||||||
|
|
||||||
### Web Workers / Service Workers (Edge <= 18)
|
|
||||||
|
|
||||||
[In Edge <= 18, Web Crypto is not supported in Web Workers or Service Workers](https://caniuse.com/#feat=cryptography) and we are not aware of a polyfill (let us know if you find one, please).
|
|
||||||
|
|
||||||
## Upgrading From `uuid@7.x`
|
|
||||||
|
|
||||||
### Only Named Exports Supported When Using with Node.js ESM
|
|
||||||
|
|
||||||
`uuid@7.x` did not come with native ECMAScript Module (ESM) support for Node.js. Importing it in Node.js ESM consequently imported the CommonJS source with a default export. This library now comes with true Node.js ESM support and only provides named exports.
|
|
||||||
|
|
||||||
Instead of doing:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
import uuid from 'uuid';
|
|
||||||
uuid.v4();
|
|
||||||
```
|
|
||||||
|
|
||||||
you will now have to use the named exports:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
import { v4 as uuidv4 } from 'uuid';
|
|
||||||
uuidv4();
|
|
||||||
```
|
|
||||||
|
|
||||||
### Deep Requires No Longer Supported
|
|
||||||
|
|
||||||
Deep requires like `require('uuid/v4')` [which have been deprecated in `uuid@7.x`](#deep-requires-now-deprecated) are no longer supported.
|
|
||||||
|
|
||||||
## Upgrading From `uuid@3.x`
|
|
||||||
|
|
||||||
"_Wait... what happened to `uuid@4.x` - `uuid@6.x`?!?_"
|
|
||||||
|
|
||||||
In order to avoid confusion with RFC [version 4](#uuidv4options-buffer-offset) and [version 5](#uuidv5name-namespace-buffer-offset) UUIDs, and a possible [version 6](http://gh.peabody.io/uuidv6/), releases 4 thru 6 of this module have been skipped.
|
|
||||||
|
|
||||||
### Deep Requires Now Deprecated
|
|
||||||
|
|
||||||
`uuid@3.x` encouraged the use of deep requires to minimize the bundle size of browser builds:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
const uuidv4 = require('uuid/v4'); // <== NOW DEPRECATED!
|
|
||||||
uuidv4();
|
|
||||||
```
|
|
||||||
|
|
||||||
As of `uuid@7.x` this library now provides ECMAScript modules builds, which allow packagers like Webpack and Rollup to do "tree-shaking" to remove dead code. Instead, use the `import` syntax:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
import { v4 as uuidv4 } from 'uuid';
|
|
||||||
uuidv4();
|
|
||||||
```
|
|
||||||
|
|
||||||
... or for CommonJS:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
const { v4: uuidv4 } = require('uuid');
|
|
||||||
uuidv4();
|
|
||||||
```
|
|
||||||
|
|
||||||
### Default Export Removed
|
|
||||||
|
|
||||||
`uuid@3.x` was exporting the Version 4 UUID method as a default export:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
const uuid = require('uuid'); // <== REMOVED!
|
|
||||||
```
|
|
||||||
|
|
||||||
This usage pattern was already discouraged in `uuid@3.x` and has been removed in `uuid@7.x`.
|
|
||||||
|
|
||||||
----
|
|
||||||
Markdown generated from [README_js.md](README_js.md) by [](https://github.com/broofa/runmd)
|
|
2
node_modules/@actions/core/node_modules/uuid/dist/bin/uuid
generated
vendored
2
node_modules/@actions/core/node_modules/uuid/dist/bin/uuid
generated
vendored
|
@ -1,2 +0,0 @@
|
||||||
#!/usr/bin/env node
|
|
||||||
require('../uuid-bin');
|
|
9
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/index.js
generated
vendored
9
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/index.js
generated
vendored
|
@ -1,9 +0,0 @@
|
||||||
export { default as v1 } from './v1.js';
|
|
||||||
export { default as v3 } from './v3.js';
|
|
||||||
export { default as v4 } from './v4.js';
|
|
||||||
export { default as v5 } from './v5.js';
|
|
||||||
export { default as NIL } from './nil.js';
|
|
||||||
export { default as version } from './version.js';
|
|
||||||
export { default as validate } from './validate.js';
|
|
||||||
export { default as stringify } from './stringify.js';
|
|
||||||
export { default as parse } from './parse.js';
|
|
215
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/md5.js
generated
vendored
215
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/md5.js
generated
vendored
|
@ -1,215 +0,0 @@
|
||||||
/*
|
|
||||||
* Browser-compatible JavaScript MD5
|
|
||||||
*
|
|
||||||
* Modification of JavaScript MD5
|
|
||||||
* https://github.com/blueimp/JavaScript-MD5
|
|
||||||
*
|
|
||||||
* Copyright 2011, Sebastian Tschan
|
|
||||||
* https://blueimp.net
|
|
||||||
*
|
|
||||||
* Licensed under the MIT license:
|
|
||||||
* https://opensource.org/licenses/MIT
|
|
||||||
*
|
|
||||||
* Based on
|
|
||||||
* A JavaScript implementation of the RSA Data Security, Inc. MD5 Message
|
|
||||||
* Digest Algorithm, as defined in RFC 1321.
|
|
||||||
* Version 2.2 Copyright (C) Paul Johnston 1999 - 2009
|
|
||||||
* Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet
|
|
||||||
* Distributed under the BSD License
|
|
||||||
* See http://pajhome.org.uk/crypt/md5 for more info.
|
|
||||||
*/
|
|
||||||
function md5(bytes) {
|
|
||||||
if (typeof bytes === 'string') {
|
|
||||||
var msg = unescape(encodeURIComponent(bytes)); // UTF8 escape
|
|
||||||
|
|
||||||
bytes = new Uint8Array(msg.length);
|
|
||||||
|
|
||||||
for (var i = 0; i < msg.length; ++i) {
|
|
||||||
bytes[i] = msg.charCodeAt(i);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return md5ToHexEncodedArray(wordsToMd5(bytesToWords(bytes), bytes.length * 8));
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Convert an array of little-endian words to an array of bytes
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
function md5ToHexEncodedArray(input) {
|
|
||||||
var output = [];
|
|
||||||
var length32 = input.length * 32;
|
|
||||||
var hexTab = '0123456789abcdef';
|
|
||||||
|
|
||||||
for (var i = 0; i < length32; i += 8) {
|
|
||||||
var x = input[i >> 5] >>> i % 32 & 0xff;
|
|
||||||
var hex = parseInt(hexTab.charAt(x >>> 4 & 0x0f) + hexTab.charAt(x & 0x0f), 16);
|
|
||||||
output.push(hex);
|
|
||||||
}
|
|
||||||
|
|
||||||
return output;
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Calculate output length with padding and bit length
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
function getOutputLength(inputLength8) {
|
|
||||||
return (inputLength8 + 64 >>> 9 << 4) + 14 + 1;
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Calculate the MD5 of an array of little-endian words, and a bit length.
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
function wordsToMd5(x, len) {
|
|
||||||
/* append padding */
|
|
||||||
x[len >> 5] |= 0x80 << len % 32;
|
|
||||||
x[getOutputLength(len) - 1] = len;
|
|
||||||
var a = 1732584193;
|
|
||||||
var b = -271733879;
|
|
||||||
var c = -1732584194;
|
|
||||||
var d = 271733878;
|
|
||||||
|
|
||||||
for (var i = 0; i < x.length; i += 16) {
|
|
||||||
var olda = a;
|
|
||||||
var oldb = b;
|
|
||||||
var oldc = c;
|
|
||||||
var oldd = d;
|
|
||||||
a = md5ff(a, b, c, d, x[i], 7, -680876936);
|
|
||||||
d = md5ff(d, a, b, c, x[i + 1], 12, -389564586);
|
|
||||||
c = md5ff(c, d, a, b, x[i + 2], 17, 606105819);
|
|
||||||
b = md5ff(b, c, d, a, x[i + 3], 22, -1044525330);
|
|
||||||
a = md5ff(a, b, c, d, x[i + 4], 7, -176418897);
|
|
||||||
d = md5ff(d, a, b, c, x[i + 5], 12, 1200080426);
|
|
||||||
c = md5ff(c, d, a, b, x[i + 6], 17, -1473231341);
|
|
||||||
b = md5ff(b, c, d, a, x[i + 7], 22, -45705983);
|
|
||||||
a = md5ff(a, b, c, d, x[i + 8], 7, 1770035416);
|
|
||||||
d = md5ff(d, a, b, c, x[i + 9], 12, -1958414417);
|
|
||||||
c = md5ff(c, d, a, b, x[i + 10], 17, -42063);
|
|
||||||
b = md5ff(b, c, d, a, x[i + 11], 22, -1990404162);
|
|
||||||
a = md5ff(a, b, c, d, x[i + 12], 7, 1804603682);
|
|
||||||
d = md5ff(d, a, b, c, x[i + 13], 12, -40341101);
|
|
||||||
c = md5ff(c, d, a, b, x[i + 14], 17, -1502002290);
|
|
||||||
b = md5ff(b, c, d, a, x[i + 15], 22, 1236535329);
|
|
||||||
a = md5gg(a, b, c, d, x[i + 1], 5, -165796510);
|
|
||||||
d = md5gg(d, a, b, c, x[i + 6], 9, -1069501632);
|
|
||||||
c = md5gg(c, d, a, b, x[i + 11], 14, 643717713);
|
|
||||||
b = md5gg(b, c, d, a, x[i], 20, -373897302);
|
|
||||||
a = md5gg(a, b, c, d, x[i + 5], 5, -701558691);
|
|
||||||
d = md5gg(d, a, b, c, x[i + 10], 9, 38016083);
|
|
||||||
c = md5gg(c, d, a, b, x[i + 15], 14, -660478335);
|
|
||||||
b = md5gg(b, c, d, a, x[i + 4], 20, -405537848);
|
|
||||||
a = md5gg(a, b, c, d, x[i + 9], 5, 568446438);
|
|
||||||
d = md5gg(d, a, b, c, x[i + 14], 9, -1019803690);
|
|
||||||
c = md5gg(c, d, a, b, x[i + 3], 14, -187363961);
|
|
||||||
b = md5gg(b, c, d, a, x[i + 8], 20, 1163531501);
|
|
||||||
a = md5gg(a, b, c, d, x[i + 13], 5, -1444681467);
|
|
||||||
d = md5gg(d, a, b, c, x[i + 2], 9, -51403784);
|
|
||||||
c = md5gg(c, d, a, b, x[i + 7], 14, 1735328473);
|
|
||||||
b = md5gg(b, c, d, a, x[i + 12], 20, -1926607734);
|
|
||||||
a = md5hh(a, b, c, d, x[i + 5], 4, -378558);
|
|
||||||
d = md5hh(d, a, b, c, x[i + 8], 11, -2022574463);
|
|
||||||
c = md5hh(c, d, a, b, x[i + 11], 16, 1839030562);
|
|
||||||
b = md5hh(b, c, d, a, x[i + 14], 23, -35309556);
|
|
||||||
a = md5hh(a, b, c, d, x[i + 1], 4, -1530992060);
|
|
||||||
d = md5hh(d, a, b, c, x[i + 4], 11, 1272893353);
|
|
||||||
c = md5hh(c, d, a, b, x[i + 7], 16, -155497632);
|
|
||||||
b = md5hh(b, c, d, a, x[i + 10], 23, -1094730640);
|
|
||||||
a = md5hh(a, b, c, d, x[i + 13], 4, 681279174);
|
|
||||||
d = md5hh(d, a, b, c, x[i], 11, -358537222);
|
|
||||||
c = md5hh(c, d, a, b, x[i + 3], 16, -722521979);
|
|
||||||
b = md5hh(b, c, d, a, x[i + 6], 23, 76029189);
|
|
||||||
a = md5hh(a, b, c, d, x[i + 9], 4, -640364487);
|
|
||||||
d = md5hh(d, a, b, c, x[i + 12], 11, -421815835);
|
|
||||||
c = md5hh(c, d, a, b, x[i + 15], 16, 530742520);
|
|
||||||
b = md5hh(b, c, d, a, x[i + 2], 23, -995338651);
|
|
||||||
a = md5ii(a, b, c, d, x[i], 6, -198630844);
|
|
||||||
d = md5ii(d, a, b, c, x[i + 7], 10, 1126891415);
|
|
||||||
c = md5ii(c, d, a, b, x[i + 14], 15, -1416354905);
|
|
||||||
b = md5ii(b, c, d, a, x[i + 5], 21, -57434055);
|
|
||||||
a = md5ii(a, b, c, d, x[i + 12], 6, 1700485571);
|
|
||||||
d = md5ii(d, a, b, c, x[i + 3], 10, -1894986606);
|
|
||||||
c = md5ii(c, d, a, b, x[i + 10], 15, -1051523);
|
|
||||||
b = md5ii(b, c, d, a, x[i + 1], 21, -2054922799);
|
|
||||||
a = md5ii(a, b, c, d, x[i + 8], 6, 1873313359);
|
|
||||||
d = md5ii(d, a, b, c, x[i + 15], 10, -30611744);
|
|
||||||
c = md5ii(c, d, a, b, x[i + 6], 15, -1560198380);
|
|
||||||
b = md5ii(b, c, d, a, x[i + 13], 21, 1309151649);
|
|
||||||
a = md5ii(a, b, c, d, x[i + 4], 6, -145523070);
|
|
||||||
d = md5ii(d, a, b, c, x[i + 11], 10, -1120210379);
|
|
||||||
c = md5ii(c, d, a, b, x[i + 2], 15, 718787259);
|
|
||||||
b = md5ii(b, c, d, a, x[i + 9], 21, -343485551);
|
|
||||||
a = safeAdd(a, olda);
|
|
||||||
b = safeAdd(b, oldb);
|
|
||||||
c = safeAdd(c, oldc);
|
|
||||||
d = safeAdd(d, oldd);
|
|
||||||
}
|
|
||||||
|
|
||||||
return [a, b, c, d];
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Convert an array bytes to an array of little-endian words
|
|
||||||
* Characters >255 have their high-byte silently ignored.
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
function bytesToWords(input) {
|
|
||||||
if (input.length === 0) {
|
|
||||||
return [];
|
|
||||||
}
|
|
||||||
|
|
||||||
var length8 = input.length * 8;
|
|
||||||
var output = new Uint32Array(getOutputLength(length8));
|
|
||||||
|
|
||||||
for (var i = 0; i < length8; i += 8) {
|
|
||||||
output[i >> 5] |= (input[i / 8] & 0xff) << i % 32;
|
|
||||||
}
|
|
||||||
|
|
||||||
return output;
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Add integers, wrapping at 2^32. This uses 16-bit operations internally
|
|
||||||
* to work around bugs in some JS interpreters.
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
function safeAdd(x, y) {
|
|
||||||
var lsw = (x & 0xffff) + (y & 0xffff);
|
|
||||||
var msw = (x >> 16) + (y >> 16) + (lsw >> 16);
|
|
||||||
return msw << 16 | lsw & 0xffff;
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Bitwise rotate a 32-bit number to the left.
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
function bitRotateLeft(num, cnt) {
|
|
||||||
return num << cnt | num >>> 32 - cnt;
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* These functions implement the four basic operations the algorithm uses.
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
function md5cmn(q, a, b, x, s, t) {
|
|
||||||
return safeAdd(bitRotateLeft(safeAdd(safeAdd(a, q), safeAdd(x, t)), s), b);
|
|
||||||
}
|
|
||||||
|
|
||||||
function md5ff(a, b, c, d, x, s, t) {
|
|
||||||
return md5cmn(b & c | ~b & d, a, b, x, s, t);
|
|
||||||
}
|
|
||||||
|
|
||||||
function md5gg(a, b, c, d, x, s, t) {
|
|
||||||
return md5cmn(b & d | c & ~d, a, b, x, s, t);
|
|
||||||
}
|
|
||||||
|
|
||||||
function md5hh(a, b, c, d, x, s, t) {
|
|
||||||
return md5cmn(b ^ c ^ d, a, b, x, s, t);
|
|
||||||
}
|
|
||||||
|
|
||||||
function md5ii(a, b, c, d, x, s, t) {
|
|
||||||
return md5cmn(c ^ (b | ~d), a, b, x, s, t);
|
|
||||||
}
|
|
||||||
|
|
||||||
export default md5;
|
|
1
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/nil.js
generated
vendored
1
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/nil.js
generated
vendored
|
@ -1 +0,0 @@
|
||||||
export default '00000000-0000-0000-0000-000000000000';
|
|
35
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/parse.js
generated
vendored
35
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/parse.js
generated
vendored
|
@ -1,35 +0,0 @@
|
||||||
import validate from './validate.js';
|
|
||||||
|
|
||||||
function parse(uuid) {
|
|
||||||
if (!validate(uuid)) {
|
|
||||||
throw TypeError('Invalid UUID');
|
|
||||||
}
|
|
||||||
|
|
||||||
var v;
|
|
||||||
var arr = new Uint8Array(16); // Parse ########-....-....-....-............
|
|
||||||
|
|
||||||
arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24;
|
|
||||||
arr[1] = v >>> 16 & 0xff;
|
|
||||||
arr[2] = v >>> 8 & 0xff;
|
|
||||||
arr[3] = v & 0xff; // Parse ........-####-....-....-............
|
|
||||||
|
|
||||||
arr[4] = (v = parseInt(uuid.slice(9, 13), 16)) >>> 8;
|
|
||||||
arr[5] = v & 0xff; // Parse ........-....-####-....-............
|
|
||||||
|
|
||||||
arr[6] = (v = parseInt(uuid.slice(14, 18), 16)) >>> 8;
|
|
||||||
arr[7] = v & 0xff; // Parse ........-....-....-####-............
|
|
||||||
|
|
||||||
arr[8] = (v = parseInt(uuid.slice(19, 23), 16)) >>> 8;
|
|
||||||
arr[9] = v & 0xff; // Parse ........-....-....-....-############
|
|
||||||
// (Use "/" to avoid 32-bit truncation when bit-shifting high-order bytes)
|
|
||||||
|
|
||||||
arr[10] = (v = parseInt(uuid.slice(24, 36), 16)) / 0x10000000000 & 0xff;
|
|
||||||
arr[11] = v / 0x100000000 & 0xff;
|
|
||||||
arr[12] = v >>> 24 & 0xff;
|
|
||||||
arr[13] = v >>> 16 & 0xff;
|
|
||||||
arr[14] = v >>> 8 & 0xff;
|
|
||||||
arr[15] = v & 0xff;
|
|
||||||
return arr;
|
|
||||||
}
|
|
||||||
|
|
||||||
export default parse;
|
|
1
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/regex.js
generated
vendored
1
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/regex.js
generated
vendored
|
@ -1 +0,0 @@
|
||||||
export default /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;
|
|
19
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/rng.js
generated
vendored
19
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/rng.js
generated
vendored
|
@ -1,19 +0,0 @@
|
||||||
// Unique ID creation requires a high quality random # generator. In the browser we therefore
|
|
||||||
// require the crypto API and do not support built-in fallback to lower quality random number
|
|
||||||
// generators (like Math.random()).
|
|
||||||
var getRandomValues;
|
|
||||||
var rnds8 = new Uint8Array(16);
|
|
||||||
export default function rng() {
|
|
||||||
// lazy load so that environments that need to polyfill have a chance to do so
|
|
||||||
if (!getRandomValues) {
|
|
||||||
// getRandomValues needs to be invoked in a context where "this" is a Crypto implementation. Also,
|
|
||||||
// find the complete implementation of crypto (msCrypto) on IE11.
|
|
||||||
getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== 'undefined' && typeof msCrypto.getRandomValues === 'function' && msCrypto.getRandomValues.bind(msCrypto);
|
|
||||||
|
|
||||||
if (!getRandomValues) {
|
|
||||||
throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return getRandomValues(rnds8);
|
|
||||||
}
|
|
96
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/sha1.js
generated
vendored
96
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/sha1.js
generated
vendored
|
@ -1,96 +0,0 @@
|
||||||
// Adapted from Chris Veness' SHA1 code at
|
|
||||||
// http://www.movable-type.co.uk/scripts/sha1.html
|
|
||||||
function f(s, x, y, z) {
|
|
||||||
switch (s) {
|
|
||||||
case 0:
|
|
||||||
return x & y ^ ~x & z;
|
|
||||||
|
|
||||||
case 1:
|
|
||||||
return x ^ y ^ z;
|
|
||||||
|
|
||||||
case 2:
|
|
||||||
return x & y ^ x & z ^ y & z;
|
|
||||||
|
|
||||||
case 3:
|
|
||||||
return x ^ y ^ z;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function ROTL(x, n) {
|
|
||||||
return x << n | x >>> 32 - n;
|
|
||||||
}
|
|
||||||
|
|
||||||
function sha1(bytes) {
|
|
||||||
var K = [0x5a827999, 0x6ed9eba1, 0x8f1bbcdc, 0xca62c1d6];
|
|
||||||
var H = [0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0];
|
|
||||||
|
|
||||||
if (typeof bytes === 'string') {
|
|
||||||
var msg = unescape(encodeURIComponent(bytes)); // UTF8 escape
|
|
||||||
|
|
||||||
bytes = [];
|
|
||||||
|
|
||||||
for (var i = 0; i < msg.length; ++i) {
|
|
||||||
bytes.push(msg.charCodeAt(i));
|
|
||||||
}
|
|
||||||
} else if (!Array.isArray(bytes)) {
|
|
||||||
// Convert Array-like to Array
|
|
||||||
bytes = Array.prototype.slice.call(bytes);
|
|
||||||
}
|
|
||||||
|
|
||||||
bytes.push(0x80);
|
|
||||||
var l = bytes.length / 4 + 2;
|
|
||||||
var N = Math.ceil(l / 16);
|
|
||||||
var M = new Array(N);
|
|
||||||
|
|
||||||
for (var _i = 0; _i < N; ++_i) {
|
|
||||||
var arr = new Uint32Array(16);
|
|
||||||
|
|
||||||
for (var j = 0; j < 16; ++j) {
|
|
||||||
arr[j] = bytes[_i * 64 + j * 4] << 24 | bytes[_i * 64 + j * 4 + 1] << 16 | bytes[_i * 64 + j * 4 + 2] << 8 | bytes[_i * 64 + j * 4 + 3];
|
|
||||||
}
|
|
||||||
|
|
||||||
M[_i] = arr;
|
|
||||||
}
|
|
||||||
|
|
||||||
M[N - 1][14] = (bytes.length - 1) * 8 / Math.pow(2, 32);
|
|
||||||
M[N - 1][14] = Math.floor(M[N - 1][14]);
|
|
||||||
M[N - 1][15] = (bytes.length - 1) * 8 & 0xffffffff;
|
|
||||||
|
|
||||||
for (var _i2 = 0; _i2 < N; ++_i2) {
|
|
||||||
var W = new Uint32Array(80);
|
|
||||||
|
|
||||||
for (var t = 0; t < 16; ++t) {
|
|
||||||
W[t] = M[_i2][t];
|
|
||||||
}
|
|
||||||
|
|
||||||
for (var _t = 16; _t < 80; ++_t) {
|
|
||||||
W[_t] = ROTL(W[_t - 3] ^ W[_t - 8] ^ W[_t - 14] ^ W[_t - 16], 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
var a = H[0];
|
|
||||||
var b = H[1];
|
|
||||||
var c = H[2];
|
|
||||||
var d = H[3];
|
|
||||||
var e = H[4];
|
|
||||||
|
|
||||||
for (var _t2 = 0; _t2 < 80; ++_t2) {
|
|
||||||
var s = Math.floor(_t2 / 20);
|
|
||||||
var T = ROTL(a, 5) + f(s, b, c, d) + e + K[s] + W[_t2] >>> 0;
|
|
||||||
e = d;
|
|
||||||
d = c;
|
|
||||||
c = ROTL(b, 30) >>> 0;
|
|
||||||
b = a;
|
|
||||||
a = T;
|
|
||||||
}
|
|
||||||
|
|
||||||
H[0] = H[0] + a >>> 0;
|
|
||||||
H[1] = H[1] + b >>> 0;
|
|
||||||
H[2] = H[2] + c >>> 0;
|
|
||||||
H[3] = H[3] + d >>> 0;
|
|
||||||
H[4] = H[4] + e >>> 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
return [H[0] >> 24 & 0xff, H[0] >> 16 & 0xff, H[0] >> 8 & 0xff, H[0] & 0xff, H[1] >> 24 & 0xff, H[1] >> 16 & 0xff, H[1] >> 8 & 0xff, H[1] & 0xff, H[2] >> 24 & 0xff, H[2] >> 16 & 0xff, H[2] >> 8 & 0xff, H[2] & 0xff, H[3] >> 24 & 0xff, H[3] >> 16 & 0xff, H[3] >> 8 & 0xff, H[3] & 0xff, H[4] >> 24 & 0xff, H[4] >> 16 & 0xff, H[4] >> 8 & 0xff, H[4] & 0xff];
|
|
||||||
}
|
|
||||||
|
|
||||||
export default sha1;
|
|
30
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/stringify.js
generated
vendored
30
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/stringify.js
generated
vendored
|
@ -1,30 +0,0 @@
|
||||||
import validate from './validate.js';
|
|
||||||
/**
|
|
||||||
* Convert array of 16 byte values to UUID string format of the form:
|
|
||||||
* XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
|
|
||||||
*/
|
|
||||||
|
|
||||||
var byteToHex = [];
|
|
||||||
|
|
||||||
for (var i = 0; i < 256; ++i) {
|
|
||||||
byteToHex.push((i + 0x100).toString(16).substr(1));
|
|
||||||
}
|
|
||||||
|
|
||||||
function stringify(arr) {
|
|
||||||
var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
|
||||||
// Note: Be careful editing this code! It's been tuned for performance
|
|
||||||
// and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434
|
|
||||||
var uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID. If this throws, it's likely due to one
|
|
||||||
// of the following:
|
|
||||||
// - One or more input array values don't map to a hex octet (leading to
|
|
||||||
// "undefined" in the uuid)
|
|
||||||
// - Invalid input values for the RFC `version` or `variant` fields
|
|
||||||
|
|
||||||
if (!validate(uuid)) {
|
|
||||||
throw TypeError('Stringified UUID is invalid');
|
|
||||||
}
|
|
||||||
|
|
||||||
return uuid;
|
|
||||||
}
|
|
||||||
|
|
||||||
export default stringify;
|
|
95
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/v1.js
generated
vendored
95
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/v1.js
generated
vendored
|
@ -1,95 +0,0 @@
|
||||||
import rng from './rng.js';
|
|
||||||
import stringify from './stringify.js'; // **`v1()` - Generate time-based UUID**
|
|
||||||
//
|
|
||||||
// Inspired by https://github.com/LiosK/UUID.js
|
|
||||||
// and http://docs.python.org/library/uuid.html
|
|
||||||
|
|
||||||
var _nodeId;
|
|
||||||
|
|
||||||
var _clockseq; // Previous uuid creation time
|
|
||||||
|
|
||||||
|
|
||||||
var _lastMSecs = 0;
|
|
||||||
var _lastNSecs = 0; // See https://github.com/uuidjs/uuid for API details
|
|
||||||
|
|
||||||
function v1(options, buf, offset) {
|
|
||||||
var i = buf && offset || 0;
|
|
||||||
var b = buf || new Array(16);
|
|
||||||
options = options || {};
|
|
||||||
var node = options.node || _nodeId;
|
|
||||||
var clockseq = options.clockseq !== undefined ? options.clockseq : _clockseq; // node and clockseq need to be initialized to random values if they're not
|
|
||||||
// specified. We do this lazily to minimize issues related to insufficient
|
|
||||||
// system entropy. See #189
|
|
||||||
|
|
||||||
if (node == null || clockseq == null) {
|
|
||||||
var seedBytes = options.random || (options.rng || rng)();
|
|
||||||
|
|
||||||
if (node == null) {
|
|
||||||
// Per 4.5, create and 48-bit node id, (47 random bits + multicast bit = 1)
|
|
||||||
node = _nodeId = [seedBytes[0] | 0x01, seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]];
|
|
||||||
}
|
|
||||||
|
|
||||||
if (clockseq == null) {
|
|
||||||
// Per 4.2.2, randomize (14 bit) clockseq
|
|
||||||
clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 0x3fff;
|
|
||||||
}
|
|
||||||
} // UUID timestamps are 100 nano-second units since the Gregorian epoch,
|
|
||||||
// (1582-10-15 00:00). JSNumbers aren't precise enough for this, so
|
|
||||||
// time is handled internally as 'msecs' (integer milliseconds) and 'nsecs'
|
|
||||||
// (100-nanoseconds offset from msecs) since unix epoch, 1970-01-01 00:00.
|
|
||||||
|
|
||||||
|
|
||||||
var msecs = options.msecs !== undefined ? options.msecs : Date.now(); // Per 4.2.1.2, use count of uuid's generated during the current clock
|
|
||||||
// cycle to simulate higher resolution clock
|
|
||||||
|
|
||||||
var nsecs = options.nsecs !== undefined ? options.nsecs : _lastNSecs + 1; // Time since last uuid creation (in msecs)
|
|
||||||
|
|
||||||
var dt = msecs - _lastMSecs + (nsecs - _lastNSecs) / 10000; // Per 4.2.1.2, Bump clockseq on clock regression
|
|
||||||
|
|
||||||
if (dt < 0 && options.clockseq === undefined) {
|
|
||||||
clockseq = clockseq + 1 & 0x3fff;
|
|
||||||
} // Reset nsecs if clock regresses (new clockseq) or we've moved onto a new
|
|
||||||
// time interval
|
|
||||||
|
|
||||||
|
|
||||||
if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === undefined) {
|
|
||||||
nsecs = 0;
|
|
||||||
} // Per 4.2.1.2 Throw error if too many uuids are requested
|
|
||||||
|
|
||||||
|
|
||||||
if (nsecs >= 10000) {
|
|
||||||
throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");
|
|
||||||
}
|
|
||||||
|
|
||||||
_lastMSecs = msecs;
|
|
||||||
_lastNSecs = nsecs;
|
|
||||||
_clockseq = clockseq; // Per 4.1.4 - Convert from unix epoch to Gregorian epoch
|
|
||||||
|
|
||||||
msecs += 12219292800000; // `time_low`
|
|
||||||
|
|
||||||
var tl = ((msecs & 0xfffffff) * 10000 + nsecs) % 0x100000000;
|
|
||||||
b[i++] = tl >>> 24 & 0xff;
|
|
||||||
b[i++] = tl >>> 16 & 0xff;
|
|
||||||
b[i++] = tl >>> 8 & 0xff;
|
|
||||||
b[i++] = tl & 0xff; // `time_mid`
|
|
||||||
|
|
||||||
var tmh = msecs / 0x100000000 * 10000 & 0xfffffff;
|
|
||||||
b[i++] = tmh >>> 8 & 0xff;
|
|
||||||
b[i++] = tmh & 0xff; // `time_high_and_version`
|
|
||||||
|
|
||||||
b[i++] = tmh >>> 24 & 0xf | 0x10; // include version
|
|
||||||
|
|
||||||
b[i++] = tmh >>> 16 & 0xff; // `clock_seq_hi_and_reserved` (Per 4.2.2 - include variant)
|
|
||||||
|
|
||||||
b[i++] = clockseq >>> 8 | 0x80; // `clock_seq_low`
|
|
||||||
|
|
||||||
b[i++] = clockseq & 0xff; // `node`
|
|
||||||
|
|
||||||
for (var n = 0; n < 6; ++n) {
|
|
||||||
b[i + n] = node[n];
|
|
||||||
}
|
|
||||||
|
|
||||||
return buf || stringify(b);
|
|
||||||
}
|
|
||||||
|
|
||||||
export default v1;
|
|
4
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/v3.js
generated
vendored
4
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/v3.js
generated
vendored
|
@ -1,4 +0,0 @@
|
||||||
import v35 from './v35.js';
|
|
||||||
import md5 from './md5.js';
|
|
||||||
var v3 = v35('v3', 0x30, md5);
|
|
||||||
export default v3;
|
|
64
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/v35.js
generated
vendored
64
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/v35.js
generated
vendored
|
@ -1,64 +0,0 @@
|
||||||
import stringify from './stringify.js';
|
|
||||||
import parse from './parse.js';
|
|
||||||
|
|
||||||
function stringToBytes(str) {
|
|
||||||
str = unescape(encodeURIComponent(str)); // UTF8 escape
|
|
||||||
|
|
||||||
var bytes = [];
|
|
||||||
|
|
||||||
for (var i = 0; i < str.length; ++i) {
|
|
||||||
bytes.push(str.charCodeAt(i));
|
|
||||||
}
|
|
||||||
|
|
||||||
return bytes;
|
|
||||||
}
|
|
||||||
|
|
||||||
export var DNS = '6ba7b810-9dad-11d1-80b4-00c04fd430c8';
|
|
||||||
export var URL = '6ba7b811-9dad-11d1-80b4-00c04fd430c8';
|
|
||||||
export default function (name, version, hashfunc) {
|
|
||||||
function generateUUID(value, namespace, buf, offset) {
|
|
||||||
if (typeof value === 'string') {
|
|
||||||
value = stringToBytes(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (typeof namespace === 'string') {
|
|
||||||
namespace = parse(namespace);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (namespace.length !== 16) {
|
|
||||||
throw TypeError('Namespace must be array-like (16 iterable integer values, 0-255)');
|
|
||||||
} // Compute hash of namespace and value, Per 4.3
|
|
||||||
// Future: Use spread syntax when supported on all platforms, e.g. `bytes =
|
|
||||||
// hashfunc([...namespace, ... value])`
|
|
||||||
|
|
||||||
|
|
||||||
var bytes = new Uint8Array(16 + value.length);
|
|
||||||
bytes.set(namespace);
|
|
||||||
bytes.set(value, namespace.length);
|
|
||||||
bytes = hashfunc(bytes);
|
|
||||||
bytes[6] = bytes[6] & 0x0f | version;
|
|
||||||
bytes[8] = bytes[8] & 0x3f | 0x80;
|
|
||||||
|
|
||||||
if (buf) {
|
|
||||||
offset = offset || 0;
|
|
||||||
|
|
||||||
for (var i = 0; i < 16; ++i) {
|
|
||||||
buf[offset + i] = bytes[i];
|
|
||||||
}
|
|
||||||
|
|
||||||
return buf;
|
|
||||||
}
|
|
||||||
|
|
||||||
return stringify(bytes);
|
|
||||||
} // Function#name is not settable on some platforms (#270)
|
|
||||||
|
|
||||||
|
|
||||||
try {
|
|
||||||
generateUUID.name = name; // eslint-disable-next-line no-empty
|
|
||||||
} catch (err) {} // For CommonJS default export support
|
|
||||||
|
|
||||||
|
|
||||||
generateUUID.DNS = DNS;
|
|
||||||
generateUUID.URL = URL;
|
|
||||||
return generateUUID;
|
|
||||||
}
|
|
24
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/v4.js
generated
vendored
24
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/v4.js
generated
vendored
|
@ -1,24 +0,0 @@
|
||||||
import rng from './rng.js';
|
|
||||||
import stringify from './stringify.js';
|
|
||||||
|
|
||||||
function v4(options, buf, offset) {
|
|
||||||
options = options || {};
|
|
||||||
var rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
|
|
||||||
|
|
||||||
rnds[6] = rnds[6] & 0x0f | 0x40;
|
|
||||||
rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided
|
|
||||||
|
|
||||||
if (buf) {
|
|
||||||
offset = offset || 0;
|
|
||||||
|
|
||||||
for (var i = 0; i < 16; ++i) {
|
|
||||||
buf[offset + i] = rnds[i];
|
|
||||||
}
|
|
||||||
|
|
||||||
return buf;
|
|
||||||
}
|
|
||||||
|
|
||||||
return stringify(rnds);
|
|
||||||
}
|
|
||||||
|
|
||||||
export default v4;
|
|
4
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/v5.js
generated
vendored
4
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/v5.js
generated
vendored
|
@ -1,4 +0,0 @@
|
||||||
import v35 from './v35.js';
|
|
||||||
import sha1 from './sha1.js';
|
|
||||||
var v5 = v35('v5', 0x50, sha1);
|
|
||||||
export default v5;
|
|
7
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/validate.js
generated
vendored
7
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/validate.js
generated
vendored
|
@ -1,7 +0,0 @@
|
||||||
import REGEX from './regex.js';
|
|
||||||
|
|
||||||
function validate(uuid) {
|
|
||||||
return typeof uuid === 'string' && REGEX.test(uuid);
|
|
||||||
}
|
|
||||||
|
|
||||||
export default validate;
|
|
11
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/version.js
generated
vendored
11
node_modules/@actions/core/node_modules/uuid/dist/esm-browser/version.js
generated
vendored
|
@ -1,11 +0,0 @@
|
||||||
import validate from './validate.js';
|
|
||||||
|
|
||||||
function version(uuid) {
|
|
||||||
if (!validate(uuid)) {
|
|
||||||
throw TypeError('Invalid UUID');
|
|
||||||
}
|
|
||||||
|
|
||||||
return parseInt(uuid.substr(14, 1), 16);
|
|
||||||
}
|
|
||||||
|
|
||||||
export default version;
|
|
9
node_modules/@actions/core/node_modules/uuid/dist/esm-node/index.js
generated
vendored
9
node_modules/@actions/core/node_modules/uuid/dist/esm-node/index.js
generated
vendored
|
@ -1,9 +0,0 @@
|
||||||
export { default as v1 } from './v1.js';
|
|
||||||
export { default as v3 } from './v3.js';
|
|
||||||
export { default as v4 } from './v4.js';
|
|
||||||
export { default as v5 } from './v5.js';
|
|
||||||
export { default as NIL } from './nil.js';
|
|
||||||
export { default as version } from './version.js';
|
|
||||||
export { default as validate } from './validate.js';
|
|
||||||
export { default as stringify } from './stringify.js';
|
|
||||||
export { default as parse } from './parse.js';
|
|
13
node_modules/@actions/core/node_modules/uuid/dist/esm-node/md5.js
generated
vendored
13
node_modules/@actions/core/node_modules/uuid/dist/esm-node/md5.js
generated
vendored
|
@ -1,13 +0,0 @@
|
||||||
import crypto from 'crypto';
|
|
||||||
|
|
||||||
function md5(bytes) {
|
|
||||||
if (Array.isArray(bytes)) {
|
|
||||||
bytes = Buffer.from(bytes);
|
|
||||||
} else if (typeof bytes === 'string') {
|
|
||||||
bytes = Buffer.from(bytes, 'utf8');
|
|
||||||
}
|
|
||||||
|
|
||||||
return crypto.createHash('md5').update(bytes).digest();
|
|
||||||
}
|
|
||||||
|
|
||||||
export default md5;
|
|
1
node_modules/@actions/core/node_modules/uuid/dist/esm-node/nil.js
generated
vendored
1
node_modules/@actions/core/node_modules/uuid/dist/esm-node/nil.js
generated
vendored
|
@ -1 +0,0 @@
|
||||||
export default '00000000-0000-0000-0000-000000000000';
|
|
35
node_modules/@actions/core/node_modules/uuid/dist/esm-node/parse.js
generated
vendored
35
node_modules/@actions/core/node_modules/uuid/dist/esm-node/parse.js
generated
vendored
|
@ -1,35 +0,0 @@
|
||||||
import validate from './validate.js';
|
|
||||||
|
|
||||||
function parse(uuid) {
|
|
||||||
if (!validate(uuid)) {
|
|
||||||
throw TypeError('Invalid UUID');
|
|
||||||
}
|
|
||||||
|
|
||||||
let v;
|
|
||||||
const arr = new Uint8Array(16); // Parse ########-....-....-....-............
|
|
||||||
|
|
||||||
arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24;
|
|
||||||
arr[1] = v >>> 16 & 0xff;
|
|
||||||
arr[2] = v >>> 8 & 0xff;
|
|
||||||
arr[3] = v & 0xff; // Parse ........-####-....-....-............
|
|
||||||
|
|
||||||
arr[4] = (v = parseInt(uuid.slice(9, 13), 16)) >>> 8;
|
|
||||||
arr[5] = v & 0xff; // Parse ........-....-####-....-............
|
|
||||||
|
|
||||||
arr[6] = (v = parseInt(uuid.slice(14, 18), 16)) >>> 8;
|
|
||||||
arr[7] = v & 0xff; // Parse ........-....-....-####-............
|
|
||||||
|
|
||||||
arr[8] = (v = parseInt(uuid.slice(19, 23), 16)) >>> 8;
|
|
||||||
arr[9] = v & 0xff; // Parse ........-....-....-....-############
|
|
||||||
// (Use "/" to avoid 32-bit truncation when bit-shifting high-order bytes)
|
|
||||||
|
|
||||||
arr[10] = (v = parseInt(uuid.slice(24, 36), 16)) / 0x10000000000 & 0xff;
|
|
||||||
arr[11] = v / 0x100000000 & 0xff;
|
|
||||||
arr[12] = v >>> 24 & 0xff;
|
|
||||||
arr[13] = v >>> 16 & 0xff;
|
|
||||||
arr[14] = v >>> 8 & 0xff;
|
|
||||||
arr[15] = v & 0xff;
|
|
||||||
return arr;
|
|
||||||
}
|
|
||||||
|
|
||||||
export default parse;
|
|
1
node_modules/@actions/core/node_modules/uuid/dist/esm-node/regex.js
generated
vendored
1
node_modules/@actions/core/node_modules/uuid/dist/esm-node/regex.js
generated
vendored
|
@ -1 +0,0 @@
|
||||||
export default /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;
|
|
12
node_modules/@actions/core/node_modules/uuid/dist/esm-node/rng.js
generated
vendored
12
node_modules/@actions/core/node_modules/uuid/dist/esm-node/rng.js
generated
vendored
|
@ -1,12 +0,0 @@
|
||||||
import crypto from 'crypto';
|
|
||||||
const rnds8Pool = new Uint8Array(256); // # of random values to pre-allocate
|
|
||||||
|
|
||||||
let poolPtr = rnds8Pool.length;
|
|
||||||
export default function rng() {
|
|
||||||
if (poolPtr > rnds8Pool.length - 16) {
|
|
||||||
crypto.randomFillSync(rnds8Pool);
|
|
||||||
poolPtr = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
return rnds8Pool.slice(poolPtr, poolPtr += 16);
|
|
||||||
}
|
|
13
node_modules/@actions/core/node_modules/uuid/dist/esm-node/sha1.js
generated
vendored
13
node_modules/@actions/core/node_modules/uuid/dist/esm-node/sha1.js
generated
vendored
|
@ -1,13 +0,0 @@
|
||||||
import crypto from 'crypto';
|
|
||||||
|
|
||||||
function sha1(bytes) {
|
|
||||||
if (Array.isArray(bytes)) {
|
|
||||||
bytes = Buffer.from(bytes);
|
|
||||||
} else if (typeof bytes === 'string') {
|
|
||||||
bytes = Buffer.from(bytes, 'utf8');
|
|
||||||
}
|
|
||||||
|
|
||||||
return crypto.createHash('sha1').update(bytes).digest();
|
|
||||||
}
|
|
||||||
|
|
||||||
export default sha1;
|
|
29
node_modules/@actions/core/node_modules/uuid/dist/esm-node/stringify.js
generated
vendored
29
node_modules/@actions/core/node_modules/uuid/dist/esm-node/stringify.js
generated
vendored
|
@ -1,29 +0,0 @@
|
||||||
import validate from './validate.js';
|
|
||||||
/**
|
|
||||||
* Convert array of 16 byte values to UUID string format of the form:
|
|
||||||
* XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
|
|
||||||
*/
|
|
||||||
|
|
||||||
const byteToHex = [];
|
|
||||||
|
|
||||||
for (let i = 0; i < 256; ++i) {
|
|
||||||
byteToHex.push((i + 0x100).toString(16).substr(1));
|
|
||||||
}
|
|
||||||
|
|
||||||
function stringify(arr, offset = 0) {
|
|
||||||
// Note: Be careful editing this code! It's been tuned for performance
|
|
||||||
// and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434
|
|
||||||
const uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID. If this throws, it's likely due to one
|
|
||||||
// of the following:
|
|
||||||
// - One or more input array values don't map to a hex octet (leading to
|
|
||||||
// "undefined" in the uuid)
|
|
||||||
// - Invalid input values for the RFC `version` or `variant` fields
|
|
||||||
|
|
||||||
if (!validate(uuid)) {
|
|
||||||
throw TypeError('Stringified UUID is invalid');
|
|
||||||
}
|
|
||||||
|
|
||||||
return uuid;
|
|
||||||
}
|
|
||||||
|
|
||||||
export default stringify;
|
|
95
node_modules/@actions/core/node_modules/uuid/dist/esm-node/v1.js
generated
vendored
95
node_modules/@actions/core/node_modules/uuid/dist/esm-node/v1.js
generated
vendored
|
@ -1,95 +0,0 @@
|
||||||
import rng from './rng.js';
|
|
||||||
import stringify from './stringify.js'; // **`v1()` - Generate time-based UUID**
|
|
||||||
//
|
|
||||||
// Inspired by https://github.com/LiosK/UUID.js
|
|
||||||
// and http://docs.python.org/library/uuid.html
|
|
||||||
|
|
||||||
let _nodeId;
|
|
||||||
|
|
||||||
let _clockseq; // Previous uuid creation time
|
|
||||||
|
|
||||||
|
|
||||||
let _lastMSecs = 0;
|
|
||||||
let _lastNSecs = 0; // See https://github.com/uuidjs/uuid for API details
|
|
||||||
|
|
||||||
function v1(options, buf, offset) {
|
|
||||||
let i = buf && offset || 0;
|
|
||||||
const b = buf || new Array(16);
|
|
||||||
options = options || {};
|
|
||||||
let node = options.node || _nodeId;
|
|
||||||
let clockseq = options.clockseq !== undefined ? options.clockseq : _clockseq; // node and clockseq need to be initialized to random values if they're not
|
|
||||||
// specified. We do this lazily to minimize issues related to insufficient
|
|
||||||
// system entropy. See #189
|
|
||||||
|
|
||||||
if (node == null || clockseq == null) {
|
|
||||||
const seedBytes = options.random || (options.rng || rng)();
|
|
||||||
|
|
||||||
if (node == null) {
|
|
||||||
// Per 4.5, create and 48-bit node id, (47 random bits + multicast bit = 1)
|
|
||||||
node = _nodeId = [seedBytes[0] | 0x01, seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]];
|
|
||||||
}
|
|
||||||
|
|
||||||
if (clockseq == null) {
|
|
||||||
// Per 4.2.2, randomize (14 bit) clockseq
|
|
||||||
clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 0x3fff;
|
|
||||||
}
|
|
||||||
} // UUID timestamps are 100 nano-second units since the Gregorian epoch,
|
|
||||||
// (1582-10-15 00:00). JSNumbers aren't precise enough for this, so
|
|
||||||
// time is handled internally as 'msecs' (integer milliseconds) and 'nsecs'
|
|
||||||
// (100-nanoseconds offset from msecs) since unix epoch, 1970-01-01 00:00.
|
|
||||||
|
|
||||||
|
|
||||||
let msecs = options.msecs !== undefined ? options.msecs : Date.now(); // Per 4.2.1.2, use count of uuid's generated during the current clock
|
|
||||||
// cycle to simulate higher resolution clock
|
|
||||||
|
|
||||||
let nsecs = options.nsecs !== undefined ? options.nsecs : _lastNSecs + 1; // Time since last uuid creation (in msecs)
|
|
||||||
|
|
||||||
const dt = msecs - _lastMSecs + (nsecs - _lastNSecs) / 10000; // Per 4.2.1.2, Bump clockseq on clock regression
|
|
||||||
|
|
||||||
if (dt < 0 && options.clockseq === undefined) {
|
|
||||||
clockseq = clockseq + 1 & 0x3fff;
|
|
||||||
} // Reset nsecs if clock regresses (new clockseq) or we've moved onto a new
|
|
||||||
// time interval
|
|
||||||
|
|
||||||
|
|
||||||
if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === undefined) {
|
|
||||||
nsecs = 0;
|
|
||||||
} // Per 4.2.1.2 Throw error if too many uuids are requested
|
|
||||||
|
|
||||||
|
|
||||||
if (nsecs >= 10000) {
|
|
||||||
throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");
|
|
||||||
}
|
|
||||||
|
|
||||||
_lastMSecs = msecs;
|
|
||||||
_lastNSecs = nsecs;
|
|
||||||
_clockseq = clockseq; // Per 4.1.4 - Convert from unix epoch to Gregorian epoch
|
|
||||||
|
|
||||||
msecs += 12219292800000; // `time_low`
|
|
||||||
|
|
||||||
const tl = ((msecs & 0xfffffff) * 10000 + nsecs) % 0x100000000;
|
|
||||||
b[i++] = tl >>> 24 & 0xff;
|
|
||||||
b[i++] = tl >>> 16 & 0xff;
|
|
||||||
b[i++] = tl >>> 8 & 0xff;
|
|
||||||
b[i++] = tl & 0xff; // `time_mid`
|
|
||||||
|
|
||||||
const tmh = msecs / 0x100000000 * 10000 & 0xfffffff;
|
|
||||||
b[i++] = tmh >>> 8 & 0xff;
|
|
||||||
b[i++] = tmh & 0xff; // `time_high_and_version`
|
|
||||||
|
|
||||||
b[i++] = tmh >>> 24 & 0xf | 0x10; // include version
|
|
||||||
|
|
||||||
b[i++] = tmh >>> 16 & 0xff; // `clock_seq_hi_and_reserved` (Per 4.2.2 - include variant)
|
|
||||||
|
|
||||||
b[i++] = clockseq >>> 8 | 0x80; // `clock_seq_low`
|
|
||||||
|
|
||||||
b[i++] = clockseq & 0xff; // `node`
|
|
||||||
|
|
||||||
for (let n = 0; n < 6; ++n) {
|
|
||||||
b[i + n] = node[n];
|
|
||||||
}
|
|
||||||
|
|
||||||
return buf || stringify(b);
|
|
||||||
}
|
|
||||||
|
|
||||||
export default v1;
|
|
4
node_modules/@actions/core/node_modules/uuid/dist/esm-node/v3.js
generated
vendored
4
node_modules/@actions/core/node_modules/uuid/dist/esm-node/v3.js
generated
vendored
|
@ -1,4 +0,0 @@
|
||||||
import v35 from './v35.js';
|
|
||||||
import md5 from './md5.js';
|
|
||||||
const v3 = v35('v3', 0x30, md5);
|
|
||||||
export default v3;
|
|
64
node_modules/@actions/core/node_modules/uuid/dist/esm-node/v35.js
generated
vendored
64
node_modules/@actions/core/node_modules/uuid/dist/esm-node/v35.js
generated
vendored
|
@ -1,64 +0,0 @@
|
||||||
import stringify from './stringify.js';
|
|
||||||
import parse from './parse.js';
|
|
||||||
|
|
||||||
function stringToBytes(str) {
|
|
||||||
str = unescape(encodeURIComponent(str)); // UTF8 escape
|
|
||||||
|
|
||||||
const bytes = [];
|
|
||||||
|
|
||||||
for (let i = 0; i < str.length; ++i) {
|
|
||||||
bytes.push(str.charCodeAt(i));
|
|
||||||
}
|
|
||||||
|
|
||||||
return bytes;
|
|
||||||
}
|
|
||||||
|
|
||||||
export const DNS = '6ba7b810-9dad-11d1-80b4-00c04fd430c8';
|
|
||||||
export const URL = '6ba7b811-9dad-11d1-80b4-00c04fd430c8';
|
|
||||||
export default function (name, version, hashfunc) {
|
|
||||||
function generateUUID(value, namespace, buf, offset) {
|
|
||||||
if (typeof value === 'string') {
|
|
||||||
value = stringToBytes(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (typeof namespace === 'string') {
|
|
||||||
namespace = parse(namespace);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (namespace.length !== 16) {
|
|
||||||
throw TypeError('Namespace must be array-like (16 iterable integer values, 0-255)');
|
|
||||||
} // Compute hash of namespace and value, Per 4.3
|
|
||||||
// Future: Use spread syntax when supported on all platforms, e.g. `bytes =
|
|
||||||
// hashfunc([...namespace, ... value])`
|
|
||||||
|
|
||||||
|
|
||||||
let bytes = new Uint8Array(16 + value.length);
|
|
||||||
bytes.set(namespace);
|
|
||||||
bytes.set(value, namespace.length);
|
|
||||||
bytes = hashfunc(bytes);
|
|
||||||
bytes[6] = bytes[6] & 0x0f | version;
|
|
||||||
bytes[8] = bytes[8] & 0x3f | 0x80;
|
|
||||||
|
|
||||||
if (buf) {
|
|
||||||
offset = offset || 0;
|
|
||||||
|
|
||||||
for (let i = 0; i < 16; ++i) {
|
|
||||||
buf[offset + i] = bytes[i];
|
|
||||||
}
|
|
||||||
|
|
||||||
return buf;
|
|
||||||
}
|
|
||||||
|
|
||||||
return stringify(bytes);
|
|
||||||
} // Function#name is not settable on some platforms (#270)
|
|
||||||
|
|
||||||
|
|
||||||
try {
|
|
||||||
generateUUID.name = name; // eslint-disable-next-line no-empty
|
|
||||||
} catch (err) {} // For CommonJS default export support
|
|
||||||
|
|
||||||
|
|
||||||
generateUUID.DNS = DNS;
|
|
||||||
generateUUID.URL = URL;
|
|
||||||
return generateUUID;
|
|
||||||
}
|
|
24
node_modules/@actions/core/node_modules/uuid/dist/esm-node/v4.js
generated
vendored
24
node_modules/@actions/core/node_modules/uuid/dist/esm-node/v4.js
generated
vendored
|
@ -1,24 +0,0 @@
|
||||||
import rng from './rng.js';
|
|
||||||
import stringify from './stringify.js';
|
|
||||||
|
|
||||||
function v4(options, buf, offset) {
|
|
||||||
options = options || {};
|
|
||||||
const rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
|
|
||||||
|
|
||||||
rnds[6] = rnds[6] & 0x0f | 0x40;
|
|
||||||
rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided
|
|
||||||
|
|
||||||
if (buf) {
|
|
||||||
offset = offset || 0;
|
|
||||||
|
|
||||||
for (let i = 0; i < 16; ++i) {
|
|
||||||
buf[offset + i] = rnds[i];
|
|
||||||
}
|
|
||||||
|
|
||||||
return buf;
|
|
||||||
}
|
|
||||||
|
|
||||||
return stringify(rnds);
|
|
||||||
}
|
|
||||||
|
|
||||||
export default v4;
|
|
4
node_modules/@actions/core/node_modules/uuid/dist/esm-node/v5.js
generated
vendored
4
node_modules/@actions/core/node_modules/uuid/dist/esm-node/v5.js
generated
vendored
|
@ -1,4 +0,0 @@
|
||||||
import v35 from './v35.js';
|
|
||||||
import sha1 from './sha1.js';
|
|
||||||
const v5 = v35('v5', 0x50, sha1);
|
|
||||||
export default v5;
|
|
7
node_modules/@actions/core/node_modules/uuid/dist/esm-node/validate.js
generated
vendored
7
node_modules/@actions/core/node_modules/uuid/dist/esm-node/validate.js
generated
vendored
|
@ -1,7 +0,0 @@
|
||||||
import REGEX from './regex.js';
|
|
||||||
|
|
||||||
function validate(uuid) {
|
|
||||||
return typeof uuid === 'string' && REGEX.test(uuid);
|
|
||||||
}
|
|
||||||
|
|
||||||
export default validate;
|
|
11
node_modules/@actions/core/node_modules/uuid/dist/esm-node/version.js
generated
vendored
11
node_modules/@actions/core/node_modules/uuid/dist/esm-node/version.js
generated
vendored
|
@ -1,11 +0,0 @@
|
||||||
import validate from './validate.js';
|
|
||||||
|
|
||||||
function version(uuid) {
|
|
||||||
if (!validate(uuid)) {
|
|
||||||
throw TypeError('Invalid UUID');
|
|
||||||
}
|
|
||||||
|
|
||||||
return parseInt(uuid.substr(14, 1), 16);
|
|
||||||
}
|
|
||||||
|
|
||||||
export default version;
|
|
79
node_modules/@actions/core/node_modules/uuid/dist/index.js
generated
vendored
79
node_modules/@actions/core/node_modules/uuid/dist/index.js
generated
vendored
|
@ -1,79 +0,0 @@
|
||||||
"use strict";
|
|
||||||
|
|
||||||
Object.defineProperty(exports, "__esModule", {
|
|
||||||
value: true
|
|
||||||
});
|
|
||||||
Object.defineProperty(exports, "v1", {
|
|
||||||
enumerable: true,
|
|
||||||
get: function () {
|
|
||||||
return _v.default;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
Object.defineProperty(exports, "v3", {
|
|
||||||
enumerable: true,
|
|
||||||
get: function () {
|
|
||||||
return _v2.default;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
Object.defineProperty(exports, "v4", {
|
|
||||||
enumerable: true,
|
|
||||||
get: function () {
|
|
||||||
return _v3.default;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
Object.defineProperty(exports, "v5", {
|
|
||||||
enumerable: true,
|
|
||||||
get: function () {
|
|
||||||
return _v4.default;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
Object.defineProperty(exports, "NIL", {
|
|
||||||
enumerable: true,
|
|
||||||
get: function () {
|
|
||||||
return _nil.default;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
Object.defineProperty(exports, "version", {
|
|
||||||
enumerable: true,
|
|
||||||
get: function () {
|
|
||||||
return _version.default;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
Object.defineProperty(exports, "validate", {
|
|
||||||
enumerable: true,
|
|
||||||
get: function () {
|
|
||||||
return _validate.default;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
Object.defineProperty(exports, "stringify", {
|
|
||||||
enumerable: true,
|
|
||||||
get: function () {
|
|
||||||
return _stringify.default;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
Object.defineProperty(exports, "parse", {
|
|
||||||
enumerable: true,
|
|
||||||
get: function () {
|
|
||||||
return _parse.default;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
var _v = _interopRequireDefault(require("./v1.js"));
|
|
||||||
|
|
||||||
var _v2 = _interopRequireDefault(require("./v3.js"));
|
|
||||||
|
|
||||||
var _v3 = _interopRequireDefault(require("./v4.js"));
|
|
||||||
|
|
||||||
var _v4 = _interopRequireDefault(require("./v5.js"));
|
|
||||||
|
|
||||||
var _nil = _interopRequireDefault(require("./nil.js"));
|
|
||||||
|
|
||||||
var _version = _interopRequireDefault(require("./version.js"));
|
|
||||||
|
|
||||||
var _validate = _interopRequireDefault(require("./validate.js"));
|
|
||||||
|
|
||||||
var _stringify = _interopRequireDefault(require("./stringify.js"));
|
|
||||||
|
|
||||||
var _parse = _interopRequireDefault(require("./parse.js"));
|
|
||||||
|
|
||||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
223
node_modules/@actions/core/node_modules/uuid/dist/md5-browser.js
generated
vendored
223
node_modules/@actions/core/node_modules/uuid/dist/md5-browser.js
generated
vendored
|
@ -1,223 +0,0 @@
|
||||||
"use strict";
|
|
||||||
|
|
||||||
Object.defineProperty(exports, "__esModule", {
|
|
||||||
value: true
|
|
||||||
});
|
|
||||||
exports.default = void 0;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Browser-compatible JavaScript MD5
|
|
||||||
*
|
|
||||||
* Modification of JavaScript MD5
|
|
||||||
* https://github.com/blueimp/JavaScript-MD5
|
|
||||||
*
|
|
||||||
* Copyright 2011, Sebastian Tschan
|
|
||||||
* https://blueimp.net
|
|
||||||
*
|
|
||||||
* Licensed under the MIT license:
|
|
||||||
* https://opensource.org/licenses/MIT
|
|
||||||
*
|
|
||||||
* Based on
|
|
||||||
* A JavaScript implementation of the RSA Data Security, Inc. MD5 Message
|
|
||||||
* Digest Algorithm, as defined in RFC 1321.
|
|
||||||
* Version 2.2 Copyright (C) Paul Johnston 1999 - 2009
|
|
||||||
* Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet
|
|
||||||
* Distributed under the BSD License
|
|
||||||
* See http://pajhome.org.uk/crypt/md5 for more info.
|
|
||||||
*/
|
|
||||||
function md5(bytes) {
|
|
||||||
if (typeof bytes === 'string') {
|
|
||||||
const msg = unescape(encodeURIComponent(bytes)); // UTF8 escape
|
|
||||||
|
|
||||||
bytes = new Uint8Array(msg.length);
|
|
||||||
|
|
||||||
for (let i = 0; i < msg.length; ++i) {
|
|
||||||
bytes[i] = msg.charCodeAt(i);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return md5ToHexEncodedArray(wordsToMd5(bytesToWords(bytes), bytes.length * 8));
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Convert an array of little-endian words to an array of bytes
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
function md5ToHexEncodedArray(input) {
|
|
||||||
const output = [];
|
|
||||||
const length32 = input.length * 32;
|
|
||||||
const hexTab = '0123456789abcdef';
|
|
||||||
|
|
||||||
for (let i = 0; i < length32; i += 8) {
|
|
||||||
const x = input[i >> 5] >>> i % 32 & 0xff;
|
|
||||||
const hex = parseInt(hexTab.charAt(x >>> 4 & 0x0f) + hexTab.charAt(x & 0x0f), 16);
|
|
||||||
output.push(hex);
|
|
||||||
}
|
|
||||||
|
|
||||||
return output;
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Calculate output length with padding and bit length
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
function getOutputLength(inputLength8) {
|
|
||||||
return (inputLength8 + 64 >>> 9 << 4) + 14 + 1;
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Calculate the MD5 of an array of little-endian words, and a bit length.
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
function wordsToMd5(x, len) {
|
|
||||||
/* append padding */
|
|
||||||
x[len >> 5] |= 0x80 << len % 32;
|
|
||||||
x[getOutputLength(len) - 1] = len;
|
|
||||||
let a = 1732584193;
|
|
||||||
let b = -271733879;
|
|
||||||
let c = -1732584194;
|
|
||||||
let d = 271733878;
|
|
||||||
|
|
||||||
for (let i = 0; i < x.length; i += 16) {
|
|
||||||
const olda = a;
|
|
||||||
const oldb = b;
|
|
||||||
const oldc = c;
|
|
||||||
const oldd = d;
|
|
||||||
a = md5ff(a, b, c, d, x[i], 7, -680876936);
|
|
||||||
d = md5ff(d, a, b, c, x[i + 1], 12, -389564586);
|
|
||||||
c = md5ff(c, d, a, b, x[i + 2], 17, 606105819);
|
|
||||||
b = md5ff(b, c, d, a, x[i + 3], 22, -1044525330);
|
|
||||||
a = md5ff(a, b, c, d, x[i + 4], 7, -176418897);
|
|
||||||
d = md5ff(d, a, b, c, x[i + 5], 12, 1200080426);
|
|
||||||
c = md5ff(c, d, a, b, x[i + 6], 17, -1473231341);
|
|
||||||
b = md5ff(b, c, d, a, x[i + 7], 22, -45705983);
|
|
||||||
a = md5ff(a, b, c, d, x[i + 8], 7, 1770035416);
|
|
||||||
d = md5ff(d, a, b, c, x[i + 9], 12, -1958414417);
|
|
||||||
c = md5ff(c, d, a, b, x[i + 10], 17, -42063);
|
|
||||||
b = md5ff(b, c, d, a, x[i + 11], 22, -1990404162);
|
|
||||||
a = md5ff(a, b, c, d, x[i + 12], 7, 1804603682);
|
|
||||||
d = md5ff(d, a, b, c, x[i + 13], 12, -40341101);
|
|
||||||
c = md5ff(c, d, a, b, x[i + 14], 17, -1502002290);
|
|
||||||
b = md5ff(b, c, d, a, x[i + 15], 22, 1236535329);
|
|
||||||
a = md5gg(a, b, c, d, x[i + 1], 5, -165796510);
|
|
||||||
d = md5gg(d, a, b, c, x[i + 6], 9, -1069501632);
|
|
||||||
c = md5gg(c, d, a, b, x[i + 11], 14, 643717713);
|
|
||||||
b = md5gg(b, c, d, a, x[i], 20, -373897302);
|
|
||||||
a = md5gg(a, b, c, d, x[i + 5], 5, -701558691);
|
|
||||||
d = md5gg(d, a, b, c, x[i + 10], 9, 38016083);
|
|
||||||
c = md5gg(c, d, a, b, x[i + 15], 14, -660478335);
|
|
||||||
b = md5gg(b, c, d, a, x[i + 4], 20, -405537848);
|
|
||||||
a = md5gg(a, b, c, d, x[i + 9], 5, 568446438);
|
|
||||||
d = md5gg(d, a, b, c, x[i + 14], 9, -1019803690);
|
|
||||||
c = md5gg(c, d, a, b, x[i + 3], 14, -187363961);
|
|
||||||
b = md5gg(b, c, d, a, x[i + 8], 20, 1163531501);
|
|
||||||
a = md5gg(a, b, c, d, x[i + 13], 5, -1444681467);
|
|
||||||
d = md5gg(d, a, b, c, x[i + 2], 9, -51403784);
|
|
||||||
c = md5gg(c, d, a, b, x[i + 7], 14, 1735328473);
|
|
||||||
b = md5gg(b, c, d, a, x[i + 12], 20, -1926607734);
|
|
||||||
a = md5hh(a, b, c, d, x[i + 5], 4, -378558);
|
|
||||||
d = md5hh(d, a, b, c, x[i + 8], 11, -2022574463);
|
|
||||||
c = md5hh(c, d, a, b, x[i + 11], 16, 1839030562);
|
|
||||||
b = md5hh(b, c, d, a, x[i + 14], 23, -35309556);
|
|
||||||
a = md5hh(a, b, c, d, x[i + 1], 4, -1530992060);
|
|
||||||
d = md5hh(d, a, b, c, x[i + 4], 11, 1272893353);
|
|
||||||
c = md5hh(c, d, a, b, x[i + 7], 16, -155497632);
|
|
||||||
b = md5hh(b, c, d, a, x[i + 10], 23, -1094730640);
|
|
||||||
a = md5hh(a, b, c, d, x[i + 13], 4, 681279174);
|
|
||||||
d = md5hh(d, a, b, c, x[i], 11, -358537222);
|
|
||||||
c = md5hh(c, d, a, b, x[i + 3], 16, -722521979);
|
|
||||||
b = md5hh(b, c, d, a, x[i + 6], 23, 76029189);
|
|
||||||
a = md5hh(a, b, c, d, x[i + 9], 4, -640364487);
|
|
||||||
d = md5hh(d, a, b, c, x[i + 12], 11, -421815835);
|
|
||||||
c = md5hh(c, d, a, b, x[i + 15], 16, 530742520);
|
|
||||||
b = md5hh(b, c, d, a, x[i + 2], 23, -995338651);
|
|
||||||
a = md5ii(a, b, c, d, x[i], 6, -198630844);
|
|
||||||
d = md5ii(d, a, b, c, x[i + 7], 10, 1126891415);
|
|
||||||
c = md5ii(c, d, a, b, x[i + 14], 15, -1416354905);
|
|
||||||
b = md5ii(b, c, d, a, x[i + 5], 21, -57434055);
|
|
||||||
a = md5ii(a, b, c, d, x[i + 12], 6, 1700485571);
|
|
||||||
d = md5ii(d, a, b, c, x[i + 3], 10, -1894986606);
|
|
||||||
c = md5ii(c, d, a, b, x[i + 10], 15, -1051523);
|
|
||||||
b = md5ii(b, c, d, a, x[i + 1], 21, -2054922799);
|
|
||||||
a = md5ii(a, b, c, d, x[i + 8], 6, 1873313359);
|
|
||||||
d = md5ii(d, a, b, c, x[i + 15], 10, -30611744);
|
|
||||||
c = md5ii(c, d, a, b, x[i + 6], 15, -1560198380);
|
|
||||||
b = md5ii(b, c, d, a, x[i + 13], 21, 1309151649);
|
|
||||||
a = md5ii(a, b, c, d, x[i + 4], 6, -145523070);
|
|
||||||
d = md5ii(d, a, b, c, x[i + 11], 10, -1120210379);
|
|
||||||
c = md5ii(c, d, a, b, x[i + 2], 15, 718787259);
|
|
||||||
b = md5ii(b, c, d, a, x[i + 9], 21, -343485551);
|
|
||||||
a = safeAdd(a, olda);
|
|
||||||
b = safeAdd(b, oldb);
|
|
||||||
c = safeAdd(c, oldc);
|
|
||||||
d = safeAdd(d, oldd);
|
|
||||||
}
|
|
||||||
|
|
||||||
return [a, b, c, d];
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Convert an array bytes to an array of little-endian words
|
|
||||||
* Characters >255 have their high-byte silently ignored.
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
function bytesToWords(input) {
|
|
||||||
if (input.length === 0) {
|
|
||||||
return [];
|
|
||||||
}
|
|
||||||
|
|
||||||
const length8 = input.length * 8;
|
|
||||||
const output = new Uint32Array(getOutputLength(length8));
|
|
||||||
|
|
||||||
for (let i = 0; i < length8; i += 8) {
|
|
||||||
output[i >> 5] |= (input[i / 8] & 0xff) << i % 32;
|
|
||||||
}
|
|
||||||
|
|
||||||
return output;
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Add integers, wrapping at 2^32. This uses 16-bit operations internally
|
|
||||||
* to work around bugs in some JS interpreters.
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
function safeAdd(x, y) {
|
|
||||||
const lsw = (x & 0xffff) + (y & 0xffff);
|
|
||||||
const msw = (x >> 16) + (y >> 16) + (lsw >> 16);
|
|
||||||
return msw << 16 | lsw & 0xffff;
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Bitwise rotate a 32-bit number to the left.
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
function bitRotateLeft(num, cnt) {
|
|
||||||
return num << cnt | num >>> 32 - cnt;
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* These functions implement the four basic operations the algorithm uses.
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
function md5cmn(q, a, b, x, s, t) {
|
|
||||||
return safeAdd(bitRotateLeft(safeAdd(safeAdd(a, q), safeAdd(x, t)), s), b);
|
|
||||||
}
|
|
||||||
|
|
||||||
function md5ff(a, b, c, d, x, s, t) {
|
|
||||||
return md5cmn(b & c | ~b & d, a, b, x, s, t);
|
|
||||||
}
|
|
||||||
|
|
||||||
function md5gg(a, b, c, d, x, s, t) {
|
|
||||||
return md5cmn(b & d | c & ~d, a, b, x, s, t);
|
|
||||||
}
|
|
||||||
|
|
||||||
function md5hh(a, b, c, d, x, s, t) {
|
|
||||||
return md5cmn(b ^ c ^ d, a, b, x, s, t);
|
|
||||||
}
|
|
||||||
|
|
||||||
function md5ii(a, b, c, d, x, s, t) {
|
|
||||||
return md5cmn(c ^ (b | ~d), a, b, x, s, t);
|
|
||||||
}
|
|
||||||
|
|
||||||
var _default = md5;
|
|
||||||
exports.default = _default;
|
|
23
node_modules/@actions/core/node_modules/uuid/dist/md5.js
generated
vendored
23
node_modules/@actions/core/node_modules/uuid/dist/md5.js
generated
vendored
|
@ -1,23 +0,0 @@
|
||||||
"use strict";
|
|
||||||
|
|
||||||
Object.defineProperty(exports, "__esModule", {
|
|
||||||
value: true
|
|
||||||
});
|
|
||||||
exports.default = void 0;
|
|
||||||
|
|
||||||
var _crypto = _interopRequireDefault(require("crypto"));
|
|
||||||
|
|
||||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
||||||
|
|
||||||
function md5(bytes) {
|
|
||||||
if (Array.isArray(bytes)) {
|
|
||||||
bytes = Buffer.from(bytes);
|
|
||||||
} else if (typeof bytes === 'string') {
|
|
||||||
bytes = Buffer.from(bytes, 'utf8');
|
|
||||||
}
|
|
||||||
|
|
||||||
return _crypto.default.createHash('md5').update(bytes).digest();
|
|
||||||
}
|
|
||||||
|
|
||||||
var _default = md5;
|
|
||||||
exports.default = _default;
|
|
8
node_modules/@actions/core/node_modules/uuid/dist/nil.js
generated
vendored
8
node_modules/@actions/core/node_modules/uuid/dist/nil.js
generated
vendored
|
@ -1,8 +0,0 @@
|
||||||
"use strict";
|
|
||||||
|
|
||||||
Object.defineProperty(exports, "__esModule", {
|
|
||||||
value: true
|
|
||||||
});
|
|
||||||
exports.default = void 0;
|
|
||||||
var _default = '00000000-0000-0000-0000-000000000000';
|
|
||||||
exports.default = _default;
|
|
45
node_modules/@actions/core/node_modules/uuid/dist/parse.js
generated
vendored
45
node_modules/@actions/core/node_modules/uuid/dist/parse.js
generated
vendored
|
@ -1,45 +0,0 @@
|
||||||
"use strict";
|
|
||||||
|
|
||||||
Object.defineProperty(exports, "__esModule", {
|
|
||||||
value: true
|
|
||||||
});
|
|
||||||
exports.default = void 0;
|
|
||||||
|
|
||||||
var _validate = _interopRequireDefault(require("./validate.js"));
|
|
||||||
|
|
||||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
||||||
|
|
||||||
function parse(uuid) {
|
|
||||||
if (!(0, _validate.default)(uuid)) {
|
|
||||||
throw TypeError('Invalid UUID');
|
|
||||||
}
|
|
||||||
|
|
||||||
let v;
|
|
||||||
const arr = new Uint8Array(16); // Parse ########-....-....-....-............
|
|
||||||
|
|
||||||
arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24;
|
|
||||||
arr[1] = v >>> 16 & 0xff;
|
|
||||||
arr[2] = v >>> 8 & 0xff;
|
|
||||||
arr[3] = v & 0xff; // Parse ........-####-....-....-............
|
|
||||||
|
|
||||||
arr[4] = (v = parseInt(uuid.slice(9, 13), 16)) >>> 8;
|
|
||||||
arr[5] = v & 0xff; // Parse ........-....-####-....-............
|
|
||||||
|
|
||||||
arr[6] = (v = parseInt(uuid.slice(14, 18), 16)) >>> 8;
|
|
||||||
arr[7] = v & 0xff; // Parse ........-....-....-####-............
|
|
||||||
|
|
||||||
arr[8] = (v = parseInt(uuid.slice(19, 23), 16)) >>> 8;
|
|
||||||
arr[9] = v & 0xff; // Parse ........-....-....-....-############
|
|
||||||
// (Use "/" to avoid 32-bit truncation when bit-shifting high-order bytes)
|
|
||||||
|
|
||||||
arr[10] = (v = parseInt(uuid.slice(24, 36), 16)) / 0x10000000000 & 0xff;
|
|
||||||
arr[11] = v / 0x100000000 & 0xff;
|
|
||||||
arr[12] = v >>> 24 & 0xff;
|
|
||||||
arr[13] = v >>> 16 & 0xff;
|
|
||||||
arr[14] = v >>> 8 & 0xff;
|
|
||||||
arr[15] = v & 0xff;
|
|
||||||
return arr;
|
|
||||||
}
|
|
||||||
|
|
||||||
var _default = parse;
|
|
||||||
exports.default = _default;
|
|
8
node_modules/@actions/core/node_modules/uuid/dist/regex.js
generated
vendored
8
node_modules/@actions/core/node_modules/uuid/dist/regex.js
generated
vendored
|
@ -1,8 +0,0 @@
|
||||||
"use strict";
|
|
||||||
|
|
||||||
Object.defineProperty(exports, "__esModule", {
|
|
||||||
value: true
|
|
||||||
});
|
|
||||||
exports.default = void 0;
|
|
||||||
var _default = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;
|
|
||||||
exports.default = _default;
|
|
26
node_modules/@actions/core/node_modules/uuid/dist/rng-browser.js
generated
vendored
26
node_modules/@actions/core/node_modules/uuid/dist/rng-browser.js
generated
vendored
|
@ -1,26 +0,0 @@
|
||||||
"use strict";
|
|
||||||
|
|
||||||
Object.defineProperty(exports, "__esModule", {
|
|
||||||
value: true
|
|
||||||
});
|
|
||||||
exports.default = rng;
|
|
||||||
// Unique ID creation requires a high quality random # generator. In the browser we therefore
|
|
||||||
// require the crypto API and do not support built-in fallback to lower quality random number
|
|
||||||
// generators (like Math.random()).
|
|
||||||
let getRandomValues;
|
|
||||||
const rnds8 = new Uint8Array(16);
|
|
||||||
|
|
||||||
function rng() {
|
|
||||||
// lazy load so that environments that need to polyfill have a chance to do so
|
|
||||||
if (!getRandomValues) {
|
|
||||||
// getRandomValues needs to be invoked in a context where "this" is a Crypto implementation. Also,
|
|
||||||
// find the complete implementation of crypto (msCrypto) on IE11.
|
|
||||||
getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== 'undefined' && typeof msCrypto.getRandomValues === 'function' && msCrypto.getRandomValues.bind(msCrypto);
|
|
||||||
|
|
||||||
if (!getRandomValues) {
|
|
||||||
throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return getRandomValues(rnds8);
|
|
||||||
}
|
|
24
node_modules/@actions/core/node_modules/uuid/dist/rng.js
generated
vendored
24
node_modules/@actions/core/node_modules/uuid/dist/rng.js
generated
vendored
|
@ -1,24 +0,0 @@
|
||||||
"use strict";
|
|
||||||
|
|
||||||
Object.defineProperty(exports, "__esModule", {
|
|
||||||
value: true
|
|
||||||
});
|
|
||||||
exports.default = rng;
|
|
||||||
|
|
||||||
var _crypto = _interopRequireDefault(require("crypto"));
|
|
||||||
|
|
||||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
||||||
|
|
||||||
const rnds8Pool = new Uint8Array(256); // # of random values to pre-allocate
|
|
||||||
|
|
||||||
let poolPtr = rnds8Pool.length;
|
|
||||||
|
|
||||||
function rng() {
|
|
||||||
if (poolPtr > rnds8Pool.length - 16) {
|
|
||||||
_crypto.default.randomFillSync(rnds8Pool);
|
|
||||||
|
|
||||||
poolPtr = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
return rnds8Pool.slice(poolPtr, poolPtr += 16);
|
|
||||||
}
|
|
104
node_modules/@actions/core/node_modules/uuid/dist/sha1-browser.js
generated
vendored
104
node_modules/@actions/core/node_modules/uuid/dist/sha1-browser.js
generated
vendored
|
@ -1,104 +0,0 @@
|
||||||
"use strict";
|
|
||||||
|
|
||||||
Object.defineProperty(exports, "__esModule", {
|
|
||||||
value: true
|
|
||||||
});
|
|
||||||
exports.default = void 0;
|
|
||||||
|
|
||||||
// Adapted from Chris Veness' SHA1 code at
|
|
||||||
// http://www.movable-type.co.uk/scripts/sha1.html
|
|
||||||
function f(s, x, y, z) {
|
|
||||||
switch (s) {
|
|
||||||
case 0:
|
|
||||||
return x & y ^ ~x & z;
|
|
||||||
|
|
||||||
case 1:
|
|
||||||
return x ^ y ^ z;
|
|
||||||
|
|
||||||
case 2:
|
|
||||||
return x & y ^ x & z ^ y & z;
|
|
||||||
|
|
||||||
case 3:
|
|
||||||
return x ^ y ^ z;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function ROTL(x, n) {
|
|
||||||
return x << n | x >>> 32 - n;
|
|
||||||
}
|
|
||||||
|
|
||||||
function sha1(bytes) {
|
|
||||||
const K = [0x5a827999, 0x6ed9eba1, 0x8f1bbcdc, 0xca62c1d6];
|
|
||||||
const H = [0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0];
|
|
||||||
|
|
||||||
if (typeof bytes === 'string') {
|
|
||||||
const msg = unescape(encodeURIComponent(bytes)); // UTF8 escape
|
|
||||||
|
|
||||||
bytes = [];
|
|
||||||
|
|
||||||
for (let i = 0; i < msg.length; ++i) {
|
|
||||||
bytes.push(msg.charCodeAt(i));
|
|
||||||
}
|
|
||||||
} else if (!Array.isArray(bytes)) {
|
|
||||||
// Convert Array-like to Array
|
|
||||||
bytes = Array.prototype.slice.call(bytes);
|
|
||||||
}
|
|
||||||
|
|
||||||
bytes.push(0x80);
|
|
||||||
const l = bytes.length / 4 + 2;
|
|
||||||
const N = Math.ceil(l / 16);
|
|
||||||
const M = new Array(N);
|
|
||||||
|
|
||||||
for (let i = 0; i < N; ++i) {
|
|
||||||
const arr = new Uint32Array(16);
|
|
||||||
|
|
||||||
for (let j = 0; j < 16; ++j) {
|
|
||||||
arr[j] = bytes[i * 64 + j * 4] << 24 | bytes[i * 64 + j * 4 + 1] << 16 | bytes[i * 64 + j * 4 + 2] << 8 | bytes[i * 64 + j * 4 + 3];
|
|
||||||
}
|
|
||||||
|
|
||||||
M[i] = arr;
|
|
||||||
}
|
|
||||||
|
|
||||||
M[N - 1][14] = (bytes.length - 1) * 8 / Math.pow(2, 32);
|
|
||||||
M[N - 1][14] = Math.floor(M[N - 1][14]);
|
|
||||||
M[N - 1][15] = (bytes.length - 1) * 8 & 0xffffffff;
|
|
||||||
|
|
||||||
for (let i = 0; i < N; ++i) {
|
|
||||||
const W = new Uint32Array(80);
|
|
||||||
|
|
||||||
for (let t = 0; t < 16; ++t) {
|
|
||||||
W[t] = M[i][t];
|
|
||||||
}
|
|
||||||
|
|
||||||
for (let t = 16; t < 80; ++t) {
|
|
||||||
W[t] = ROTL(W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16], 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
let a = H[0];
|
|
||||||
let b = H[1];
|
|
||||||
let c = H[2];
|
|
||||||
let d = H[3];
|
|
||||||
let e = H[4];
|
|
||||||
|
|
||||||
for (let t = 0; t < 80; ++t) {
|
|
||||||
const s = Math.floor(t / 20);
|
|
||||||
const T = ROTL(a, 5) + f(s, b, c, d) + e + K[s] + W[t] >>> 0;
|
|
||||||
e = d;
|
|
||||||
d = c;
|
|
||||||
c = ROTL(b, 30) >>> 0;
|
|
||||||
b = a;
|
|
||||||
a = T;
|
|
||||||
}
|
|
||||||
|
|
||||||
H[0] = H[0] + a >>> 0;
|
|
||||||
H[1] = H[1] + b >>> 0;
|
|
||||||
H[2] = H[2] + c >>> 0;
|
|
||||||
H[3] = H[3] + d >>> 0;
|
|
||||||
H[4] = H[4] + e >>> 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
return [H[0] >> 24 & 0xff, H[0] >> 16 & 0xff, H[0] >> 8 & 0xff, H[0] & 0xff, H[1] >> 24 & 0xff, H[1] >> 16 & 0xff, H[1] >> 8 & 0xff, H[1] & 0xff, H[2] >> 24 & 0xff, H[2] >> 16 & 0xff, H[2] >> 8 & 0xff, H[2] & 0xff, H[3] >> 24 & 0xff, H[3] >> 16 & 0xff, H[3] >> 8 & 0xff, H[3] & 0xff, H[4] >> 24 & 0xff, H[4] >> 16 & 0xff, H[4] >> 8 & 0xff, H[4] & 0xff];
|
|
||||||
}
|
|
||||||
|
|
||||||
var _default = sha1;
|
|
||||||
exports.default = _default;
|
|
23
node_modules/@actions/core/node_modules/uuid/dist/sha1.js
generated
vendored
23
node_modules/@actions/core/node_modules/uuid/dist/sha1.js
generated
vendored
|
@ -1,23 +0,0 @@
|
||||||
"use strict";
|
|
||||||
|
|
||||||
Object.defineProperty(exports, "__esModule", {
|
|
||||||
value: true
|
|
||||||
});
|
|
||||||
exports.default = void 0;
|
|
||||||
|
|
||||||
var _crypto = _interopRequireDefault(require("crypto"));
|
|
||||||
|
|
||||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
||||||
|
|
||||||
function sha1(bytes) {
|
|
||||||
if (Array.isArray(bytes)) {
|
|
||||||
bytes = Buffer.from(bytes);
|
|
||||||
} else if (typeof bytes === 'string') {
|
|
||||||
bytes = Buffer.from(bytes, 'utf8');
|
|
||||||
}
|
|
||||||
|
|
||||||
return _crypto.default.createHash('sha1').update(bytes).digest();
|
|
||||||
}
|
|
||||||
|
|
||||||
var _default = sha1;
|
|
||||||
exports.default = _default;
|
|
39
node_modules/@actions/core/node_modules/uuid/dist/stringify.js
generated
vendored
39
node_modules/@actions/core/node_modules/uuid/dist/stringify.js
generated
vendored
|
@ -1,39 +0,0 @@
|
||||||
"use strict";
|
|
||||||
|
|
||||||
Object.defineProperty(exports, "__esModule", {
|
|
||||||
value: true
|
|
||||||
});
|
|
||||||
exports.default = void 0;
|
|
||||||
|
|
||||||
var _validate = _interopRequireDefault(require("./validate.js"));
|
|
||||||
|
|
||||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Convert array of 16 byte values to UUID string format of the form:
|
|
||||||
* XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
|
|
||||||
*/
|
|
||||||
const byteToHex = [];
|
|
||||||
|
|
||||||
for (let i = 0; i < 256; ++i) {
|
|
||||||
byteToHex.push((i + 0x100).toString(16).substr(1));
|
|
||||||
}
|
|
||||||
|
|
||||||
function stringify(arr, offset = 0) {
|
|
||||||
// Note: Be careful editing this code! It's been tuned for performance
|
|
||||||
// and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434
|
|
||||||
const uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID. If this throws, it's likely due to one
|
|
||||||
// of the following:
|
|
||||||
// - One or more input array values don't map to a hex octet (leading to
|
|
||||||
// "undefined" in the uuid)
|
|
||||||
// - Invalid input values for the RFC `version` or `variant` fields
|
|
||||||
|
|
||||||
if (!(0, _validate.default)(uuid)) {
|
|
||||||
throw TypeError('Stringified UUID is invalid');
|
|
||||||
}
|
|
||||||
|
|
||||||
return uuid;
|
|
||||||
}
|
|
||||||
|
|
||||||
var _default = stringify;
|
|
||||||
exports.default = _default;
|
|
1
node_modules/@actions/core/node_modules/uuid/dist/umd/uuid.min.js
generated
vendored
1
node_modules/@actions/core/node_modules/uuid/dist/umd/uuid.min.js
generated
vendored
File diff suppressed because one or more lines are too long
1
node_modules/@actions/core/node_modules/uuid/dist/umd/uuidNIL.min.js
generated
vendored
1
node_modules/@actions/core/node_modules/uuid/dist/umd/uuidNIL.min.js
generated
vendored
|
@ -1 +0,0 @@
|
||||||
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n():"function"==typeof define&&define.amd?define(n):(e="undefined"!=typeof globalThis?globalThis:e||self).uuidNIL=n()}(this,(function(){"use strict";return"00000000-0000-0000-0000-000000000000"}));
|
|
1
node_modules/@actions/core/node_modules/uuid/dist/umd/uuidParse.min.js
generated
vendored
1
node_modules/@actions/core/node_modules/uuid/dist/umd/uuidParse.min.js
generated
vendored
|
@ -1 +0,0 @@
|
||||||
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n():"function"==typeof define&&define.amd?define(n):(e="undefined"!=typeof globalThis?globalThis:e||self).uuidParse=n()}(this,(function(){"use strict";var e=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;return function(n){if(!function(n){return"string"==typeof n&&e.test(n)}(n))throw TypeError("Invalid UUID");var t,i=new Uint8Array(16);return i[0]=(t=parseInt(n.slice(0,8),16))>>>24,i[1]=t>>>16&255,i[2]=t>>>8&255,i[3]=255&t,i[4]=(t=parseInt(n.slice(9,13),16))>>>8,i[5]=255&t,i[6]=(t=parseInt(n.slice(14,18),16))>>>8,i[7]=255&t,i[8]=(t=parseInt(n.slice(19,23),16))>>>8,i[9]=255&t,i[10]=(t=parseInt(n.slice(24,36),16))/1099511627776&255,i[11]=t/4294967296&255,i[12]=t>>>24&255,i[13]=t>>>16&255,i[14]=t>>>8&255,i[15]=255&t,i}}));
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue