Put all the files in the diff, limit # of lines and files that the plugin runs on

This commit is contained in:
yousefhindy 2024-10-10 14:17:40 -07:00
commit 54e996ab30
4 changed files with 1976 additions and 1849 deletions

259
dist/index.js vendored
View file

@ -55,66 +55,107 @@ const octokit = new rest_1.Octokit({ auth: GITHUB_TOKEN });
const openai = new openai_1.default({ const openai = new openai_1.default({
apiKey: OPENAI_API_KEY, apiKey: OPENAI_API_KEY,
}); });
const MAX_LINES_TO_REVIEW = 250;
const INCLUDE_PATHS = core.getInput("INCLUDE_PATHS").split(",").map(p => p.trim());
function getPRDetails() { function getPRDetails() {
var _a, _b; var _a, _b, _c;
return __awaiter(this, void 0, void 0, function* () { return __awaiter(this, void 0, void 0, function* () {
const { repository, number } = JSON.parse((0, fs_1.readFileSync)(process.env.GITHUB_EVENT_PATH || "", "utf8")); try {
const prResponse = yield octokit.pulls.get({ let owner;
owner: repository.owner.login, let repo;
repo: repository.name, let pull_number;
pull_number: number, const eventName = process.env.GITHUB_EVENT_NAME;
}); console.log("Event name:", eventName);
return { if (eventName === 'issue_comment' || eventName === 'pull_request_review') {
owner: repository.owner.login, // For comment and review triggers, we need to fetch PR details separately
repo: repository.name, const prNumber = process.env.PR_NUMBER;
pull_number: number, if (!prNumber) {
title: (_a = prResponse.data.title) !== null && _a !== void 0 ? _a : "", throw new Error("PR_NUMBER is not set for comment/review trigger");
description: (_b = prResponse.data.body) !== null && _b !== void 0 ? _b : "", }
}; [owner, repo] = ((_a = process.env.GITHUB_REPOSITORY) === null || _a === void 0 ? void 0 : _a.split('/')) || [];
if (!owner || !repo) {
throw new Error("Unable to parse owner and repo from GITHUB_REPOSITORY");
}
pull_number = parseInt(prNumber);
}
else {
// For other triggers, use the event file
const eventPath = process.env.GITHUB_EVENT_PATH;
if (!eventPath) {
throw new Error("GITHUB_EVENT_PATH is not set");
}
console.log("GITHUB_EVENT_PATH:", eventPath);
const eventContent = (0, fs_1.readFileSync)(eventPath, "utf8");
console.log("Event file content:", eventContent);
const eventData = JSON.parse(eventContent);
if (!eventData.repository || !eventData.pull_request || !eventData.pull_request.number) {
throw new Error("Unable to parse repository or PR number from event file");
}
owner = eventData.repository.owner.login;
repo = eventData.repository.name;
pull_number = eventData.pull_request.number;
}
console.log("Owner:", owner);
console.log("Repo:", repo);
console.log("PR number:", pull_number);
const prResponse = yield octokit.pulls.get({
owner,
repo,
pull_number,
});
return {
owner,
repo,
pull_number,
title: (_b = prResponse.data.title) !== null && _b !== void 0 ? _b : "",
description: (_c = prResponse.data.body) !== null && _c !== void 0 ? _c : "",
};
}
catch (error) {
console.error("Error in getPRDetails:", error);
throw error;
}
}); });
} }
function getDiff(owner, repo, pull_number) { function getDiff(owner, repo, pull_number) {
return __awaiter(this, void 0, void 0, function* () { return __awaiter(this, void 0, void 0, function* () {
const response = yield octokit.pulls.get({ try {
owner, const response = yield octokit.pulls.get({
repo, owner,
pull_number, repo,
mediaType: { format: "diff" }, pull_number,
}); mediaType: { format: "diff" },
// @ts-expect-error - response.data is a string });
return response.data; // Check if the response is a string (diff content)
}); if (typeof response.data === 'string') {
} const diffContent = response.data;
function analyzeCode(parsedDiff, prDetails) { console.log("Raw diff content sample:", diffContent);
return __awaiter(this, void 0, void 0, function* () { return diffContent;
const comments = []; }
for (const file of parsedDiff) { else {
if (file.to === "/dev/null") console.error("Unexpected response format. Expected string, got:", typeof response.data);
continue; // Ignore deleted files return null;
for (const chunk of file.chunks) {
const prompt = createPrompt(file, chunk, prDetails);
const aiResponse = yield getAIResponse(prompt);
if (aiResponse) {
const newComments = createComment(file, chunk, aiResponse);
if (newComments) {
comments.push(...newComments);
}
}
} }
} }
return comments; catch (error) {
console.error("Error fetching diff:", error);
return null;
}
}); });
} }
function createPrompt(file, chunk, prDetails) { function analyzeEntirePR(files, prDetails) {
return `Your task is to review pull requests. Instructions: return __awaiter(this, void 0, void 0, function* () {
- Provide the response in following JSON format: {"reviews": [{"lineNumber": <line_number>, "reviewComment": "<review comment>"}]} const fileContents = files.map(file => `File: ${file.to}\n${file.chunks.map(chunk => chunk.changes.map(change => change.content).join('\n')).join('\n')}`).join('\n\n');
const prompt = `Your task is to review this entire pull request. Instructions:
- Provide the response in the following JSON format: {"reviews": [{"path": "<file_path>", "line": <line_number>, "comment": "<review comment>"}]}
- Do not give positive comments or compliments. - Do not give positive comments or compliments.
- Provide comments and suggestions ONLY if there is something to improve, otherwise "reviews" should be an empty array. - Provide comments and suggestions ONLY if there is something to improve.
- Write the comment in GitHub Markdown format. - Write the comments in GitHub Markdown format.
- Use the given description only for the overall context and only comment the code. - Use the given description for overall context.
- IMPORTANT: NEVER suggest adding comments to the code. - IMPORTANT: NEVER suggest adding comments to the code.
- IMPORTANT: Only comment on lines that are part of the diff (added or modified lines).
Review the following code diff in the file "${file.to}" and take the pull request title and description into account when writing the response. Review the following pull request and take the title and description into account when writing the response.
Pull request title: ${prDetails.title} Pull request title: ${prDetails.title}
Pull request description: Pull request description:
@ -125,14 +166,15 @@ ${prDetails.description}
Git diff to review: Git diff to review:
\`\`\`diff ${fileContents}
${chunk.content}
${chunk.changes
// @ts-expect-error - ln and ln2 exists where needed
.map((c) => `${c.ln ? c.ln : c.ln2} ${c.content}`)
.join("\n")}
\`\`\`
`; `;
const aiResponse = yield getAIResponse(prompt);
return aiResponse ? aiResponse.map(review => ({
body: review.comment,
path: review.path,
line: review.line
})) : [];
});
} }
function getAIResponse(prompt) { function getAIResponse(prompt) {
var _a, _b; var _a, _b;
@ -140,22 +182,33 @@ function getAIResponse(prompt) {
const queryConfig = { const queryConfig = {
model: OPENAI_API_MODEL, model: OPENAI_API_MODEL,
temperature: 0.2, temperature: 0.2,
max_tokens: 700, max_tokens: 2000,
top_p: 1, top_p: 1,
frequency_penalty: 0, frequency_penalty: 0,
presence_penalty: 0, presence_penalty: 0,
}; };
console.log("Sending prompt to AI...", prompt);
try { try {
const response = yield openai.chat.completions.create(Object.assign(Object.assign(Object.assign({}, queryConfig), (OPENAI_API_MODEL === "gpt-4-1106-preview" const response = yield openai.chat.completions.create(Object.assign(Object.assign({}, queryConfig), { messages: [
? { response_format: { type: "json_object" } }
: {})), { messages: [
{ {
role: "system", role: "system",
content: prompt, content: prompt,
}, },
] })); ] }));
const res = ((_b = (_a = response.choices[0].message) === null || _a === void 0 ? void 0 : _a.content) === null || _b === void 0 ? void 0 : _b.trim()) || "{}"; let res = ((_b = (_a = response.choices[0].message) === null || _a === void 0 ? void 0 : _a.content) === null || _b === void 0 ? void 0 : _b.trim()) || "{}";
return JSON.parse(res).reviews; console.info("Raw AI response:", res);
// Remove any markdown code block syntax
res = res.replace(/^```json\s*/, '').replace(/\s*```$/, '');
// Attempt to parse the JSON
try {
const parsedResponse = JSON.parse(res);
console.info("Parsed AI response:", parsedResponse);
return parsedResponse.reviews;
}
catch (parseError) {
console.error("Error parsing AI response:", parseError);
return null;
}
} }
catch (error) { catch (error) {
console.error("Error:", error); console.error("Error:", error);
@ -187,52 +240,70 @@ function createReviewComment(owner, repo, pull_number, comments) {
}); });
} }
function main() { function main() {
var _a;
return __awaiter(this, void 0, void 0, function* () { return __awaiter(this, void 0, void 0, function* () {
console.info("Starting main function");
const prDetails = yield getPRDetails(); const prDetails = yield getPRDetails();
let diff; console.info("PR Details:", prDetails);
const eventData = JSON.parse((0, fs_1.readFileSync)((_a = process.env.GITHUB_EVENT_PATH) !== null && _a !== void 0 ? _a : "", "utf8")); const diff = yield getDiff(prDetails.owner, prDetails.repo, prDetails.pull_number);
if (eventData.action === "opened") {
diff = yield getDiff(prDetails.owner, prDetails.repo, prDetails.pull_number);
}
else if (eventData.action === "synchronize") {
const newBaseSha = eventData.before;
const newHeadSha = eventData.after;
const response = yield octokit.repos.compareCommits({
headers: {
accept: "application/vnd.github.v3.diff",
},
owner: prDetails.owner,
repo: prDetails.repo,
base: newBaseSha,
head: newHeadSha,
});
diff = String(response.data);
}
else {
console.log("Unsupported event:", process.env.GITHUB_EVENT_NAME);
return;
}
if (!diff) { if (!diff) {
console.log("No diff found"); console.log("No diff found");
return; return;
} }
console.log("Diff length:", diff.length);
const parsedDiff = (0, parse_diff_1.default)(diff); const parsedDiff = (0, parse_diff_1.default)(diff);
const excludePatterns = core console.log("Parsed diff length:", parsedDiff.length);
.getInput("exclude") // Filter the diff to only include files that match the include paths
.split(",") console.log("Filtering diff based on include paths:", INCLUDE_PATHS);
.map((s) => s.trim()); const filteredDiff = parsedDiff.filter(file => {
const filteredDiff = parsedDiff.filter((file) => { const matchesPattern = INCLUDE_PATHS.some(pattern => (0, minimatch_1.default)(file.to || "", pattern));
return !excludePatterns.some((pattern) => { var _a; return (0, minimatch_1.default)((_a = file.to) !== null && _a !== void 0 ? _a : "", pattern); }); console.log(`File ${file.to}: ${matchesPattern ? 'included' : 'excluded'}`);
return matchesPattern;
}); });
const comments = yield analyzeCode(filteredDiff, prDetails); console.log("Filtered diff files:", filteredDiff.map(file => file.to));
if (comments.length > 0) { console.log("Filtered diff length:", filteredDiff.length);
yield createReviewComment(prDetails.owner, prDetails.repo, prDetails.pull_number, comments); // Check if the PR is too long
const totalChangedLines = filteredDiff.reduce((total, file) => {
return total + file.additions + file.deletions;
}, 0);
if (totalChangedLines > MAX_LINES_TO_REVIEW) {
console.log("PR is too long. Adding general comment and exiting.");
yield octokit.pulls.createReview({
owner: prDetails.owner,
repo: prDetails.repo,
pull_number: prDetails.pull_number,
body: `LLM reviewer will not review this as the PR is too long (${totalChangedLines} lines). Please consider splitting it up to make it more readable for humans too!`,
event: "COMMENT"
});
return;
} }
const comments = yield analyzeEntirePR(filteredDiff, prDetails);
console.log("Generated comments:", comments.length);
// Filter comments to ensure they're on changed lines and adjust line numbers
const validComments = comments.filter(comment => {
const file = filteredDiff.find(f => f.to === comment.path);
if (!file)
return false;
const changedLines = new Set();
file.chunks.forEach(chunk => {
for (let i = 0; i < chunk.changes.length; i++) {
const change = chunk.changes[i];
if (change.type === 'add' || change.type === 'del') {
changedLines.add(chunk.newStart + i);
}
}
});
return changedLines.has(comment.line);
});
console.log("Valid comments:", validComments.length);
if (validComments.length > 0) {
console.log("Creating review comments");
yield createReviewComment(prDetails.owner, prDetails.repo, prDetails.pull_number, validComments);
}
console.log("Main function completed");
}); });
} }
main().catch((error) => { main().catch((error) => {
console.error("Error:", error); console.error("Error in main function:", error);
process.exit(1); process.exit(1);
}); });

2
dist/index.js.map vendored

File diff suppressed because one or more lines are too long

View file

@ -23,22 +23,70 @@ interface PRDetails {
description: string; description: string;
} }
const MAX_LINES_TO_REVIEW: number = 250;
const INCLUDE_PATHS: string[] = core.getInput("INCLUDE_PATHS").split(",").map(p => p.trim());
async function getPRDetails(): Promise<PRDetails> { async function getPRDetails(): Promise<PRDetails> {
const { repository, number } = JSON.parse( try {
readFileSync(process.env.GITHUB_EVENT_PATH || "", "utf8") let owner: string;
); let repo: string;
const prResponse = await octokit.pulls.get({ let pull_number: number;
owner: repository.owner.login,
repo: repository.name, const eventName = process.env.GITHUB_EVENT_NAME;
pull_number: number, console.log("Event name:", eventName);
});
return { if (eventName === 'issue_comment' || eventName === 'pull_request_review') {
owner: repository.owner.login, // For comment and review triggers, we need to fetch PR details separately
repo: repository.name, const prNumber = process.env.PR_NUMBER;
pull_number: number, if (!prNumber) {
title: prResponse.data.title ?? "", throw new Error("PR_NUMBER is not set for comment/review trigger");
description: prResponse.data.body ?? "", }
}; [owner, repo] = process.env.GITHUB_REPOSITORY?.split('/') || [];
if (!owner || !repo) {
throw new Error("Unable to parse owner and repo from GITHUB_REPOSITORY");
}
pull_number = parseInt(prNumber);
} else {
// For other triggers, use the event file
const eventPath = process.env.GITHUB_EVENT_PATH;
if (!eventPath) {
throw new Error("GITHUB_EVENT_PATH is not set");
}
console.log("GITHUB_EVENT_PATH:", eventPath);
const eventContent = readFileSync(eventPath, "utf8");
console.log("Event file content:", eventContent);
const eventData = JSON.parse(eventContent);
if (!eventData.repository || !eventData.pull_request || !eventData.pull_request.number) {
throw new Error("Unable to parse repository or PR number from event file");
}
owner = eventData.repository.owner.login;
repo = eventData.repository.name;
pull_number = eventData.pull_request.number;
}
console.log("Owner:", owner);
console.log("Repo:", repo);
console.log("PR number:", pull_number);
const prResponse = await octokit.pulls.get({
owner,
repo,
pull_number,
});
return {
owner,
repo,
pull_number,
title: prResponse.data.title ?? "",
description: prResponse.data.body ?? "",
};
} catch (error) {
console.error("Error in getPRDetails:", error);
throw error;
}
} }
async function getDiff( async function getDiff(
@ -46,50 +94,45 @@ async function getDiff(
repo: string, repo: string,
pull_number: number pull_number: number
): Promise<string | null> { ): Promise<string | null> {
const response = await octokit.pulls.get({ try {
owner, const response = await octokit.pulls.get({
repo, owner,
pull_number, repo,
mediaType: { format: "diff" }, pull_number,
}); mediaType: { format: "diff" },
// @ts-expect-error - response.data is a string });
return response.data;
// Check if the response is a string (diff content)
if (typeof response.data === 'string') {
const diffContent = response.data;
console.log("Raw diff content sample:", diffContent);
return diffContent;
} else {
console.error("Unexpected response format. Expected string, got:", typeof response.data);
return null;
}
} catch (error) {
console.error("Error fetching diff:", error);
return null;
}
} }
async function analyzeCode( async function analyzeEntirePR(
parsedDiff: File[], files: File[],
prDetails: PRDetails prDetails: PRDetails
): Promise<Array<{ body: string; path: string; line: number }>> { ): Promise<Array<{ body: string; path: string; line: number }>> {
const comments: Array<{ body: string; path: string; line: number }> = []; const fileContents = files.map(file => `File: ${file.to}\n${file.chunks.map(chunk => chunk.changes.map(change => change.content).join('\n')).join('\n')}`).join('\n\n');
for (const file of parsedDiff) { const prompt = `Your task is to review this entire pull request. Instructions:
if (file.to === "/dev/null") continue; // Ignore deleted files - Provide the response in the following JSON format: {"reviews": [{"path": "<file_path>", "line": <line_number>, "comment": "<review comment>"}]}
for (const chunk of file.chunks) {
const prompt = createPrompt(file, chunk, prDetails);
const aiResponse = await getAIResponse(prompt);
if (aiResponse) {
const newComments = createComment(file, chunk, aiResponse);
if (newComments) {
comments.push(...newComments);
}
}
}
}
return comments;
}
function createPrompt(file: File, chunk: Chunk, prDetails: PRDetails): string {
return `Your task is to review pull requests. Instructions:
- Provide the response in following JSON format: {"reviews": [{"lineNumber": <line_number>, "reviewComment": "<review comment>"}]}
- Do not give positive comments or compliments. - Do not give positive comments or compliments.
- Provide comments and suggestions ONLY if there is something to improve, otherwise "reviews" should be an empty array. - Provide comments and suggestions ONLY if there is something to improve.
- Write the comment in GitHub Markdown format. - Write the comments in GitHub Markdown format.
- Use the given description only for the overall context and only comment the code. - Use the given description for overall context.
- IMPORTANT: NEVER suggest adding comments to the code. - IMPORTANT: NEVER suggest adding comments to the code.
- IMPORTANT: Only comment on lines that are part of the diff (added or modified lines).
Review the following code diff in the file "${ Review the following pull request and take the title and description into account when writing the response.
file.to
}" and take the pull request title and description into account when writing the response.
Pull request title: ${prDetails.title} Pull request title: ${prDetails.title}
Pull request description: Pull request description:
@ -100,36 +143,35 @@ ${prDetails.description}
Git diff to review: Git diff to review:
\`\`\`diff ${fileContents}
${chunk.content}
${chunk.changes
// @ts-expect-error - ln and ln2 exists where needed
.map((c) => `${c.ln ? c.ln : c.ln2} ${c.content}`)
.join("\n")}
\`\`\`
`; `;
const aiResponse = await getAIResponse(prompt);
return aiResponse ? aiResponse.map(review => ({
body: review.comment,
path: review.path,
line: review.line
})) : [];
} }
async function getAIResponse(prompt: string): Promise<Array<{ async function getAIResponse(prompt: string): Promise<Array<{
lineNumber: string; path: string;
reviewComment: string; line: number;
comment: string;
}> | null> { }> | null> {
const queryConfig = { const queryConfig = {
model: OPENAI_API_MODEL, model: OPENAI_API_MODEL,
temperature: 0.2, temperature: 0.2,
max_tokens: 700, max_tokens: 2000,
top_p: 1, top_p: 1,
frequency_penalty: 0, frequency_penalty: 0,
presence_penalty: 0, presence_penalty: 0,
}; };
console.log("Sending prompt to AI...", prompt);
try { try {
const response = await openai.chat.completions.create({ const response = await openai.chat.completions.create({
...queryConfig, ...queryConfig,
// return JSON if the model supports it:
...(OPENAI_API_MODEL === "gpt-4-1106-preview"
? { response_format: { type: "json_object" } }
: {}),
messages: [ messages: [
{ {
role: "system", role: "system",
@ -138,8 +180,21 @@ async function getAIResponse(prompt: string): Promise<Array<{
], ],
}); });
const res = response.choices[0].message?.content?.trim() || "{}"; let res = response.choices[0].message?.content?.trim() || "{}";
return JSON.parse(res).reviews; console.info("Raw AI response:", res);
// Remove any markdown code block syntax
res = res.replace(/^```json\s*/, '').replace(/\s*```$/, '');
// Attempt to parse the JSON
try {
const parsedResponse = JSON.parse(res);
console.info("Parsed AI response:", parsedResponse);
return parsedResponse.reviews;
} catch (parseError) {
console.error("Error parsing AI response:", parseError);
return null;
}
} catch (error) { } catch (error) {
console.error("Error:", error); console.error("Error:", error);
return null; return null;
@ -182,68 +237,88 @@ async function createReviewComment(
} }
async function main() { async function main() {
console.info("Starting main function");
const prDetails = await getPRDetails(); const prDetails = await getPRDetails();
let diff: string | null; console.info("PR Details:", prDetails);
const eventData = JSON.parse(
readFileSync(process.env.GITHUB_EVENT_PATH ?? "", "utf8") const diff = await getDiff(
prDetails.owner,
prDetails.repo,
prDetails.pull_number
); );
if (eventData.action === "opened") {
diff = await getDiff(
prDetails.owner,
prDetails.repo,
prDetails.pull_number
);
} else if (eventData.action === "synchronize") {
const newBaseSha = eventData.before;
const newHeadSha = eventData.after;
const response = await octokit.repos.compareCommits({
headers: {
accept: "application/vnd.github.v3.diff",
},
owner: prDetails.owner,
repo: prDetails.repo,
base: newBaseSha,
head: newHeadSha,
});
diff = String(response.data);
} else {
console.log("Unsupported event:", process.env.GITHUB_EVENT_NAME);
return;
}
if (!diff) { if (!diff) {
console.log("No diff found"); console.log("No diff found");
return; return;
} }
console.log("Diff length:", diff.length);
const parsedDiff = parseDiff(diff); const parsedDiff = parseDiff(diff);
console.log("Parsed diff length:", parsedDiff.length);
const excludePatterns = core // Filter the diff to only include files that match the include paths
.getInput("exclude") console.log("Filtering diff based on include paths:", INCLUDE_PATHS);
.split(",") const filteredDiff = parsedDiff.filter(file => {
.map((s) => s.trim()); const matchesPattern = INCLUDE_PATHS.some(pattern => minimatch(file.to || "", pattern));
console.log(`File ${file.to}: ${matchesPattern ? 'included' : 'excluded'}`);
return matchesPattern;
});
console.log("Filtered diff files:", filteredDiff.map(file => file.to));
console.log("Filtered diff length:", filteredDiff.length);
const filteredDiff = parsedDiff.filter((file) => { // Check if the PR is too long
return !excludePatterns.some((pattern) => const totalChangedLines = filteredDiff.reduce((total, file) => {
minimatch(file.to ?? "", pattern) return total + file.additions + file.deletions;
); }, 0);
if (totalChangedLines > MAX_LINES_TO_REVIEW) {
console.log("PR is too long. Adding general comment and exiting.");
await octokit.pulls.createReview({
owner: prDetails.owner,
repo: prDetails.repo,
pull_number: prDetails.pull_number,
body: `LLM reviewer will not review this as the PR is too long (${totalChangedLines} lines). Please consider splitting it up to make it more readable for humans too!`,
event: "COMMENT"
});
return;
}
const comments = await analyzeEntirePR(filteredDiff, prDetails);
console.log("Generated comments:", comments.length);
// Filter comments to ensure they're on changed lines and adjust line numbers
const validComments = comments.filter(comment => {
const file = filteredDiff.find(f => f.to === comment.path);
if (!file) return false;
const changedLines = new Set();
file.chunks.forEach(chunk => {
for (let i = 0; i < chunk.changes.length; i++) {
const change = chunk.changes[i];
if (change.type === 'add' || change.type === 'del') {
changedLines.add(chunk.newStart + i);
}
}
});
return changedLines.has(comment.line);
}); });
const comments = await analyzeCode(filteredDiff, prDetails); console.log("Valid comments:", validComments.length);
if (comments.length > 0) {
if (validComments.length > 0) {
console.log("Creating review comments");
await createReviewComment( await createReviewComment(
prDetails.owner, prDetails.owner,
prDetails.repo, prDetails.repo,
prDetails.pull_number, prDetails.pull_number,
comments validComments
); );
} }
console.log("Main function completed");
} }
main().catch((error) => { main().catch((error) => {
console.error("Error:", error); console.error("Error in main function:", error);
process.exit(1); process.exit(1);
}); });

673
yarn.lock
View file

@ -3,133 +3,133 @@
"@actions/core@^1.10.0": "@actions/core@^1.10.0":
version "1.10.0" "integrity" "sha512-2aZDDa3zrrZbP5ZYg159sNoLRb61nQ7awl5pSvIq5Qpj81vwDzdMRKzkWJGJuwVvWpvZKx7vspJALyvaaIQyug=="
resolved "https://registry.yarnpkg.com/@actions/core/-/core-1.10.0.tgz#44551c3c71163949a2f06e94d9ca2157a0cfac4f" "resolved" "https://registry.npmjs.org/@actions/core/-/core-1.10.0.tgz"
integrity sha512-2aZDDa3zrrZbP5ZYg159sNoLRb61nQ7awl5pSvIq5Qpj81vwDzdMRKzkWJGJuwVvWpvZKx7vspJALyvaaIQyug== "version" "1.10.0"
dependencies: dependencies:
"@actions/http-client" "^2.0.1" "@actions/http-client" "^2.0.1"
uuid "^8.3.2" "uuid" "^8.3.2"
"@actions/http-client@^2.0.1": "@actions/http-client@^2.0.1":
version "2.1.0" "integrity" "sha512-BonhODnXr3amchh4qkmjPMUO8mFi/zLaaCeCAJZqch8iQqyDnVIkySjB38VHAC8IJ+bnlgfOqlhpyCUZHlQsqw=="
resolved "https://registry.yarnpkg.com/@actions/http-client/-/http-client-2.1.0.tgz#b6d8c3934727d6a50d10d19f00a711a964599a9f" "resolved" "https://registry.npmjs.org/@actions/http-client/-/http-client-2.1.0.tgz"
integrity sha512-BonhODnXr3amchh4qkmjPMUO8mFi/zLaaCeCAJZqch8iQqyDnVIkySjB38VHAC8IJ+bnlgfOqlhpyCUZHlQsqw== "version" "2.1.0"
dependencies: dependencies:
tunnel "^0.0.6" "tunnel" "^0.0.6"
"@cspotcode/source-map-support@^0.8.0": "@cspotcode/source-map-support@^0.8.0":
version "0.8.1" "integrity" "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw=="
resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1" "resolved" "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz"
integrity sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw== "version" "0.8.1"
dependencies: dependencies:
"@jridgewell/trace-mapping" "0.3.9" "@jridgewell/trace-mapping" "0.3.9"
"@jridgewell/resolve-uri@^3.0.3": "@jridgewell/resolve-uri@^3.0.3":
version "3.1.0" "integrity" "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w=="
resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" "resolved" "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz"
integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== "version" "3.1.0"
"@jridgewell/sourcemap-codec@^1.4.10": "@jridgewell/sourcemap-codec@^1.4.10":
version "1.4.14" "integrity" "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw=="
resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" "resolved" "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz"
integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== "version" "1.4.14"
"@jridgewell/trace-mapping@0.3.9": "@jridgewell/trace-mapping@0.3.9":
version "0.3.9" "integrity" "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ=="
resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9" "resolved" "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz"
integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ== "version" "0.3.9"
dependencies: dependencies:
"@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/resolve-uri" "^3.0.3"
"@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/sourcemap-codec" "^1.4.10"
"@octokit/auth-token@^3.0.0": "@octokit/auth-token@^3.0.0":
version "3.0.3" "integrity" "sha512-/aFM2M4HVDBT/jjDBa84sJniv1t9Gm/rLkalaz9htOm+L+8JMj1k9w0CkUdcxNyNxZPlTxKPVko+m1VlM58ZVA=="
resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-3.0.3.tgz#ce7e48a3166731f26068d7a7a7996b5da58cbe0c" "resolved" "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-3.0.3.tgz"
integrity sha512-/aFM2M4HVDBT/jjDBa84sJniv1t9Gm/rLkalaz9htOm+L+8JMj1k9w0CkUdcxNyNxZPlTxKPVko+m1VlM58ZVA== "version" "3.0.3"
dependencies: dependencies:
"@octokit/types" "^9.0.0" "@octokit/types" "^9.0.0"
"@octokit/core@^4.1.0": "@octokit/core@^4.1.0", "@octokit/core@>=3", "@octokit/core@>=4":
version "4.2.0" "integrity" "sha512-AgvDRUg3COpR82P7PBdGZF/NNqGmtMq2NiPqeSsDIeCfYFOZ9gddqWNQHnFdEUf+YwOj4aZYmJnlPp7OXmDIDg=="
resolved "https://registry.yarnpkg.com/@octokit/core/-/core-4.2.0.tgz#8c253ba9605aca605bc46187c34fcccae6a96648" "resolved" "https://registry.npmjs.org/@octokit/core/-/core-4.2.0.tgz"
integrity sha512-AgvDRUg3COpR82P7PBdGZF/NNqGmtMq2NiPqeSsDIeCfYFOZ9gddqWNQHnFdEUf+YwOj4aZYmJnlPp7OXmDIDg== "version" "4.2.0"
dependencies: dependencies:
"@octokit/auth-token" "^3.0.0" "@octokit/auth-token" "^3.0.0"
"@octokit/graphql" "^5.0.0" "@octokit/graphql" "^5.0.0"
"@octokit/request" "^6.0.0" "@octokit/request" "^6.0.0"
"@octokit/request-error" "^3.0.0" "@octokit/request-error" "^3.0.0"
"@octokit/types" "^9.0.0" "@octokit/types" "^9.0.0"
before-after-hook "^2.2.0" "before-after-hook" "^2.2.0"
universal-user-agent "^6.0.0" "universal-user-agent" "^6.0.0"
"@octokit/endpoint@^7.0.0": "@octokit/endpoint@^7.0.0":
version "7.0.5" "integrity" "sha512-LG4o4HMY1Xoaec87IqQ41TQ+glvIeTKqfjkCEmt5AIwDZJwQeVZFIEYXrYY6yLwK+pAScb9Gj4q+Nz2qSw1roA=="
resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-7.0.5.tgz#2bb2a911c12c50f10014183f5d596ce30ac67dd1" "resolved" "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-7.0.5.tgz"
integrity sha512-LG4o4HMY1Xoaec87IqQ41TQ+glvIeTKqfjkCEmt5AIwDZJwQeVZFIEYXrYY6yLwK+pAScb9Gj4q+Nz2qSw1roA== "version" "7.0.5"
dependencies: dependencies:
"@octokit/types" "^9.0.0" "@octokit/types" "^9.0.0"
is-plain-object "^5.0.0" "is-plain-object" "^5.0.0"
universal-user-agent "^6.0.0" "universal-user-agent" "^6.0.0"
"@octokit/graphql@^5.0.0": "@octokit/graphql@^5.0.0":
version "5.0.5" "integrity" "sha512-Qwfvh3xdqKtIznjX9lz2D458r7dJPP8l6r4GQkIdWQouZwHQK0mVT88uwiU2bdTU2OtT1uOlKpRciUWldpG0yQ=="
resolved "https://registry.yarnpkg.com/@octokit/graphql/-/graphql-5.0.5.tgz#a4cb3ea73f83b861893a6370ee82abb36e81afd2" "resolved" "https://registry.npmjs.org/@octokit/graphql/-/graphql-5.0.5.tgz"
integrity sha512-Qwfvh3xdqKtIznjX9lz2D458r7dJPP8l6r4GQkIdWQouZwHQK0mVT88uwiU2bdTU2OtT1uOlKpRciUWldpG0yQ== "version" "5.0.5"
dependencies: dependencies:
"@octokit/request" "^6.0.0" "@octokit/request" "^6.0.0"
"@octokit/types" "^9.0.0" "@octokit/types" "^9.0.0"
universal-user-agent "^6.0.0" "universal-user-agent" "^6.0.0"
"@octokit/openapi-types@^16.0.0": "@octokit/openapi-types@^16.0.0":
version "16.0.0" "integrity" "sha512-JbFWOqTJVLHZSUUoF4FzAZKYtqdxWu9Z5m2QQnOyEa04fOFljvyh7D3GYKbfuaSWisqehImiVIMG4eyJeP5VEA=="
resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-16.0.0.tgz#d92838a6cd9fb4639ca875ddb3437f1045cc625e" "resolved" "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-16.0.0.tgz"
integrity sha512-JbFWOqTJVLHZSUUoF4FzAZKYtqdxWu9Z5m2QQnOyEa04fOFljvyh7D3GYKbfuaSWisqehImiVIMG4eyJeP5VEA== "version" "16.0.0"
"@octokit/plugin-paginate-rest@^6.0.0": "@octokit/plugin-paginate-rest@^6.0.0":
version "6.0.0" "integrity" "sha512-Sq5VU1PfT6/JyuXPyt04KZNVsFOSBaYOAq2QRZUwzVlI10KFvcbUo8lR258AAQL1Et60b0WuVik+zOWKLuDZxw=="
resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-6.0.0.tgz#f34b5a7d9416019126042cd7d7b811e006c0d561" "resolved" "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-6.0.0.tgz"
integrity sha512-Sq5VU1PfT6/JyuXPyt04KZNVsFOSBaYOAq2QRZUwzVlI10KFvcbUo8lR258AAQL1Et60b0WuVik+zOWKLuDZxw== "version" "6.0.0"
dependencies: dependencies:
"@octokit/types" "^9.0.0" "@octokit/types" "^9.0.0"
"@octokit/plugin-request-log@^1.0.4": "@octokit/plugin-request-log@^1.0.4":
version "1.0.4" "integrity" "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA=="
resolved "https://registry.yarnpkg.com/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz#5e50ed7083a613816b1e4a28aeec5fb7f1462e85" "resolved" "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz"
integrity sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA== "version" "1.0.4"
"@octokit/plugin-rest-endpoint-methods@^7.0.0": "@octokit/plugin-rest-endpoint-methods@^7.0.0":
version "7.0.1" "integrity" "sha512-pnCaLwZBudK5xCdrR823xHGNgqOzRnJ/mpC/76YPpNP7DybdsJtP7mdOwh+wYZxK5jqeQuhu59ogMI4NRlBUvA=="
resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-7.0.1.tgz#f7ebe18144fd89460f98f35a587b056646e84502" "resolved" "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-7.0.1.tgz"
integrity sha512-pnCaLwZBudK5xCdrR823xHGNgqOzRnJ/mpC/76YPpNP7DybdsJtP7mdOwh+wYZxK5jqeQuhu59ogMI4NRlBUvA== "version" "7.0.1"
dependencies: dependencies:
"@octokit/types" "^9.0.0" "@octokit/types" "^9.0.0"
deprecation "^2.3.1" "deprecation" "^2.3.1"
"@octokit/request-error@^3.0.0": "@octokit/request-error@^3.0.0":
version "3.0.3" "integrity" "sha512-crqw3V5Iy2uOU5Np+8M/YexTlT8zxCfI+qu+LxUB7SZpje4Qmx3mub5DfEKSO8Ylyk0aogi6TYdf6kxzh2BguQ=="
resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-3.0.3.tgz#ef3dd08b8e964e53e55d471acfe00baa892b9c69" "resolved" "https://registry.npmjs.org/@octokit/request-error/-/request-error-3.0.3.tgz"
integrity sha512-crqw3V5Iy2uOU5Np+8M/YexTlT8zxCfI+qu+LxUB7SZpje4Qmx3mub5DfEKSO8Ylyk0aogi6TYdf6kxzh2BguQ== "version" "3.0.3"
dependencies: dependencies:
"@octokit/types" "^9.0.0" "@octokit/types" "^9.0.0"
deprecation "^2.0.0" "deprecation" "^2.0.0"
once "^1.4.0" "once" "^1.4.0"
"@octokit/request@^6.0.0": "@octokit/request@^6.0.0":
version "6.2.3" "integrity" "sha512-TNAodj5yNzrrZ/VxP+H5HiYaZep0H3GU0O7PaF+fhDrt8FPrnkei9Aal/txsN/1P7V3CPiThG0tIvpPDYUsyAA=="
resolved "https://registry.yarnpkg.com/@octokit/request/-/request-6.2.3.tgz#76d5d6d44da5c8d406620a4c285d280ae310bdb4" "resolved" "https://registry.npmjs.org/@octokit/request/-/request-6.2.3.tgz"
integrity sha512-TNAodj5yNzrrZ/VxP+H5HiYaZep0H3GU0O7PaF+fhDrt8FPrnkei9Aal/txsN/1P7V3CPiThG0tIvpPDYUsyAA== "version" "6.2.3"
dependencies: dependencies:
"@octokit/endpoint" "^7.0.0" "@octokit/endpoint" "^7.0.0"
"@octokit/request-error" "^3.0.0" "@octokit/request-error" "^3.0.0"
"@octokit/types" "^9.0.0" "@octokit/types" "^9.0.0"
is-plain-object "^5.0.0" "is-plain-object" "^5.0.0"
node-fetch "^2.6.7" "node-fetch" "^2.6.7"
universal-user-agent "^6.0.0" "universal-user-agent" "^6.0.0"
"@octokit/rest@^19.0.7": "@octokit/rest@^19.0.7":
version "19.0.7" "integrity" "sha512-HRtSfjrWmWVNp2uAkEpQnuGMJsu/+dBr47dRc5QVgsCbnIc1+GFEaoKBWkYG+zjrsHpSqcAElMio+n10c0b5JA=="
resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-19.0.7.tgz#d2e21b4995ab96ae5bfae50b4969da7e04e0bb70" "resolved" "https://registry.npmjs.org/@octokit/rest/-/rest-19.0.7.tgz"
integrity sha512-HRtSfjrWmWVNp2uAkEpQnuGMJsu/+dBr47dRc5QVgsCbnIc1+GFEaoKBWkYG+zjrsHpSqcAElMio+n10c0b5JA== "version" "19.0.7"
dependencies: dependencies:
"@octokit/core" "^4.1.0" "@octokit/core" "^4.1.0"
"@octokit/plugin-paginate-rest" "^6.0.0" "@octokit/plugin-paginate-rest" "^6.0.0"
@ -137,374 +137,355 @@
"@octokit/plugin-rest-endpoint-methods" "^7.0.0" "@octokit/plugin-rest-endpoint-methods" "^7.0.0"
"@octokit/types@^9.0.0": "@octokit/types@^9.0.0":
version "9.0.0" "integrity" "sha512-LUewfj94xCMH2rbD5YJ+6AQ4AVjFYTgpp6rboWM5T7N3IsIF65SBEOVcYMGAEzO/kKNiNaW4LoWtoThOhH06gw=="
resolved "https://registry.yarnpkg.com/@octokit/types/-/types-9.0.0.tgz#6050db04ddf4188ec92d60e4da1a2ce0633ff635" "resolved" "https://registry.npmjs.org/@octokit/types/-/types-9.0.0.tgz"
integrity sha512-LUewfj94xCMH2rbD5YJ+6AQ4AVjFYTgpp6rboWM5T7N3IsIF65SBEOVcYMGAEzO/kKNiNaW4LoWtoThOhH06gw== "version" "9.0.0"
dependencies: dependencies:
"@octokit/openapi-types" "^16.0.0" "@octokit/openapi-types" "^16.0.0"
"@tsconfig/node10@^1.0.7": "@tsconfig/node10@^1.0.7":
version "1.0.9" "integrity" "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA=="
resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.9.tgz#df4907fc07a886922637b15e02d4cebc4c0021b2" "resolved" "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz"
integrity sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA== "version" "1.0.9"
"@tsconfig/node12@^1.0.7": "@tsconfig/node12@^1.0.7":
version "1.0.11" "integrity" "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag=="
resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.11.tgz#ee3def1f27d9ed66dac6e46a295cffb0152e058d" "resolved" "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz"
integrity sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag== "version" "1.0.11"
"@tsconfig/node14@^1.0.0": "@tsconfig/node14@^1.0.0":
version "1.0.3" "integrity" "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow=="
resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.3.tgz#e4386316284f00b98435bf40f72f75a09dabf6c1" "resolved" "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz"
integrity sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow== "version" "1.0.3"
"@tsconfig/node16@^1.0.2": "@tsconfig/node16@^1.0.2":
version "1.0.3" "integrity" "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ=="
resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.3.tgz#472eaab5f15c1ffdd7f8628bd4c4f753995ec79e" "resolved" "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz"
integrity sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ== "version" "1.0.3"
"@types/node-fetch@^2.6.4": "@types/node-fetch@^2.6.4":
version "2.6.9" "integrity" "sha512-bQVlnMLFJ2d35DkPNjEPmd9ueO/rh5EiaZt2bhqiSarPjZIuIV6bPQVqcrEyvNo+AfTrRGVazle1tl597w3gfA=="
resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.9.tgz#15f529d247f1ede1824f7e7acdaa192d5f28071e" "resolved" "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.9.tgz"
integrity sha512-bQVlnMLFJ2d35DkPNjEPmd9ueO/rh5EiaZt2bhqiSarPjZIuIV6bPQVqcrEyvNo+AfTrRGVazle1tl597w3gfA== "version" "2.6.9"
dependencies: dependencies:
"@types/node" "*" "@types/node" "*"
form-data "^4.0.0" "form-data" "^4.0.0"
"@types/node@*": "@types/node@*", "@types/node@^18.11.18", "@types/node@^18.15.5":
version "20.10.2" "integrity" "sha512-Ark2WDjjZO7GmvsyFFf81MXuGTA/d6oP38anyxWOL6EREyBKAxKoFHwBhaZxCfLRLpO8JgVXwqOwSwa7jRcjew=="
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.10.2.tgz#32a5e8228357f57714ad28d52229ab04880c2814" "resolved" "https://registry.npmjs.org/@types/node/-/node-18.15.5.tgz"
integrity sha512-37MXfxkb0vuIlRKHNxwCkb60PNBpR94u4efQuN4JgIAm66zfCDXGSAFCef9XUWFovX2R1ok6Z7MHhtdVXXkkIw== "version" "18.15.5"
dependencies:
undici-types "~5.26.4"
"@types/node@^18.11.18":
version "18.19.1"
resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.1.tgz#e3ed7d5ab5ea21f33a4503decb2171e0d8f53070"
integrity sha512-mZJ9V11gG5Vp0Ox2oERpeFDl+JvCwK24PGy76vVY/UgBtjwJWc5rYBThFxmbnYOm9UPZNm6wEl/sxHt2SU7x9A==
dependencies:
undici-types "~5.26.4"
"@types/node@^18.15.5":
version "18.15.5"
resolved "https://registry.yarnpkg.com/@types/node/-/node-18.15.5.tgz#3af577099a99c61479149b716183e70b5239324a"
integrity sha512-Ark2WDjjZO7GmvsyFFf81MXuGTA/d6oP38anyxWOL6EREyBKAxKoFHwBhaZxCfLRLpO8JgVXwqOwSwa7jRcjew==
"@vercel/ncc@^0.36.1": "@vercel/ncc@^0.36.1":
version "0.36.1" "integrity" "sha512-S4cL7Taa9yb5qbv+6wLgiKVZ03Qfkc4jGRuiUQMQ8HGBD5pcNRnHeYM33zBvJE4/zJGjJJ8GScB+WmTsn9mORw=="
resolved "https://registry.yarnpkg.com/@vercel/ncc/-/ncc-0.36.1.tgz#d4c01fdbbe909d128d1bf11c7f8b5431654c5b95" "resolved" "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.36.1.tgz"
integrity sha512-S4cL7Taa9yb5qbv+6wLgiKVZ03Qfkc4jGRuiUQMQ8HGBD5pcNRnHeYM33zBvJE4/zJGjJJ8GScB+WmTsn9mORw== "version" "0.36.1"
abort-controller@^3.0.0: "abort-controller@^3.0.0":
version "3.0.0" "integrity" "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg=="
resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" "resolved" "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz"
integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg== "version" "3.0.0"
dependencies: dependencies:
event-target-shim "^5.0.0" "event-target-shim" "^5.0.0"
acorn-walk@^8.1.1: "acorn-walk@^8.1.1":
version "8.2.0" "integrity" "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA=="
resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" "resolved" "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz"
integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== "version" "8.2.0"
acorn@^8.4.1: "acorn@^8.4.1":
version "8.8.2" "integrity" "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw=="
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a" "resolved" "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz"
integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== "version" "8.8.2"
agentkeepalive@^4.2.1: "agentkeepalive@^4.2.1":
version "4.5.0" "integrity" "sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew=="
resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-4.5.0.tgz#2673ad1389b3c418c5a20c5d7364f93ca04be923" "resolved" "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz"
integrity sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew== "version" "4.5.0"
dependencies: dependencies:
humanize-ms "^1.2.1" "humanize-ms" "^1.2.1"
arg@^4.1.0: "arg@^4.1.0":
version "4.1.3" "integrity" "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA=="
resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" "resolved" "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz"
integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== "version" "4.1.3"
asynckit@^0.4.0: "asynckit@^0.4.0":
version "0.4.0" "integrity" "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" "resolved" "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz"
integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== "version" "0.4.0"
balanced-match@^1.0.0: "balanced-match@^1.0.0":
version "1.0.2" "integrity" "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" "resolved" "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz"
integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== "version" "1.0.2"
base-64@^0.1.0: "base-64@^0.1.0":
version "0.1.0" "integrity" "sha512-Y5gU45svrR5tI2Vt/X9GPd3L0HNIKzGu202EjxrXMpuc2V2CiKgemAbUUsqYmZJvPtCXoUKjNZwBJzsNScUbXA=="
resolved "https://registry.yarnpkg.com/base-64/-/base-64-0.1.0.tgz#780a99c84e7d600260361511c4877613bf24f6bb" "resolved" "https://registry.npmjs.org/base-64/-/base-64-0.1.0.tgz"
integrity sha512-Y5gU45svrR5tI2Vt/X9GPd3L0HNIKzGu202EjxrXMpuc2V2CiKgemAbUUsqYmZJvPtCXoUKjNZwBJzsNScUbXA== "version" "0.1.0"
before-after-hook@^2.2.0: "before-after-hook@^2.2.0":
version "2.2.3" "integrity" "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ=="
resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.2.3.tgz#c51e809c81a4e354084422b9b26bad88249c517c" "resolved" "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz"
integrity sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ== "version" "2.2.3"
brace-expansion@^2.0.1: "brace-expansion@^2.0.1":
version "2.0.1" "integrity" "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA=="
resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" "resolved" "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz"
integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== "version" "2.0.1"
dependencies: dependencies:
balanced-match "^1.0.0" "balanced-match" "^1.0.0"
charenc@0.0.2: "charenc@0.0.2":
version "0.0.2" "integrity" "sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA=="
resolved "https://registry.yarnpkg.com/charenc/-/charenc-0.0.2.tgz#c0a1d2f3a7092e03774bfa83f14c0fc5790a8667" "resolved" "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz"
integrity sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA== "version" "0.0.2"
combined-stream@^1.0.8: "combined-stream@^1.0.8":
version "1.0.8" "integrity" "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg=="
resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" "resolved" "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz"
integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== "version" "1.0.8"
dependencies: dependencies:
delayed-stream "~1.0.0" "delayed-stream" "~1.0.0"
create-require@^1.1.0: "create-require@^1.1.0":
version "1.1.1" "integrity" "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ=="
resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" "resolved" "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz"
integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== "version" "1.1.1"
crypt@0.0.2: "crypt@0.0.2":
version "0.0.2" "integrity" "sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow=="
resolved "https://registry.yarnpkg.com/crypt/-/crypt-0.0.2.tgz#88d7ff7ec0dfb86f713dc87bbb42d044d3e6c41b" "resolved" "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz"
integrity sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow== "version" "0.0.2"
delayed-stream@~1.0.0: "delayed-stream@~1.0.0":
version "1.0.0" "integrity" "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ=="
resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" "resolved" "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz"
integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== "version" "1.0.0"
deprecation@^2.0.0, deprecation@^2.3.1: "deprecation@^2.0.0", "deprecation@^2.3.1":
version "2.3.1" "integrity" "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ=="
resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" "resolved" "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz"
integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ== "version" "2.3.1"
diff@^4.0.1: "diff@^4.0.1":
version "4.0.2" "integrity" "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A=="
resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" "resolved" "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz"
integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== "version" "4.0.2"
digest-fetch@^1.3.0: "digest-fetch@^1.3.0":
version "1.3.0" "integrity" "sha512-CGJuv6iKNM7QyZlM2T3sPAdZWd/p9zQiRNS9G+9COUCwzWFTs0Xp8NF5iePx7wtvhDykReiRRrSeNb4oMmB8lA=="
resolved "https://registry.yarnpkg.com/digest-fetch/-/digest-fetch-1.3.0.tgz#898e69264d00012a23cf26e8a3e40320143fc661" "resolved" "https://registry.npmjs.org/digest-fetch/-/digest-fetch-1.3.0.tgz"
integrity sha512-CGJuv6iKNM7QyZlM2T3sPAdZWd/p9zQiRNS9G+9COUCwzWFTs0Xp8NF5iePx7wtvhDykReiRRrSeNb4oMmB8lA== "version" "1.3.0"
dependencies: dependencies:
base-64 "^0.1.0" "base-64" "^0.1.0"
md5 "^2.3.0" "md5" "^2.3.0"
event-target-shim@^5.0.0: "event-target-shim@^5.0.0":
version "5.0.1" "integrity" "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ=="
resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" "resolved" "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz"
integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== "version" "5.0.1"
form-data-encoder@1.7.2: "form-data-encoder@1.7.2":
version "1.7.2" "integrity" "sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A=="
resolved "https://registry.yarnpkg.com/form-data-encoder/-/form-data-encoder-1.7.2.tgz#1f1ae3dccf58ed4690b86d87e4f57c654fbab040" "resolved" "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-1.7.2.tgz"
integrity sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A== "version" "1.7.2"
form-data@^4.0.0: "form-data@^4.0.0":
version "4.0.0" "integrity" "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww=="
resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" "resolved" "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz"
integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== "version" "4.0.0"
dependencies: dependencies:
asynckit "^0.4.0" "asynckit" "^0.4.0"
combined-stream "^1.0.8" "combined-stream" "^1.0.8"
mime-types "^2.1.12" "mime-types" "^2.1.12"
formdata-node@^4.3.2: "formdata-node@^4.3.2":
version "4.4.1" "integrity" "sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ=="
resolved "https://registry.yarnpkg.com/formdata-node/-/formdata-node-4.4.1.tgz#23f6a5cb9cb55315912cbec4ff7b0f59bbd191e2" "resolved" "https://registry.npmjs.org/formdata-node/-/formdata-node-4.4.1.tgz"
integrity sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ== "version" "4.4.1"
dependencies: dependencies:
node-domexception "1.0.0" "node-domexception" "1.0.0"
web-streams-polyfill "4.0.0-beta.3" "web-streams-polyfill" "4.0.0-beta.3"
humanize-ms@^1.2.1: "humanize-ms@^1.2.1":
version "1.2.1" "integrity" "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ=="
resolved "https://registry.yarnpkg.com/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" "resolved" "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz"
integrity sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ== "version" "1.2.1"
dependencies: dependencies:
ms "^2.0.0" "ms" "^2.0.0"
is-buffer@~1.1.6: "is-buffer@~1.1.6":
version "1.1.6" "integrity" "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w=="
resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" "resolved" "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz"
integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== "version" "1.1.6"
is-plain-object@^5.0.0: "is-plain-object@^5.0.0":
version "5.0.0" "integrity" "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q=="
resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" "resolved" "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz"
integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== "version" "5.0.0"
make-error@^1.1.1: "make-error@^1.1.1":
version "1.3.6" "integrity" "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw=="
resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" "resolved" "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz"
integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== "version" "1.3.6"
md5@^2.3.0: "md5@^2.3.0":
version "2.3.0" "integrity" "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g=="
resolved "https://registry.yarnpkg.com/md5/-/md5-2.3.0.tgz#c3da9a6aae3a30b46b7b0c349b87b110dc3bda4f" "resolved" "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz"
integrity sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g== "version" "2.3.0"
dependencies: dependencies:
charenc "0.0.2" "charenc" "0.0.2"
crypt "0.0.2" "crypt" "0.0.2"
is-buffer "~1.1.6" "is-buffer" "~1.1.6"
mime-db@1.52.0: "mime-db@1.52.0":
version "1.52.0" "integrity" "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg=="
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" "resolved" "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz"
integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== "version" "1.52.0"
mime-types@^2.1.12: "mime-types@^2.1.12":
version "2.1.35" "integrity" "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw=="
resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" "resolved" "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz"
integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== "version" "2.1.35"
dependencies: dependencies:
mime-db "1.52.0" "mime-db" "1.52.0"
minimatch@^7.4.2: "minimatch@^7.4.2":
version "7.4.2" "integrity" "sha512-xy4q7wou3vUoC9k1xGTXc+awNdGaGVHtFUaey8tiX4H1QRc04DZ/rmDFwNm2EBsuYEhAZ6SgMmYf3InGY6OauA=="
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-7.4.2.tgz#157e847d79ca671054253b840656720cb733f10f" "resolved" "https://registry.npmjs.org/minimatch/-/minimatch-7.4.2.tgz"
integrity sha512-xy4q7wou3vUoC9k1xGTXc+awNdGaGVHtFUaey8tiX4H1QRc04DZ/rmDFwNm2EBsuYEhAZ6SgMmYf3InGY6OauA== "version" "7.4.2"
dependencies: dependencies:
brace-expansion "^2.0.1" "brace-expansion" "^2.0.1"
ms@^2.0.0: "ms@^2.0.0":
version "2.1.3" "integrity" "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" "resolved" "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz"
integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== "version" "2.1.3"
node-domexception@1.0.0: "node-domexception@1.0.0":
version "1.0.0" "integrity" "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ=="
resolved "https://registry.yarnpkg.com/node-domexception/-/node-domexception-1.0.0.tgz#6888db46a1f71c0b76b3f7555016b63fe64766e5" "resolved" "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz"
integrity sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ== "version" "1.0.0"
node-fetch@^2.6.7: "node-fetch@^2.6.7":
version "2.6.9" "integrity" "sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg=="
resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.9.tgz#7c7f744b5cc6eb5fd404e0c7a9fec630a55657e6" "resolved" "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.9.tgz"
integrity sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg== "version" "2.6.9"
dependencies: dependencies:
whatwg-url "^5.0.0" "whatwg-url" "^5.0.0"
once@^1.4.0: "once@^1.4.0":
version "1.4.0" "integrity" "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w=="
resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" "resolved" "https://registry.npmjs.org/once/-/once-1.4.0.tgz"
integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== "version" "1.4.0"
dependencies: dependencies:
wrappy "1" "wrappy" "1"
openai@^4.20.1: "openai@^4.20.1":
version "4.20.1" "integrity" "sha512-Dd3q8EvINfganZFtg6V36HjrMaihqRgIcKiHua4Nq9aw/PxOP48dhbsk8x5klrxajt5Lpnc1KTOG5i1S6BKAJA=="
resolved "https://registry.yarnpkg.com/openai/-/openai-4.20.1.tgz#afa0d496d125b5a0f6cebcb4b9aeabf71e00214e" "resolved" "https://registry.npmjs.org/openai/-/openai-4.20.1.tgz"
integrity sha512-Dd3q8EvINfganZFtg6V36HjrMaihqRgIcKiHua4Nq9aw/PxOP48dhbsk8x5klrxajt5Lpnc1KTOG5i1S6BKAJA== "version" "4.20.1"
dependencies: dependencies:
"@types/node" "^18.11.18" "@types/node" "^18.11.18"
"@types/node-fetch" "^2.6.4" "@types/node-fetch" "^2.6.4"
abort-controller "^3.0.0" "abort-controller" "^3.0.0"
agentkeepalive "^4.2.1" "agentkeepalive" "^4.2.1"
digest-fetch "^1.3.0" "digest-fetch" "^1.3.0"
form-data-encoder "1.7.2" "form-data-encoder" "1.7.2"
formdata-node "^4.3.2" "formdata-node" "^4.3.2"
node-fetch "^2.6.7" "node-fetch" "^2.6.7"
web-streams-polyfill "^3.2.1" "web-streams-polyfill" "^3.2.1"
parse-diff@^0.11.1: "parse-diff@^0.11.1":
version "0.11.1" "integrity" "sha512-Oq4j8LAOPOcssanQkIjxosjATBIEJhCxMCxPhMu+Ci4wdNmAEdx0O+a7gzbR2PyKXgKPvRLIN5g224+dJAsKHA=="
resolved "https://registry.yarnpkg.com/parse-diff/-/parse-diff-0.11.1.tgz#d93ca2d225abed280782bccb1476711ca9dd84f0" "resolved" "https://registry.npmjs.org/parse-diff/-/parse-diff-0.11.1.tgz"
integrity sha512-Oq4j8LAOPOcssanQkIjxosjATBIEJhCxMCxPhMu+Ci4wdNmAEdx0O+a7gzbR2PyKXgKPvRLIN5g224+dJAsKHA== "version" "0.11.1"
prettier@^2.8.6: "prettier@^2.8.6":
version "2.8.6" "integrity" "sha512-mtuzdiBbHwPEgl7NxWlqOkithPyp4VN93V7VeHVWBF+ad3I5avc0RVDT4oImXQy9H/AqxA2NSQH8pSxHW6FYbQ=="
resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.6.tgz#5c174b29befd507f14b83e3c19f83fdc0e974b71" "resolved" "https://registry.npmjs.org/prettier/-/prettier-2.8.6.tgz"
integrity sha512-mtuzdiBbHwPEgl7NxWlqOkithPyp4VN93V7VeHVWBF+ad3I5avc0RVDT4oImXQy9H/AqxA2NSQH8pSxHW6FYbQ== "version" "2.8.6"
tr46@~0.0.3: "tr46@~0.0.3":
version "0.0.3" "integrity" "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="
resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" "resolved" "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz"
integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== "version" "0.0.3"
ts-node@^10.9.1: "ts-node@^10.9.1":
version "10.9.1" "integrity" "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw=="
resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.1.tgz#e73de9102958af9e1f0b168a6ff320e25adcff4b" "resolved" "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz"
integrity sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw== "version" "10.9.1"
dependencies: dependencies:
"@cspotcode/source-map-support" "^0.8.0" "@cspotcode/source-map-support" "^0.8.0"
"@tsconfig/node10" "^1.0.7" "@tsconfig/node10" "^1.0.7"
"@tsconfig/node12" "^1.0.7" "@tsconfig/node12" "^1.0.7"
"@tsconfig/node14" "^1.0.0" "@tsconfig/node14" "^1.0.0"
"@tsconfig/node16" "^1.0.2" "@tsconfig/node16" "^1.0.2"
acorn "^8.4.1" "acorn" "^8.4.1"
acorn-walk "^8.1.1" "acorn-walk" "^8.1.1"
arg "^4.1.0" "arg" "^4.1.0"
create-require "^1.1.0" "create-require" "^1.1.0"
diff "^4.0.1" "diff" "^4.0.1"
make-error "^1.1.1" "make-error" "^1.1.1"
v8-compile-cache-lib "^3.0.1" "v8-compile-cache-lib" "^3.0.1"
yn "3.1.1" "yn" "3.1.1"
tunnel@^0.0.6: "tunnel@^0.0.6":
version "0.0.6" "integrity" "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg=="
resolved "https://registry.yarnpkg.com/tunnel/-/tunnel-0.0.6.tgz#72f1314b34a5b192db012324df2cc587ca47f92c" "resolved" "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz"
integrity sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg== "version" "0.0.6"
typescript@^5.0.2: "typescript@^5.0.2", "typescript@>=2.7":
version "5.0.2" "integrity" "sha512-wVORMBGO/FAs/++blGNeAVdbNKtIh1rbBL2EyQ1+J9lClJ93KiiKe8PmFIVdXhHcyv44SL9oglmfeSsndo0jRw=="
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.0.2.tgz#891e1a90c5189d8506af64b9ef929fca99ba1ee5" "resolved" "https://registry.npmjs.org/typescript/-/typescript-5.0.2.tgz"
integrity sha512-wVORMBGO/FAs/++blGNeAVdbNKtIh1rbBL2EyQ1+J9lClJ93KiiKe8PmFIVdXhHcyv44SL9oglmfeSsndo0jRw== "version" "5.0.2"
undici-types@~5.26.4: "universal-user-agent@^6.0.0":
version "5.26.5" "integrity" "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w=="
resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" "resolved" "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz"
integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== "version" "6.0.0"
universal-user-agent@^6.0.0: "uuid@^8.3.2":
version "6.0.0" "integrity" "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg=="
resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee" "resolved" "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz"
integrity sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w== "version" "8.3.2"
uuid@^8.3.2: "v8-compile-cache-lib@^3.0.1":
version "8.3.2" "integrity" "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg=="
resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" "resolved" "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz"
integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== "version" "3.0.1"
v8-compile-cache-lib@^3.0.1: "web-streams-polyfill@^3.2.1":
version "3.0.1" "integrity" "sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q=="
resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" "resolved" "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz"
integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== "version" "3.2.1"
web-streams-polyfill@4.0.0-beta.3: "web-streams-polyfill@4.0.0-beta.3":
version "4.0.0-beta.3" "integrity" "sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug=="
resolved "https://registry.yarnpkg.com/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz#2898486b74f5156095e473efe989dcf185047a38" "resolved" "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz"
integrity sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug== "version" "4.0.0-beta.3"
web-streams-polyfill@^3.2.1: "webidl-conversions@^3.0.0":
version "3.2.1" "integrity" "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ=="
resolved "https://registry.yarnpkg.com/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz#71c2718c52b45fd49dbeee88634b3a60ceab42a6" "resolved" "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz"
integrity sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q== "version" "3.0.1"
webidl-conversions@^3.0.0: "whatwg-url@^5.0.0":
version "3.0.1" "integrity" "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw=="
resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" "resolved" "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz"
integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== "version" "5.0.0"
whatwg-url@^5.0.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d"
integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==
dependencies: dependencies:
tr46 "~0.0.3" "tr46" "~0.0.3"
webidl-conversions "^3.0.0" "webidl-conversions" "^3.0.0"
wrappy@1: "wrappy@1":
version "1.0.2" "integrity" "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" "resolved" "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz"
integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== "version" "1.0.2"
yn@3.1.1: "yn@3.1.1":
version "3.1.1" "integrity" "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q=="
resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" "resolved" "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz"
integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== "version" "3.1.1"