Compare commits

...

27 Commits

Author SHA1 Message Date
Jonathan
ce72a192ce dist update 2025-02-20 01:01:49 +00:00
Jonathan
e8c4388972 fixes some dependencies with vulnerabilities 2025-02-20 00:58:28 +00:00
Tara Nelson
f5473ace9a Merge pull request #595 from actions/dependabot/npm_and_yarn/typescript-5.5.2
build(deps-dev): bump typescript from 5.4.5 to 5.5.2
2024-06-26 22:04:17 +00:00
Tara Nelson
1015d0b51c Merge pull request #598 from actions/dependabot/npm_and_yarn/typescript-5.5.2-fixes
Resolve Regular Expression syntax checking errors
2024-06-26 15:02:24 -07:00
Tara Nelson
ed5d5cfea4 Build and package 2024-06-26 21:57:50 +00:00
Tara Nelson
b819e14051 Merge pull request #593 from actions/dependabot/npm_and_yarn/eslint-plugin-github-5.0.1
build(deps-dev): bump eslint-plugin-github from 4.10.2 to 5.0.1
2024-06-26 20:40:36 +00:00
dependabot[bot]
9dd28476f5 build(deps-dev): bump typescript from 5.4.5 to 5.5.2
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.4.5 to 5.5.2.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v5.4.5...v5.5.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-26 20:38:18 +00:00
Tara Nelson
35c112b03f Merge pull request #594 from actions/dependabot/npm_and_yarn/prettier-3.3.2
build(deps-dev): bump prettier from 3.2.5 to 3.3.2
2024-06-26 20:36:55 +00:00
Tara Nelson
b004f407ad Merge pull request #596 from actions/talune/readme-PAT
Update instructions for fine grained PAT
2024-06-25 14:21:38 -07:00
Tara Nelson
b8cb126311 Update instructions for fine grained PAT 2024-06-25 14:19:59 -07:00
dependabot[bot]
896ffc63ec build(deps-dev): bump prettier from 3.2.5 to 3.3.2
Bumps [prettier](https://github.com/prettier/prettier) from 3.2.5 to 3.3.2.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/3.2.5...3.3.2)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-25 13:25:15 +00:00
dependabot[bot]
e73698e2a7 build(deps-dev): bump eslint-plugin-github from 4.10.2 to 5.0.1
Bumps [eslint-plugin-github](https://github.com/github/eslint-plugin-github) from 4.10.2 to 5.0.1.
- [Release notes](https://github.com/github/eslint-plugin-github/releases)
- [Commits](https://github.com/github/eslint-plugin-github/compare/v4.10.2...v5.0.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-github
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-25 13:25:09 +00:00
Tara Nelson
244f685bbc Merge pull request #591 from actions/dependabot/npm_and_yarn/eslint-plugin-jest-28.6.0-fixes
Dependabot/npm and yarn/eslint plugin jest 28.6.0 fixes
2024-06-24 13:59:09 -07:00
Tara Nelson
2a5ef71e5f Build and package 2024-06-24 20:56:47 +00:00
Tara Nelson
8c1146182d Update license for json-schema.dep.yml 2024-06-24 20:55:39 +00:00
Tara Nelson
66f6cffea1 Merge pull request #578 from actions/dependabot/npm_and_yarn/eslint-plugin-jest-28.6.0
build(deps-dev): bump eslint-plugin-jest from 27.9.0 to 28.6.0
2024-06-24 20:31:17 +00:00
Tara Nelson
ddf5099c7c Merge pull request #590 from actions/dependabot/npm_and_yarn/typescript-eslint/eslint-plugin-7.14.1
build(deps-dev): bump @typescript-eslint/eslint-plugin from 7.6.0 to 7.14.1
2024-06-24 20:10:51 +00:00
dependabot[bot]
da1ae5b4fd build(deps-dev): bump @typescript-eslint/eslint-plugin
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 7.6.0 to 7.14.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.14.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-24 20:09:21 +00:00
Tara Nelson
ced87c7078 Merge pull request #589 from actions/dependabot/npm_and_yarn/typescript-eslint/parser-7.14.1
build(deps-dev): bump @typescript-eslint/parser from 7.6.0 to 7.14.1
2024-06-24 20:07:57 +00:00
Tara Nelson
c78e6a180b Merge pull request #582 from actions/dependabot/npm_and_yarn/ts-jest-29.1.5
build(deps-dev): bump ts-jest from 29.1.2 to 29.1.5
2024-06-24 20:06:46 +00:00
dependabot[bot]
267a19fd1e build(deps-dev): bump @typescript-eslint/parser from 7.6.0 to 7.14.1
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.6.0 to 7.14.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.14.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-24 20:05:46 +00:00
Tara Nelson
e005a862c6 Merge pull request #588 from actions/dependabot/npm_and_yarn/types/node-16.18.101
build(deps-dev): bump @types/node from 16.18.96 to 16.18.101
2024-06-24 20:04:14 +00:00
dependabot[bot]
d5b3ce6ad5 build(deps-dev): bump @types/node from 16.18.96 to 16.18.101
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 16.18.96 to 16.18.101.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-21 13:42:25 +00:00
Jonathan
fa4a4f2866 Merge pull request #583 from actions/dependabot/npm_and_yarn/braces-3.0.3
build(deps-dev): bump braces from 3.0.2 to 3.0.3
2024-06-18 17:11:39 +00:00
dependabot[bot]
7804f34bc2 build(deps-dev): bump braces from 3.0.2 to 3.0.3
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-18 00:38:10 +00:00
dependabot[bot]
02edc768b2 build(deps-dev): bump ts-jest from 29.1.2 to 29.1.5
Bumps [ts-jest](https://github.com/kulshekhar/ts-jest) from 29.1.2 to 29.1.5.
- [Release notes](https://github.com/kulshekhar/ts-jest/releases)
- [Changelog](https://github.com/kulshekhar/ts-jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/kulshekhar/ts-jest/compare/v29.1.2...v29.1.5)

---
updated-dependencies:
- dependency-name: ts-jest
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-17 13:07:24 +00:00
dependabot[bot]
35b38bc9ba build(deps-dev): bump eslint-plugin-jest from 27.9.0 to 28.6.0
Bumps [eslint-plugin-jest](https://github.com/jest-community/eslint-plugin-jest) from 27.9.0 to 28.6.0.
- [Release notes](https://github.com/jest-community/eslint-plugin-jest/releases)
- [Changelog](https://github.com/jest-community/eslint-plugin-jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jest-community/eslint-plugin-jest/compare/v27.9.0...v28.6.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-jest
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-07 13:31:36 +00:00
7 changed files with 791 additions and 761 deletions

32
.licenses/npm/@types/json-schema.dep.yml generated Normal file
View File

@@ -0,0 +1,32 @@
---
name: '@types/json-schema'
version: 7.0.15
type: npm
summary: TypeScript definitions for json-schema
homepage: https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/json-schema
license: mit
licenses:
- sources: LICENSE
text: |2
MIT License
Copyright (c) Microsoft Corporation.
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
notices: []

View File

@@ -136,9 +136,10 @@ Using these events ensure that a given issue or pull request, in the workflow's
## Creating a PAT and adding it to your repository ## Creating a PAT and adding it to your repository
- create a new [personal access - Create a new [personal access token](https://github.com/settings/tokens/new). _See [Creating a personal access token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token) for more information_
token](https://github.com/settings/tokens/new) with `project` scope. For private repos you will also need `repo` scope. For fine-grained access tokens, you will need to add the organization projects permission, and the repository issues and pull requests permissions.
_See [Creating a personal access token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token) for more information_ - For **Tokens (classic)** include the `project` scope; for private repos you will also need `repo` scope.
- For **Fine-grained tokens**, you must first select the appropriate _owner_ and associated _repositories_. Then select _Organization permissions -> `projects` `read & write`_, and _Repository permissions -> `issues` `read-only`_ and _`pull requests` `read-only`_.
- add the newly created PAT as a repository secret, this secret will be referenced by the [github-token input](#github-token) - add the newly created PAT as a repository secret, this secret will be referenced by the [github-token input](#github-token)
_See [Encrypted secrets](https://docs.github.com/en/actions/security-guides/encrypted-secrets#creating-encrypted-secrets-for-a-repository) for more information_ _See [Encrypted secrets](https://docs.github.com/en/actions/security-guides/encrypted-secrets#creating-encrypted-secrets-for-a-repository) for more information_

209
dist/index.js generated vendored
View File

@@ -29,105 +29,96 @@ var __importStar = (this && this.__importStar) || function (mod) {
__setModuleDefault(result, mod); __setModuleDefault(result, mod);
return result; 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());
});
};
Object.defineProperty(exports, "__esModule", ({ value: true })); Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.mustGetOwnerTypeQuery = exports.addToProject = void 0; exports.addToProject = addToProject;
exports.mustGetOwnerTypeQuery = mustGetOwnerTypeQuery;
const core = __importStar(__nccwpck_require__(2186)); const core = __importStar(__nccwpck_require__(2186));
const github = __importStar(__nccwpck_require__(5438)); const github = __importStar(__nccwpck_require__(5438));
const urlParse = /\/(?<ownerType>orgs|users)\/(?<ownerName>[^/]+)\/projects\/(?<projectNumber>\d+)/; const urlParse = /\/(?<ownerType>orgs|users)\/(?<ownerName>[^/]+)\/projects\/(?<projectNumber>\d+)/;
function addToProject() { async function addToProject() {
return __awaiter(this, void 0, void 0, function* () { var _a, _b, _c, _d, _e, _f, _g, _h, _j;
var _a, _b, _c, _d, _e, _f, _g, _h, _j; const projectUrl = core.getInput('project-url', { required: true });
const projectUrl = core.getInput('project-url', { required: true }); const ghToken = core.getInput('github-token', { required: true });
const ghToken = core.getInput('github-token', { required: true }); const labeled = (_a = core
const labeled = (_a = core .getInput('labeled')
.getInput('labeled') .split(',')
.split(',') .map(l => l.trim().toLowerCase())
.map(l => l.trim().toLowerCase()) .filter(l => l.length > 0)) !== null && _a !== void 0 ? _a : [];
.filter(l => l.length > 0)) !== null && _a !== void 0 ? _a : []; const labelOperator = core.getInput('label-operator').trim().toLocaleLowerCase();
const labelOperator = core.getInput('label-operator').trim().toLocaleLowerCase(); const octokit = github.getOctokit(ghToken);
const octokit = github.getOctokit(ghToken); const issue = (_b = github.context.payload.issue) !== null && _b !== void 0 ? _b : github.context.payload.pull_request;
const issue = (_b = github.context.payload.issue) !== null && _b !== void 0 ? _b : github.context.payload.pull_request; const issueLabels = ((_c = issue === null || issue === void 0 ? void 0 : issue.labels) !== null && _c !== void 0 ? _c : []).map((l) => l.name.toLowerCase());
const issueLabels = ((_c = issue === null || issue === void 0 ? void 0 : issue.labels) !== null && _c !== void 0 ? _c : []).map((l) => l.name.toLowerCase()); const issueOwnerName = (_d = github.context.payload.repository) === null || _d === void 0 ? void 0 : _d.owner.login;
const issueOwnerName = (_d = github.context.payload.repository) === null || _d === void 0 ? void 0 : _d.owner.login; core.debug(`Issue/PR owner: ${issueOwnerName}`);
core.debug(`Issue/PR owner: ${issueOwnerName}`); core.debug(`Issue/PR labels: ${issueLabels.join(', ')}`);
core.debug(`Issue/PR labels: ${issueLabels.join(', ')}`); // Ensure the issue matches our `labeled` filter based on the label-operator.
// Ensure the issue matches our `labeled` filter based on the label-operator. if (labelOperator === 'and') {
if (labelOperator === 'and') { if (!labeled.every(l => issueLabels.includes(l))) {
if (!labeled.every(l => issueLabels.includes(l))) { core.info(`Skipping issue ${issue === null || issue === void 0 ? void 0 : issue.number} because it doesn't match all the labels: ${labeled.join(', ')}`);
core.info(`Skipping issue ${issue === null || issue === void 0 ? void 0 : issue.number} because it doesn't match all the labels: ${labeled.join(', ')}`); return;
return;
}
} }
else if (labelOperator === 'not') { }
if (labeled.length > 0 && issueLabels.some(l => labeled.includes(l))) { else if (labelOperator === 'not') {
core.info(`Skipping issue ${issue === null || issue === void 0 ? void 0 : issue.number} because it contains one of the labels: ${labeled.join(', ')}`); if (labeled.length > 0 && issueLabels.some(l => labeled.includes(l))) {
return; core.info(`Skipping issue ${issue === null || issue === void 0 ? void 0 : issue.number} because it contains one of the labels: ${labeled.join(', ')}`);
} return;
} }
else { }
if (labeled.length > 0 && !issueLabels.some(l => labeled.includes(l))) { else {
core.info(`Skipping issue ${issue === null || issue === void 0 ? void 0 : issue.number} because it does not have one of the labels: ${labeled.join(', ')}`); if (labeled.length > 0 && !issueLabels.some(l => labeled.includes(l))) {
return; core.info(`Skipping issue ${issue === null || issue === void 0 ? void 0 : issue.number} because it does not have one of the labels: ${labeled.join(', ')}`);
} return;
} }
core.debug(`Project URL: ${projectUrl}`); }
const urlMatch = projectUrl.match(urlParse); core.debug(`Project URL: ${projectUrl}`);
if (!urlMatch) { const urlMatch = projectUrl.match(urlParse);
throw new Error(`Invalid project URL: ${projectUrl}. Project URL should match the format <GitHub server domain name>/<orgs-or-users>/<ownerName>/projects/<projectNumber>`); if (!urlMatch) {
} throw new Error(`Invalid project URL: ${projectUrl}. Project URL should match the format <GitHub server domain name>/<orgs-or-users>/<ownerName>/projects/<projectNumber>`);
const projectOwnerName = (_e = urlMatch.groups) === null || _e === void 0 ? void 0 : _e.ownerName; }
const projectNumber = parseInt((_g = (_f = urlMatch.groups) === null || _f === void 0 ? void 0 : _f.projectNumber) !== null && _g !== void 0 ? _g : '', 10); const projectOwnerName = (_e = urlMatch.groups) === null || _e === void 0 ? void 0 : _e.ownerName;
const ownerType = (_h = urlMatch.groups) === null || _h === void 0 ? void 0 : _h.ownerType; const projectNumber = parseInt((_g = (_f = urlMatch.groups) === null || _f === void 0 ? void 0 : _f.projectNumber) !== null && _g !== void 0 ? _g : '', 10);
const ownerTypeQuery = mustGetOwnerTypeQuery(ownerType); const ownerType = (_h = urlMatch.groups) === null || _h === void 0 ? void 0 : _h.ownerType;
core.debug(`Project owner: ${projectOwnerName}`); const ownerTypeQuery = mustGetOwnerTypeQuery(ownerType);
core.debug(`Project number: ${projectNumber}`); core.debug(`Project owner: ${projectOwnerName}`);
core.debug(`Project owner type: ${ownerType}`); core.debug(`Project number: ${projectNumber}`);
// First, use the GraphQL API to request the project's node ID. core.debug(`Project owner type: ${ownerType}`);
const idResp = yield octokit.graphql(`query getProject($projectOwnerName: String!, $projectNumber: Int!) { // First, use the GraphQL API to request the project's node ID.
const idResp = await octokit.graphql(`query getProject($projectOwnerName: String!, $projectNumber: Int!) {
${ownerTypeQuery}(login: $projectOwnerName) { ${ownerTypeQuery}(login: $projectOwnerName) {
projectV2(number: $projectNumber) { projectV2(number: $projectNumber) {
id id
} }
} }
}`, { }`, {
projectOwnerName, projectOwnerName,
projectNumber, projectNumber,
}); });
const projectId = (_j = idResp[ownerTypeQuery]) === null || _j === void 0 ? void 0 : _j.projectV2.id; const projectId = (_j = idResp[ownerTypeQuery]) === null || _j === void 0 ? void 0 : _j.projectV2.id;
const contentId = issue === null || issue === void 0 ? void 0 : issue.node_id; const contentId = issue === null || issue === void 0 ? void 0 : issue.node_id;
core.debug(`Project node ID: ${projectId}`); core.debug(`Project node ID: ${projectId}`);
core.debug(`Content ID: ${contentId}`); core.debug(`Content ID: ${contentId}`);
// Next, use the GraphQL API to add the issue to the project. // Next, use the GraphQL API to add the issue to the project.
// If the issue has the same owner as the project, we can directly // If the issue has the same owner as the project, we can directly
// add a project item. Otherwise, we add a draft issue. // add a project item. Otherwise, we add a draft issue.
if (issueOwnerName === projectOwnerName) { if (issueOwnerName === projectOwnerName) {
core.info('Creating project item'); core.info('Creating project item');
const addResp = yield octokit.graphql(`mutation addIssueToProject($input: AddProjectV2ItemByIdInput!) { const addResp = await octokit.graphql(`mutation addIssueToProject($input: AddProjectV2ItemByIdInput!) {
addProjectV2ItemById(input: $input) { addProjectV2ItemById(input: $input) {
item { item {
id id
} }
} }
}`, { }`, {
input: { input: {
projectId, projectId,
contentId, contentId,
}, },
}); });
core.setOutput('itemId', addResp.addProjectV2ItemById.item.id); core.setOutput('itemId', addResp.addProjectV2ItemById.item.id);
} }
else { else {
core.info('Creating draft issue in project'); core.info('Creating draft issue in project');
const addResp = yield octokit.graphql(`mutation addDraftIssueToProject($projectId: ID!, $title: String!) { const addResp = await octokit.graphql(`mutation addDraftIssueToProject($projectId: ID!, $title: String!) {
addProjectV2DraftIssue(input: { addProjectV2DraftIssue(input: {
projectId: $projectId, projectId: $projectId,
title: $title title: $title
@@ -137,14 +128,12 @@ function addToProject() {
} }
} }
}`, { }`, {
projectId, projectId,
title: issue === null || issue === void 0 ? void 0 : issue.html_url, title: issue === null || issue === void 0 ? void 0 : issue.html_url,
}); });
core.setOutput('itemId', addResp.addProjectV2DraftIssue.projectItem.id); core.setOutput('itemId', addResp.addProjectV2DraftIssue.projectItem.id);
} }
});
} }
exports.addToProject = addToProject;
function mustGetOwnerTypeQuery(ownerType) { function mustGetOwnerTypeQuery(ownerType) {
const ownerTypeQuery = ownerType === 'orgs' ? 'organization' : ownerType === 'users' ? 'user' : null; const ownerTypeQuery = ownerType === 'orgs' ? 'organization' : ownerType === 'users' ? 'user' : null;
if (!ownerTypeQuery) { if (!ownerTypeQuery) {
@@ -152,7 +141,6 @@ function mustGetOwnerTypeQuery(ownerType) {
} }
return ownerTypeQuery; return ownerTypeQuery;
} }
exports.mustGetOwnerTypeQuery = mustGetOwnerTypeQuery;
/***/ }), /***/ }),
@@ -2403,7 +2391,7 @@ var import_graphql = __nccwpck_require__(8467);
var import_auth_token = __nccwpck_require__(334); var import_auth_token = __nccwpck_require__(334);
// pkg/dist-src/version.js // pkg/dist-src/version.js
var VERSION = "5.1.0"; var VERSION = "5.2.0";
// pkg/dist-src/index.js // pkg/dist-src/index.js
var noop = () => { var noop = () => {
@@ -2570,7 +2558,7 @@ module.exports = __toCommonJS(dist_src_exports);
var import_universal_user_agent = __nccwpck_require__(5030); var import_universal_user_agent = __nccwpck_require__(5030);
// pkg/dist-src/version.js // pkg/dist-src/version.js
var VERSION = "9.0.4"; var VERSION = "9.0.6";
// pkg/dist-src/defaults.js // pkg/dist-src/defaults.js
var userAgent = `octokit-endpoint.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}`; var userAgent = `octokit-endpoint.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}`;
@@ -2675,9 +2663,9 @@ function addQueryParameters(url, parameters) {
} }
// pkg/dist-src/util/extract-url-variable-names.js // pkg/dist-src/util/extract-url-variable-names.js
var urlVariableRegex = /\{[^}]+\}/g; var urlVariableRegex = /\{[^{}}]+\}/g;
function removeNonChars(variableName) { function removeNonChars(variableName) {
return variableName.replace(/^\W+|\W+$/g, "").split(/,/); return variableName.replace(/(?:^\W+)|(?:(?<!\W)\W+$)/g, "").split(/,/);
} }
function extractUrlVariableNames(url) { function extractUrlVariableNames(url) {
const matches = url.match(urlVariableRegex); const matches = url.match(urlVariableRegex);
@@ -2863,7 +2851,7 @@ function parse(options) {
} }
if (url.endsWith("/graphql")) { if (url.endsWith("/graphql")) {
if (options.mediaType.previews?.length) { if (options.mediaType.previews?.length) {
const previewsFromAcceptHeader = headers.accept.match(/[\w-]+(?=-preview)/g) || []; const previewsFromAcceptHeader = headers.accept.match(/(?<![\w-])[\w-]+(?=-preview)/g) || [];
headers.accept = previewsFromAcceptHeader.concat(options.mediaType.previews).map((preview) => { headers.accept = previewsFromAcceptHeader.concat(options.mediaType.previews).map((preview) => {
const format = options.mediaType.format ? `.${options.mediaType.format}` : "+json"; const format = options.mediaType.format ? `.${options.mediaType.format}` : "+json";
return `application/vnd.github.${preview}-preview${format}`; return `application/vnd.github.${preview}-preview${format}`;
@@ -2955,7 +2943,7 @@ var import_request3 = __nccwpck_require__(6234);
var import_universal_user_agent = __nccwpck_require__(5030); var import_universal_user_agent = __nccwpck_require__(5030);
// pkg/dist-src/version.js // pkg/dist-src/version.js
var VERSION = "7.0.2"; var VERSION = "7.1.0";
// pkg/dist-src/with-defaults.js // pkg/dist-src/with-defaults.js
var import_request2 = __nccwpck_require__(6234); var import_request2 = __nccwpck_require__(6234);
@@ -3112,7 +3100,7 @@ __export(dist_src_exports, {
module.exports = __toCommonJS(dist_src_exports); module.exports = __toCommonJS(dist_src_exports);
// pkg/dist-src/version.js // pkg/dist-src/version.js
var VERSION = "9.2.1"; var VERSION = "9.2.2";
// pkg/dist-src/normalize-paginated-list-response.js // pkg/dist-src/normalize-paginated-list-response.js
function normalizePaginatedListResponse(response) { function normalizePaginatedListResponse(response) {
@@ -3160,7 +3148,7 @@ function iterator(octokit, route, parameters) {
const response = await requestMethod({ method, url, headers }); const response = await requestMethod({ method, url, headers });
const normalizedResponse = normalizePaginatedListResponse(response); const normalizedResponse = normalizePaginatedListResponse(response);
url = ((normalizedResponse.headers.link || "").match( url = ((normalizedResponse.headers.link || "").match(
/<([^>]+)>;\s*rel="next"/ /<([^<>]+)>;\s*rel="next"/
) || [])[1]; ) || [])[1];
return { value: normalizedResponse }; return { value: normalizedResponse };
} catch (error) { } catch (error) {
@@ -5712,7 +5700,7 @@ var RequestError = class extends Error {
if (options.request.headers.authorization) { if (options.request.headers.authorization) {
requestCopy.headers = Object.assign({}, options.request.headers, { requestCopy.headers = Object.assign({}, options.request.headers, {
authorization: options.request.headers.authorization.replace( authorization: options.request.headers.authorization.replace(
/ .*$/, /(?<! ) .*$/,
" [REDACTED]" " [REDACTED]"
) )
}); });
@@ -5780,7 +5768,7 @@ var import_endpoint = __nccwpck_require__(9440);
var import_universal_user_agent = __nccwpck_require__(5030); var import_universal_user_agent = __nccwpck_require__(5030);
// pkg/dist-src/version.js // pkg/dist-src/version.js
var VERSION = "8.2.0"; var VERSION = "8.4.1";
// pkg/dist-src/is-plain-object.js // pkg/dist-src/is-plain-object.js
function isPlainObject(value) { function isPlainObject(value) {
@@ -5805,7 +5793,7 @@ function getBufferResponse(response) {
// pkg/dist-src/fetch-wrapper.js // pkg/dist-src/fetch-wrapper.js
function fetchWrapper(requestOptions) { function fetchWrapper(requestOptions) {
var _a, _b, _c; var _a, _b, _c, _d;
const log = requestOptions.request && requestOptions.request.log ? requestOptions.request.log : console; const log = requestOptions.request && requestOptions.request.log ? requestOptions.request.log : console;
const parseSuccessResponseBody = ((_a = requestOptions.request) == null ? void 0 : _a.parseSuccessResponseBody) !== false; const parseSuccessResponseBody = ((_a = requestOptions.request) == null ? void 0 : _a.parseSuccessResponseBody) !== false;
if (isPlainObject(requestOptions.body) || Array.isArray(requestOptions.body)) { if (isPlainObject(requestOptions.body) || Array.isArray(requestOptions.body)) {
@@ -5826,8 +5814,9 @@ function fetchWrapper(requestOptions) {
return fetch(requestOptions.url, { return fetch(requestOptions.url, {
method: requestOptions.method, method: requestOptions.method,
body: requestOptions.body, body: requestOptions.body,
redirect: (_c = requestOptions.request) == null ? void 0 : _c.redirect,
headers: requestOptions.headers, headers: requestOptions.headers,
signal: (_c = requestOptions.request) == null ? void 0 : _c.signal, signal: (_d = requestOptions.request) == null ? void 0 : _d.signal,
// duplex must be set if request.body is ReadableStream or Async Iterables. // duplex must be set if request.body is ReadableStream or Async Iterables.
// See https://fetch.spec.whatwg.org/#dom-requestinit-duplex. // See https://fetch.spec.whatwg.org/#dom-requestinit-duplex.
...requestOptions.body && { duplex: "half" } ...requestOptions.body && { duplex: "half" }
@@ -5838,7 +5827,7 @@ function fetchWrapper(requestOptions) {
headers[keyAndValue[0]] = keyAndValue[1]; headers[keyAndValue[0]] = keyAndValue[1];
} }
if ("deprecation" in headers) { if ("deprecation" in headers) {
const matches = headers.link && headers.link.match(/<([^>]+)>; rel="deprecation"/); const matches = headers.link && headers.link.match(/<([^<>]+)>; rel="deprecation"/);
const deprecationLink = matches && matches.pop(); const deprecationLink = matches && matches.pop();
log.warn( log.warn(
`[@octokit/request] "${requestOptions.method} ${requestOptions.url}" is deprecated. It is scheduled to be removed on ${headers.sunset}${deprecationLink ? `. See ${deprecationLink}` : ""}` `[@octokit/request] "${requestOptions.method} ${requestOptions.url}" is deprecated. It is scheduled to be removed on ${headers.sunset}${deprecationLink ? `. See ${deprecationLink}` : ""}`
@@ -14574,6 +14563,14 @@ const { isUint8Array, isArrayBuffer } = __nccwpck_require__(9830)
const { File: UndiciFile } = __nccwpck_require__(8511) const { File: UndiciFile } = __nccwpck_require__(8511)
const { parseMIMEType, serializeAMimeType } = __nccwpck_require__(685) const { parseMIMEType, serializeAMimeType } = __nccwpck_require__(685)
let random
try {
const crypto = __nccwpck_require__(6005)
random = (max) => crypto.randomInt(0, max)
} catch {
random = (max) => Math.floor(Math.random(max))
}
let ReadableStream = globalThis.ReadableStream let ReadableStream = globalThis.ReadableStream
/** @type {globalThis['File']} */ /** @type {globalThis['File']} */
@@ -14659,7 +14656,7 @@ function extractBody (object, keepalive = false) {
// Set source to a copy of the bytes held by object. // Set source to a copy of the bytes held by object.
source = new Uint8Array(object.buffer.slice(object.byteOffset, object.byteOffset + object.byteLength)) source = new Uint8Array(object.buffer.slice(object.byteOffset, object.byteOffset + object.byteLength))
} else if (util.isFormDataLike(object)) { } else if (util.isFormDataLike(object)) {
const boundary = `----formdata-undici-0${`${Math.floor(Math.random() * 1e11)}`.padStart(11, '0')}` const boundary = `----formdata-undici-0${`${random(1e11)}`.padStart(11, '0')}`
const prefix = `--${boundary}\r\nContent-Disposition: form-data` const prefix = `--${boundary}\r\nContent-Disposition: form-data`
/*! formdata-polyfill. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */ /*! formdata-polyfill. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
@@ -29482,6 +29479,14 @@ module.exports = require("net");
/***/ }), /***/ }),
/***/ 6005:
/***/ ((module) => {
"use strict";
module.exports = require("node:crypto");
/***/ }),
/***/ 5673: /***/ 5673:
/***/ ((module) => { /***/ ((module) => {

2
dist/index.js.map generated vendored

File diff suppressed because one or more lines are too long

1282
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -14,19 +14,19 @@
"devDependencies": { "devDependencies": {
"@github/prettier-config": "^0.0.6", "@github/prettier-config": "^0.0.6",
"@types/jest": "^29.5.12", "@types/jest": "^29.5.12",
"@types/node": "16.18.96", "@types/node": "16.18.101",
"@typescript-eslint/eslint-plugin": "^7.6.0", "@typescript-eslint/eslint-plugin": "^7.14.1",
"@typescript-eslint/parser": "^7.6.0", "@typescript-eslint/parser": "^7.14.1",
"@vercel/ncc": "^0.38.1", "@vercel/ncc": "^0.38.1",
"concurrently": "^8.2.2", "concurrently": "^8.2.2",
"eslint": "^8.57.0", "eslint": "^8.57.0",
"eslint-plugin-github": "^4.10.2", "eslint-plugin-github": "^5.0.1",
"eslint-plugin-jest": "^27.9.0", "eslint-plugin-jest": "^28.6.0",
"eslint-plugin-prettier": "^5.1.3", "eslint-plugin-prettier": "^5.1.3",
"jest": "^29.7.0", "jest": "^29.7.0",
"prettier": "3.2.5", "prettier": "3.3.2",
"ts-jest": "^29.1.2", "ts-jest": "^29.1.5",
"typescript": "^5.4.5" "typescript": "^5.5.2"
}, },
"keywords": [ "keywords": [
"actions", "actions",

View File

@@ -1,6 +1,6 @@
{ {
"compilerOptions": { "compilerOptions": {
"target": "ES2015" /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019' or 'ESNEXT'. */, "target": "ES2018" /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019' or 'ESNEXT'. */,
"module": "commonjs" /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */, "module": "commonjs" /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */,
"outDir": "./lib" /* Redirect output structure to the directory. */, "outDir": "./lib" /* Redirect output structure to the directory. */,
"rootDir": "./src" /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */, "rootDir": "./src" /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */,
@@ -8,7 +8,7 @@
"noImplicitAny": true /* Raise error on expressions and declarations with an implied 'any' type. */, "noImplicitAny": true /* Raise error on expressions and declarations with an implied 'any' type. */,
"esModuleInterop": true /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */, "esModuleInterop": true /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */,
"noUncheckedIndexedAccess": true, "noUncheckedIndexedAccess": true,
"lib": ["ES2015"] "lib": ["ES2018"]
}, },
"exclude": ["node_modules", "**/*.test.ts"] "exclude": ["node_modules", "**/*.test.ts"]
} }