diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml
deleted file mode 100644
index c8f7ebb..0000000
--- a/.github/FUNDING.yml
+++ /dev/null
@@ -1 +0,0 @@
-ko_fi: softprops
\ No newline at end of file
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
deleted file mode 100644
index c76888a..0000000
--- a/.github/dependabot.yml
+++ /dev/null
@@ -1,29 +0,0 @@
-version: 2
-updates:
- - package-ecosystem: npm
- directory: "/"
- schedule:
- interval: weekly
- groups:
- npm:
- patterns:
- - "*"
- ignore:
- - dependency-name: node-fetch
- versions:
- - ">=3.0.0"
- - dependency-name: "@types/node"
- versions:
- - ">=22.0.0"
- commit-message:
- prefix: "chore(deps)"
- - package-ecosystem: github-actions
- directory: "/"
- schedule:
- interval: weekly
- groups:
- github-actions:
- patterns:
- - "*"
- commit-message:
- prefix: "chore(deps)"
diff --git a/.github/release.yml b/.github/release.yml
deleted file mode 100644
index 7a9dcdb..0000000
--- a/.github/release.yml
+++ /dev/null
@@ -1,22 +0,0 @@
-changelog:
- exclude:
- labels:
- - ignore-for-release
- - github-actions
- authors:
- - octocat
- - renovate[bot]
- categories:
- - title: Breaking Changes 🛠
- labels:
- - breaking-change
- - title: Exciting New Features 🎉
- labels:
- - enhancement
- - feature
- - title: Bug fixes 🐛
- labels:
- - bug
- - title: Other Changes 🔄
- labels:
- - "*"
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index f85d3e2..9b7946d 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -1,32 +1,26 @@
-name: main
+name: Main
-on:
- push:
- pull_request:
+on: [pull_request, push]
jobs:
build:
- runs-on: ubuntu-24.04
+ runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
-
- - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
+ # https://github.com/actions/checkout
+ - name: Checkout
+ uses: actions/checkout@master
with:
- node-version-file: ".tool-versions"
- cache: "npm"
-
+ fetch-depth: 1
- name: Install
run: npm ci
- name: Build
run: npm run build
- name: Test
run: npm run test
- - name: Format
- run: npm run fmtcheck
- # - name: "check for uncommitted changes"
- # # Ensure no changes, but ignore node_modules dir since dev/fresh ci deps installed.
- # run: |
- # git diff --exit-code --stat -- . ':!node_modules' \
- # || (echo "##[error] found changed files after build. please 'npm run build && npm run fmt'" \
- # "and check in all changes" \
- # && exit 1)
+ - name: "check for uncommitted changes"
+ # Ensure no changes, but ignore node_modules dir since dev/fresh ci deps installed.
+ run: |
+ git diff --exit-code --stat -- . ':!node_modules' \
+ || (echo "##[error] found changed files after build. please 'npm run build && npm run format'" \
+ "and check in all changes" \
+ && exit 1)
\ No newline at end of file
diff --git a/.gitignore b/.gitignore
index 6982a78..4188e5b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,3 @@
__tests__/runner/*
# actions requires a node_modules dir https://github.com/actions/toolkit/blob/master/docs/javascript-action.md#publish-a-releasesv1-action
# but its recommended not to check these in https://github.com/actions/toolkit/blob/master/docs/action-versioning.md#recommendations
-node_modules
-coverage
diff --git a/.prettierignore b/.prettierignore
deleted file mode 100644
index ceb484e..0000000
--- a/.prettierignore
+++ /dev/null
@@ -1,16 +0,0 @@
-# Build outputs
-dist/
-lib/
-coverage/
-
-# Dependencies
-node_modules/
-
-# Misc
-.github/
-*.log
-.DS_Store
-__tests__/release.txt
-
-# Package files
-package-lock.json
diff --git a/.prettierrc.js b/.prettierrc.js
deleted file mode 100644
index d27b0d2..0000000
--- a/.prettierrc.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/**
- * @type {import('prettier').Config}
- */
-module.exports = {
- trailingComma: 'all',
- tabWidth: 2,
- semi: true,
- singleQuote: true,
- printWidth: 100,
- bracketSpacing: true,
-};
diff --git a/.tool-versions b/.tool-versions
deleted file mode 100644
index f07031b..0000000
--- a/.tool-versions
+++ /dev/null
@@ -1 +0,0 @@
-nodejs 24.2.0
diff --git a/CHANGELOG.md b/CHANGELOG.md
index f77a15c..7c3c2fe 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,244 +1,34 @@
-## 2.3.2
-
-* fix: revert fs `readableWebStream` change
-
-## 2.3.1
-
-### Bug fixes 🐛
-
-* fix: fix file closing issue by @WailGree in https://github.com/softprops/action-gh-release/pull/629
-
-## 2.3.0
-
-* Migrate from jest to vitest
-* Replace `mime` with `mime-types`
-* Bump to use node 24
-* Dependency updates
-
-## 2.2.2
-
-## What's Changed
-
-### Bug fixes 🐛
-
-* fix: updating release draft status from true to false by @galargh in https://github.com/softprops/action-gh-release/pull/316
-
-### Other Changes 🔄
-
-* chore: simplify ref_type test by @steinybot in https://github.com/softprops/action-gh-release/pull/598
-* fix(docs): clarify the default for tag_name by @muzimuzhi in https://github.com/softprops/action-gh-release/pull/599
-* test(release): add unit tests when searching for a release by @rwaskiewicz in https://github.com/softprops/action-gh-release/pull/603
-* dependency updates
-
-## 2.2.1
-
-## What's Changed
-
-### Bug fixes 🐛
-
-* fix: big file uploads by @xen0n in https://github.com/softprops/action-gh-release/pull/562
-
-### Other Changes 🔄
-* chore(deps): bump @types/node from 22.10.1 to 22.10.2 by @dependabot in https://github.com/softprops/action-gh-release/pull/559
-* chore(deps): bump @types/node from 22.10.2 to 22.10.5 by @dependabot in https://github.com/softprops/action-gh-release/pull/569
-* chore: update error and warning messages for not matching files in files field by @ytimocin in https://github.com/softprops/action-gh-release/pull/568
-
-## 2.2.0
-
-## What's Changed
-
-### Exciting New Features 🎉
-
-* feat: read the release assets asynchronously by @xen0n in https://github.com/softprops/action-gh-release/pull/552
-
-### Bug fixes 🐛
-
-* fix(docs): clarify the default for tag_name by @alexeagle in https://github.com/softprops/action-gh-release/pull/544
-
-### Other Changes 🔄
-
-* chore(deps): bump typescript from 5.6.3 to 5.7.2 by @dependabot in https://github.com/softprops/action-gh-release/pull/548
-* chore(deps): bump @types/node from 22.9.0 to 22.9.4 by @dependabot in https://github.com/softprops/action-gh-release/pull/547
-* chore(deps): bump cross-spawn from 7.0.3 to 7.0.6 by @dependabot in https://github.com/softprops/action-gh-release/pull/545
-* chore(deps): bump @vercel/ncc from 0.38.2 to 0.38.3 by @dependabot in https://github.com/softprops/action-gh-release/pull/543
-* chore(deps): bump prettier from 3.3.3 to 3.4.1 by @dependabot in https://github.com/softprops/action-gh-release/pull/550
-* chore(deps): bump @types/node from 22.9.4 to 22.10.1 by @dependabot in https://github.com/softprops/action-gh-release/pull/551
-* chore(deps): bump prettier from 3.4.1 to 3.4.2 by @dependabot in https://github.com/softprops/action-gh-release/pull/554
-
-## 2.1.0
-
-## What's Changed
-
-### Exciting New Features 🎉
-* feat: add support for release assets with multiple spaces within the name by @dukhine in https://github.com/softprops/action-gh-release/pull/518
-* feat: preserve upload order by @richarddd in https://github.com/softprops/action-gh-release/pull/500
-
-### Other Changes 🔄
-* chore(deps): bump @types/node from 22.8.2 to 22.8.7 by @dependabot in https://github.com/softprops/action-gh-release/pull/539
-
-## 2.0.9
-
-- maintenance release with updated dependencies
-
-## 2.0.8
-
-### Other Changes 🔄
-* chore(deps): bump prettier from 2.8.0 to 3.3.3 by @dependabot in https://github.com/softprops/action-gh-release/pull/480
-* chore(deps): bump @types/node from 20.14.9 to 20.14.11 by @dependabot in https://github.com/softprops/action-gh-release/pull/483
-* chore(deps): bump @octokit/plugin-throttling from 9.3.0 to 9.3.1 by @dependabot in https://github.com/softprops/action-gh-release/pull/484
-* chore(deps): bump glob from 10.4.2 to 11.0.0 by @dependabot in https://github.com/softprops/action-gh-release/pull/477
-* refactor: write jest config in ts by @chenrui333 in https://github.com/softprops/action-gh-release/pull/485
-* chore(deps): bump @actions/github from 5.1.1 to 6.0.0 by @dependabot in https://github.com/softprops/action-gh-release/pull/470
-
-## 2.0.7
-
-### Bug fixes 🐛
-
-* Fix missing update release body by @FirelightFlagboy in https://github.com/softprops/action-gh-release/pull/365
-
-### Other Changes 🔄
-
-* Bump @octokit/plugin-retry from 4.0.3 to 7.1.1 by @dependabot in https://github.com/softprops/action-gh-release/pull/443
-* Bump typescript from 4.9.5 to 5.5.2 by @dependabot in https://github.com/softprops/action-gh-release/pull/467
-* Bump @types/node from 20.14.6 to 20.14.8 by @dependabot in https://github.com/softprops/action-gh-release/pull/469
-* Bump @types/node from 20.14.8 to 20.14.9 by @dependabot in https://github.com/softprops/action-gh-release/pull/473
-* Bump typescript from 5.5.2 to 5.5.3 by @dependabot in https://github.com/softprops/action-gh-release/pull/472
-* Bump ts-jest from 29.1.5 to 29.2.2 by @dependabot in https://github.com/softprops/action-gh-release/pull/479
-* docs: document that existing releases are updated by @jvanbruegge in https://github.com/softprops/action-gh-release/pull/474
-
-## 2.0.6
-
-- maintenance release with updated dependencies
-
-## 2.0.5
-
-- Factor in file names with spaces when upserting files [#446](https://github.com/softprops/action-gh-release/pull/446) via [@MystiPanda](https://github.com/MystiPanda)
-- Improvements to error handling [#449](https://github.com/softprops/action-gh-release/pull/449) via [@till](https://github.com/till)
-
-## 2.0.4
-
-- Minor follow up to [#417](https://github.com/softprops/action-gh-release/pull/417). [#425](https://github.com/softprops/action-gh-release/pull/425)
-
-## 2.0.3
-
-- Declare `make_latest` as an input field in `action.yml` [#419](https://github.com/softprops/action-gh-release/pull/419)
-
-## 2.0.2
-
-- Revisit approach to [#384](https://github.com/softprops/action-gh-release/pull/384) making unresolved pattern failures opt-in [#417](https://github.com/softprops/action-gh-release/pull/417)
-
-## 2.0.1
-
-- Add support for make_latest property [#304](https://github.com/softprops/action-gh-release/pull/304) via [@samueljseay](https://github.com/samueljseay)
-- Fail run if files setting contains invalid patterns [#384](https://github.com/softprops/action-gh-release/pull/384) via [@rpdelaney](https://github.com/rpdelaney)
-- Add support for proxy env variables (don't use node-fetch) [#386](https://github.com/softprops/action-gh-release/pull/386/) via [@timor-raiman](https://github.com/timor-raiman)
-- Suppress confusing warning when input_files is empty [#389](https://github.com/softprops/action-gh-release/pull/389) via [@Drowze](https://github.com/Drowze)
-
-## 2.0.0
-
-- `2.0.0`!? this release corrects a disjunction between git tag versions used in the marketplace and versions list this file. Previous versions should have really been 1.\*. Going forward this should be better aligned.
-- Upgrade action.yml declaration to node20 to address deprecations
-
-## 0.1.15
-
-- Upgrade to action.yml declaration to node16 to address deprecations
-- Upgrade dependencies
-- Add `asset` output as a JSON array containing information about the uploaded assets
-
-## 0.1.14
-
-- provides an new workflow input option `generate_release_notes` which when set to true will automatically generate release notes for you based on GitHub activity [#179](https://github.com/softprops/action-gh-release/pull/179). Please see the [GitHub docs for this feature](https://docs.github.com/en/repositories/releasing-projects-on-github/automatically-generated-release-notes) for more information
-
-## 0.1.13
-
-- fix issue with multiple runs concatenating release bodies [#145](https://github.com/softprops/action-gh-release/pull/145)
-
-## 0.1.12
-
-- fix bug leading to empty strings subsituted for inputs users don't provide breaking api calls [#144](https://github.com/softprops/action-gh-release/pull/144)
-
-## 0.1.11
-
-- better error message on release create failed [#143](https://github.com/softprops/action-gh-release/pull/143)
-
-## 0.1.10
-
-- fixed error message formatting for file uploads
-
-## 0.1.9
-
-- add support for linking release to GitHub discussion [#136](https://github.com/softprops/action-gh-release/pull/136)
-
-## 0.1.8
-
-- address recent warnings in assert upload api as well as introduce asset upload overrides, allowing for multiple runs for the same release with the same named asserts [#134](https://github.com/softprops/action-gh-release/pull/134)
-- fix backwards compatibility with `GITHUB_TOKEN` resolution. `GITHUB_TOKEN` is no resolved first from an env varibale and then from and input [#133](https://github.com/softprops/action-gh-release/pull/133)
-- trim white space in provided `tag_name` [#130](https://github.com/softprops/action-gh-release/pull/130)
-
-## 0.1.7
-
-- allow creating draft releases without a tag [#95](https://github.com/softprops/action-gh-release/pull/95)
-- Set default token for simpler setup [#83](https://github.com/softprops/action-gh-release/pull/83)
-- fix regression with action yml [#126](https://github.com/softprops/action-gh-release/pull/126)
-
-## 0.1.6
-
-This is a release catch up have a hiatus. Future releases will happen more frequently
-
-- Add 'fail_on_unmatched_files' input, useful for catching cases were your `files` input does not actually match what you expect [#55](https://github.com/softprops/action-gh-release/pull/55)
-- Add `repository` input, useful for creating a release in an external repository [#61](https://github.com/softprops/action-gh-release/pull/61)
-- Add release `id` to outputs, useful for refering to release in workflow steps following the step that uses this action [#60](https://github.com/softprops/action-gh-release/pull/60)
-- Add `upload_url` as action output, useful for managing uploads separately [#75](https://github.com/softprops/action-gh-release/pull/75)
-- Support custom `target_commitish` value, useful to customize the default [#76](https://github.com/softprops/action-gh-release/pull/76)
-- fix `body_path` input first then fall back on `body` input. this was the originally documented precedence but was implemened the the opposite order! [#85](https://github.com/softprops/action-gh-release/pull/85)
-- Retain original release info if the keys are not set, useful for filling in blanks for a release you've already started separately [#109](https://github.com/softprops/action-gh-release/pull/109)
-- Limit number of times github api request to create a release is retried, useful for avoiding eating up your rate limit and action minutes do to either an invalid token or other circumstance causing the api call to fail [#111](https://github.com/softprops/action-gh-release/pull/111)
-
-## 0.1.5
-
-- Added support for specifying tag name [#39](https://github.com/softprops/action-gh-release/pull/39)
-
-## 0.1.4
-
-- Added support for updating releases body [#36](https://github.com/softprops/action-gh-release/pull/36)
-- Steps can now access the url of releases with the `url` output of this Action [#28](https://github.com/softprops/action-gh-release/pull/28)
-- Added basic GitHub API retry support to manage API turbulance [#26](https://github.com/softprops/action-gh-release/pull/26)
-
-## 0.1.3
-
-- Fixed where `with: body_path` was not being used in generated GitHub releases
-
## 0.1.2
-- Add support for merging draft releases [#16](https://github.com/softprops/action-gh-release/pull/16)
+* Add support for merging draft releases [#16](https://github.com/softprops/action-gh-release/pull/16)
GitHub's api doesn't explicitly have a way of fetching a draft release by tag name which caused draft releases to appear as separate releases when used in a build matrix.
This is now fixed.
-- Add support for newline-delimited asset list [#18](https://github.com/softprops/action-gh-release/pull/18)
+* Add support for newline-delimited asset list [#18](https://github.com/softprops/action-gh-release/pull/18)
GitHub actions inputs don't inherently support lists of things and one might like to append a list of files to include in a release. Previously this was possible using a comma-delimited list of asset path patterns to upload. You can now provide these as a newline delimieted list for better readability
```yaml
-- name: Release
- uses: softprops/action-gh-release@v1
- if: startsWith(github.ref, 'refs/tags/')
- with:
- files: |
- filea.txt
- fileb.txt
- filec.txt
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ - name: Release
+ uses: softprops/action-gh-release@v1
+ if: startsWith(github.ref, 'refs/tags/')
+ with:
+ files: |
+ filea.txt
+ fileb.txt
+ filec.txt
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
```
-- Add support for prerelease annotated GitHub releases with the new input field `with.prerelease: true` [#19](https://github.com/softprops/action-gh-release/pull/19)
+* Add support for prerelease annotated GitHub releases with the new input field `with.prerelease: true`
---
## 0.1.1
-- Add support for publishing releases on all supported virtual hosts
+* Add support for publishing releases on all supported virtual hosts
You'll need to remove `docker://` prefix and use the `@v1` action tag
@@ -246,4 +36,4 @@ You'll need to remove `docker://` prefix and use the `@v1` action tag
## 0.1.0
-- Initial release
+* Initial release
\ No newline at end of file
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 1ce34ae..839b466 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -1,12 +1,12 @@
## bootstrapping
-This a [JavaScript](https://help.github.com/en/articles/about-actions#types-of-actions) action but uses [TypeScript](https://www.typescriptlang.org/docs/home.html) to generate that JavaScript.
+This a [JavaScript](https://help.github.com/en/articles/about-actions#types-of-actions) action but uses [TypeScript](https://www.typescriptlang.org/docs/home.html) to generate that JavaScript.
-You can bootstrap your environment with a modern version of npm and by running `npm i` at the root of this repo.
+You can bootstrap your envrinment with a modern version of npm and by running `npm i` at the root of this repo.
## testing
-Tests can be found under under `__tests__` directory and are runnable with the `npm t` command.
+Tests can be found under under `__tests__` directory and are runnable with the `npm t` command
## source code
@@ -14,4 +14,5 @@ Source code can be found under the `src` directory. Running `npm run build` will
## formatting
-A minimal attempt at keeping a consistent code style is can be applied by running `npm run fmt`.
+A minimal attempt at keeping a consistent code style is can be applied by running `npm run fmt`
+
diff --git a/LICENSE b/LICENSE
index 2c072b8..ba32e73 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,4 +1,4 @@
-Copyright (c) 2019-current Doug Tangren
+Copyright (c) 2019 Doug Tangren
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
diff --git a/README.md b/README.md
index f889896..88976e6 100644
--- a/README.md
+++ b/README.md
@@ -1,35 +1,12 @@
-
- 📦 :octocat:
-
-
- action gh-release
-
-
- A GitHub Action for creating GitHub Releases on Linux, Windows, and macOS virtual environments
-
+# action gh-release [](https://github.com/softprops/action-gh-release/actions)
-
-

-
+> A GitHub Action for creating GitHub Releases on Linux, Windows, and OSX virtual environments
-
+
-
-- [🤸 Usage](#-usage)
- - [🚥 Limit releases to pushes to tags](#-limit-releases-to-pushes-to-tags)
- - [⬆️ Uploading release assets](#️-uploading-release-assets)
- - [📝 External release notes](#-external-release-notes)
- - [💅 Customizing](#-customizing)
- - [inputs](#inputs)
- - [outputs](#outputs)
- - [environment variables](#environment-variables)
- - [Permissions](#permissions)
+> **⚠️ Note:** To use this action, you must have access to the [GitHub Actions](https://github.com/features/actions) feature. GitHub Actions are currently only available in public beta. You can [apply for the GitHub Actions beta here](https://github.com/features/actions/signup/).
## 🤸 Usage
@@ -37,7 +14,7 @@
Typically usage of this action involves adding a step to a build that
is gated pushes to git tags. You may find `step.if` field helpful in accomplishing this
-as it maximizes the reuse value of your workflow for non-tag pushes.
+as it maximizes the resuse value of your workflow for non-tag pushes.
Below is a simple example of `step.if` tag gating
@@ -51,10 +28,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
- uses: actions/checkout@v4
+ uses: actions/checkout@master
- name: Release
- uses: softprops/action-gh-release@v2
- if: github.ref_type == 'tag'
+ uses: softprops/action-gh-release@v1
+ if: startsWith(github.ref, 'refs/tags/')
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
```
You can also use push config tag filter
@@ -65,27 +44,29 @@ name: Main
on:
push:
tags:
- - "v*.*.*"
+ - 'v*.*.*'
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
- uses: actions/checkout@v4
+ uses: actions/checkout@master
- name: Release
- uses: softprops/action-gh-release@v2
+ uses: softprops/action-gh-release@v1
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
```
+
### ⬆️ Uploading release assets
-You can configure a number of options for your
+You can can configure a number of options for your
GitHub release and all are optional.
A common case for GitHub releases is to upload your binary after its been validated and packaged.
Use the `with.files` input to declare a newline-delimited list of glob expressions matching the files
you wish to upload to GitHub releases. If you'd like you can just list the files by name directly.
-If a tag already has a GitHub release, the existing release will be updated with the release assets.
Below is an example of uploading a single asset named `Release.txt`
@@ -99,16 +80,18 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
- uses: actions/checkout@v4
+ uses: actions/checkout@master
- name: Build
run: echo ${{ github.sha }} > Release.txt
- name: Test
run: cat Release.txt
- name: Release
- uses: softprops/action-gh-release@v2
- if: github.ref_type == 'tag'
+ uses: softprops/action-gh-release@v1
+ if: startsWith(github.ref, 'refs/tags/')
with:
files: Release.txt
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
```
Below is an example of uploading more than one asset with a GitHub release
@@ -123,23 +106,23 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
- uses: actions/checkout@v4
+ uses: actions/checkout@master
- name: Build
run: echo ${{ github.sha }} > Release.txt
- name: Test
run: cat Release.txt
- name: Release
- uses: softprops/action-gh-release@v2
- if: github.ref_type == 'tag'
+ uses: softprops/action-gh-release@v1
+ if: startsWith(github.ref, 'refs/tags/')
with:
files: |
Release.txt
LICENSE
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
```
-> **⚠️ Note:** Notice the `|` in the yaml syntax above ☝️. That lets you effectively declare a multi-line yaml string. You can learn more about multi-line yaml syntax [here](https://yaml-multiline.info)
-
-> **⚠️ Note for Windows:** Paths must use `/` as a separator, not `\`, as `\` is used to escape characters with special meaning in the pattern; for example, instead of specifying `D:\Foo.txt`, you must specify `D:/Foo.txt`. If you're using PowerShell, you can do this with `$Path = $Path -replace '\\','/'`
+> **⚠️ Note:** Notice the `|` in the yaml syntax above ☝️. That let's you effectively declare a multi-line yaml string. You can learn more about multi-line yaml syntax [here](https://yaml-multiline.info)
### 📝 External release notes
@@ -157,18 +140,16 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
- uses: actions/checkout@v4
+ uses: actions/checkout@master
- name: Generate Changelog
- run: echo "# Good things have arrived" > ${{ github.workspace }}-CHANGELOG.txt
+ run: echo "# Good things have arrived" > ${{ github.workflow }}-CHANGELOG.txt
- name: Release
- uses: softprops/action-gh-release@v2
- if: github.ref_type == 'tag'
+ uses: softprops/action-gh-release@v1
+ if: startsWith(github.ref, 'refs/tags/')
with:
- body_path: ${{ github.workspace }}-CHANGELOG.txt
- repository: my_gh_org/my_gh_repo
- # note you'll typically need to create a personal access token
- # with permissions to create releases in the other repo
- token: ${{ secrets.CUSTOM_GITHUB_TOKEN }}
+ body_path: ${{ github.workflow }}-CHANGELOG.txt
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
```
### 💅 Customizing
@@ -177,77 +158,26 @@ jobs:
The following are optional as `step.with` keys
-| Name | Type | Description |
-| -------------------------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `body` | String | Text communicating notable changes in this release |
-| `body_path` | String | Path to load text communicating notable changes in this release |
-| `draft` | Boolean | Indicator of whether or not this release is a draft |
-| `prerelease` | Boolean | Indicator of whether or not is a prerelease |
-| `preserve_order` | Boolean | Indicator of whether order of files should be preserved when uploading assets |
-| `files` | String | Newline-delimited globs of paths to assets to upload for release |
-| `overwrite_files` | Boolean | Indicator of whether files should be overwritten when they already exist. Defaults to true |
-| `name` | String | Name of the release. defaults to tag name |
-| `tag_name` | String | Name of a tag. defaults to `github.ref_name` |
-| `fail_on_unmatched_files` | Boolean | Indicator of whether to fail if any of the `files` globs match nothing |
-| `repository` | String | Name of a target repository in `/` format. Defaults to GITHUB_REPOSITORY env variable |
-| `target_commitish` | String | Commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Defaults to repository default branch. |
-| `token` | String | Secret GitHub Personal Access Token. Defaults to `${{ github.token }}` |
-| `discussion_category_name` | String | If specified, a discussion of the specified category is created and linked to the release. The value must be a category that already exists in the repository. For more information, see ["Managing categories for discussions in your repository."](https://docs.github.com/en/discussions/managing-discussions-for-your-community/managing-categories-for-discussions-in-your-repository) |
-| `generate_release_notes` | Boolean | Whether to automatically generate the name and body for this release. If name is specified, the specified name will be used; otherwise, a name will be automatically generated. If body is specified, the body will be pre-pended to the automatically generated notes. See the [GitHub docs for this feature](https://docs.github.com/en/repositories/releasing-projects-on-github/automatically-generated-release-notes) for more information |
-| `append_body` | Boolean | Append to existing body instead of overwriting it |
-| `make_latest` | String | Specifies whether this release should be set as the latest release for the repository. Drafts and prereleases cannot be set as latest. Can be `true`, `false`, or `legacy`. Uses GitHub api defaults if not provided |
+| Name | Type | Description |
+|-------------|---------|-----------------------------------------------------------------|
+| `body` | String | Text communicating notable changes in this release |
+| `body_path` | String | Path to load text communicating notable changes in this release |
+| `draft` | Boolean | Indicator of whether or not this release is a draft |
+| `prerelease`| Boolean | Indicator of whether or not is a prerelease |
+| `files` | String | Newline-delimited globs of paths to assets to upload for release|
+| `name` | String | Name of the release. defaults to tag name |
-💡 When providing a `body` and `body_path` at the same time, `body_path` will be
-attempted first, then falling back on `body` if the path can not be read from.
-
-💡 When the release info keys (such as `name`, `body`, `draft`, `prerelease`, etc.)
-are not explicitly set and there is already an existing release for the tag, the
-release will retain its original info.
-
-#### outputs
-
-The following outputs can be accessed via `${{ steps..outputs }}` from this action
-
-| Name | Type | Description |
-| ------------ | ------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `url` | String | Github.com URL for the release |
-| `id` | String | Release ID |
-| `upload_url` | String | URL for uploading assets to the release |
-| `assets` | String | JSON array containing information about each uploaded asset, in the format given [here](https://docs.github.com/en/rest/releases/assets#get-a-release-asset) (minus the `uploader` field) |
-
-As an example, you can use `${{ fromJSON(steps..outputs.assets)[0].browser_download_url }}` to get the download URL of the first asset.
+💡When providing a `body` and `body_path` at the same time, `body_path` will be attempted first, then falling back on `body` if the path can not be read from.
#### environment variables
-The following `step.env` keys are allowed as a fallback but deprecated in favor of using inputs.
+The following are *required* as `step.env` keys
-| Name | Description |
-| ------------------- | ------------------------------------------------------------------------------------------ |
-| `GITHUB_TOKEN` | GITHUB_TOKEN as provided by `secrets` |
-| `GITHUB_REPOSITORY` | Name of a target repository in `/` format. defaults to the current repository |
+| Name | Description |
+|----------------|--------------------------------------|
+| `GITHUB_TOKEN` | GITHUB_TOKEN as provided by `secrets`|
-> **⚠️ Note:** This action was previously implemented as a Docker container, limiting its use to GitHub Actions Linux virtual environments only. With recent releases, we now support cross platform usage. You'll need to remove the `docker://` prefix in these versions
-### Permissions
-
-This Action requires the following permissions on the GitHub integration token:
-
-```yaml
-permissions:
- contents: write
-```
-
-When used with `discussion_category_name`, additional permission is needed:
-
-```yaml
-permissions:
- contents: write
- discussions: write
-```
-
-[GitHub token permissions](https://docs.github.com/en/actions/security-guides/automatic-token-authentication#permissions-for-the-github_token) can be set for an individual job, workflow, or for Actions as a whole.
-
-Note that if you intend to run workflows on the release event (`on: { release: { types: [published] } }`), you need to use
-a personal access token for this action, as the [default `secrets.GITHUB_TOKEN` does not trigger another workflow](https://github.com/actions/create-release/issues/71).
+> **⚠️ Note:** This action was previously implemented as a docker container, limiting its use to GitHub Actions Linux virtual environments only. With recent releases, we now support cross platform usage. You'll need to remove the `docker://` prefix in these versions
Doug Tangren (softprops) 2019
diff --git a/__tests__/github.test.ts b/__tests__/github.test.ts
index 3fcc592..c5d1e43 100644
--- a/__tests__/github.test.ts
+++ b/__tests__/github.test.ts
@@ -1,230 +1,25 @@
-import { asset, findTagFromReleases, mimeOrDefault, Release, Releaser } from '../src/github';
+//import * as assert from "assert";
+//const assert = require('assert');
+import * as assert from "assert";
+import { mimeOrDefault, asset } from "../src/github";
-import { assert, describe, it } from 'vitest';
-
-describe('github', () => {
- describe('mimeOrDefault', () => {
- it('returns a specific mime for common path', async () => {
- assert.equal(mimeOrDefault('foo.tar.gz'), 'application/gzip');
+describe("github", () => {
+ describe("mimeOrDefault", () => {
+ it("returns a specific mime for common path", async () => {
+ assert.equal(mimeOrDefault("foo.tar.gz"), "application/gzip");
});
- it('returns default mime for uncommon path', async () => {
- assert.equal(mimeOrDefault('foo.uncommon'), 'application/octet-stream');
+ it("returns default mime for uncommon path", async () => {
+ assert.equal(mimeOrDefault("foo.uncommon"), "application/octet-stream");
});
});
- describe('asset', () => {
- it('derives asset info from a path', async () => {
- const { name, mime, size } = asset('tests/data/foo/bar.txt');
- assert.equal(name, 'bar.txt');
- assert.equal(mime, 'text/plain');
+ describe("asset", () => {
+ it("derives asset info from a path", async () => {
+ const { name, mime, size, file } = asset("tests/data/foo/bar.txt");
+ assert.equal(name, "bar.txt");
+ assert.equal(mime, "text/plain");
assert.equal(size, 10);
- });
- });
-
- describe('findTagFromReleases', () => {
- const owner = 'owner';
- const repo = 'repo';
-
- const mockRelease: Release = {
- id: 1,
- upload_url: `https://api.github.com/repos/${owner}/${repo}/releases/1/assets`,
- html_url: `https://github.com/${owner}/${repo}/releases/tag/v1.0.0`,
- tag_name: 'v1.0.0',
- name: 'Test Release',
- body: 'Test body',
- target_commitish: 'main',
- draft: false,
- prerelease: false,
- assets: [],
- } as const;
-
- const mockReleaser: Releaser = {
- getReleaseByTag: () => Promise.reject('Not implemented'),
- createRelease: () => Promise.reject('Not implemented'),
- updateRelease: () => Promise.reject('Not implemented'),
- allReleases: async function* () {
- yield { data: [mockRelease] };
- },
- } as const;
-
- describe('when the tag_name is not an empty string', () => {
- const targetTag = 'v1.0.0';
-
- it('finds a matching release in first batch of results', async () => {
- const targetRelease = {
- ...mockRelease,
- owner,
- repo,
- tag_name: targetTag,
- };
- const otherRelease = {
- ...mockRelease,
- owner,
- repo,
- tag_name: 'v1.0.1',
- };
-
- const releaser = {
- ...mockReleaser,
- allReleases: async function* () {
- yield { data: [targetRelease] };
- yield { data: [otherRelease] };
- },
- };
-
- const result = await findTagFromReleases(releaser, owner, repo, targetTag);
-
- assert.deepStrictEqual(result, targetRelease);
- });
-
- it('finds a matching release in second batch of results', async () => {
- const targetRelease = {
- ...mockRelease,
- owner,
- repo,
- tag_name: targetTag,
- };
- const otherRelease = {
- ...mockRelease,
- owner,
- repo,
- tag_name: 'v1.0.1',
- };
-
- const releaser = {
- ...mockReleaser,
- allReleases: async function* () {
- yield { data: [otherRelease] };
- yield { data: [targetRelease] };
- },
- };
-
- const result = await findTagFromReleases(releaser, owner, repo, targetTag);
- assert.deepStrictEqual(result, targetRelease);
- });
-
- it('returns undefined when a release is not found in any batch', async () => {
- const otherRelease = {
- ...mockRelease,
- owner,
- repo,
- tag_name: 'v1.0.1',
- };
- const releaser = {
- ...mockReleaser,
- allReleases: async function* () {
- yield { data: [otherRelease] };
- yield { data: [otherRelease] };
- },
- };
-
- const result = await findTagFromReleases(releaser, owner, repo, targetTag);
-
- assert.strictEqual(result, undefined);
- });
-
- it('returns undefined when no releases are returned', async () => {
- const releaser = {
- ...mockReleaser,
- allReleases: async function* () {
- yield { data: [] };
- },
- };
-
- const result = await findTagFromReleases(releaser, owner, repo, targetTag);
-
- assert.strictEqual(result, undefined);
- });
- });
-
- describe('when the tag_name is an empty string', () => {
- const emptyTag = '';
-
- it('finds a matching release in first batch of results', async () => {
- const targetRelease = {
- ...mockRelease,
- owner,
- repo,
- tag_name: emptyTag,
- };
- const otherRelease = {
- ...mockRelease,
- owner,
- repo,
- tag_name: 'v1.0.1',
- };
-
- const releaser = {
- ...mockReleaser,
- allReleases: async function* () {
- yield { data: [targetRelease] };
- yield { data: [otherRelease] };
- },
- };
-
- const result = await findTagFromReleases(releaser, owner, repo, emptyTag);
-
- assert.deepStrictEqual(result, targetRelease);
- });
-
- it('finds a matching release in second batch of results', async () => {
- const targetRelease = {
- ...mockRelease,
- owner,
- repo,
- tag_name: emptyTag,
- };
- const otherRelease = {
- ...mockRelease,
- owner,
- repo,
- tag_name: 'v1.0.1',
- };
-
- const releaser = {
- ...mockReleaser,
- allReleases: async function* () {
- yield { data: [otherRelease] };
- yield { data: [targetRelease] };
- },
- };
-
- const result = await findTagFromReleases(releaser, owner, repo, emptyTag);
- assert.deepStrictEqual(result, targetRelease);
- });
-
- it('returns undefined when a release is not found in any batch', async () => {
- const otherRelease = {
- ...mockRelease,
- owner,
- repo,
- tag_name: 'v1.0.1',
- };
- const releaser = {
- ...mockReleaser,
- allReleases: async function* () {
- yield { data: [otherRelease] };
- yield { data: [otherRelease] };
- },
- };
-
- const result = await findTagFromReleases(releaser, owner, repo, emptyTag);
-
- assert.strictEqual(result, undefined);
- });
-
- it('returns undefined when no releases are returned', async () => {
- const releaser = {
- ...mockReleaser,
- allReleases: async function* () {
- yield { data: [] };
- },
- };
-
- const result = await findTagFromReleases(releaser, owner, repo, emptyTag);
-
- assert.strictEqual(result, undefined);
- });
+ assert.equal(file.toString(), "release me");
});
});
});
diff --git a/__tests__/release.txt b/__tests__/release.txt
deleted file mode 100644
index ba0e162..0000000
--- a/__tests__/release.txt
+++ /dev/null
@@ -1 +0,0 @@
-bar
\ No newline at end of file
diff --git a/__tests__/util.test.ts b/__tests__/util.test.ts
index 87e0ad3..c7cfa48 100644
--- a/__tests__/util.test.ts
+++ b/__tests__/util.test.ts
@@ -1,415 +1,50 @@
-import {
- alignAssetName,
- isTag,
- parseConfig,
- parseInputFiles,
- paths,
- releaseBody,
- unmatchedPatterns,
- uploadUrl,
-} from '../src/util';
+import { isTag, paths, parseConfig, parseInputFiles } from "../src/util";
+import * as assert from "assert";
-import { assert, describe, expect, it } from 'vitest';
-
-describe('util', () => {
- describe('uploadUrl', () => {
- it('strips template', () => {
- assert.equal(
- uploadUrl(
- 'https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}',
- ),
- 'https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets',
+describe("util", () => {
+ describe("parseInputFiles", () => {
+ it("parses empty strings", () => {
+ assert.deepStrictEqual(parseInputFiles(""), []);
+ });
+ it("parses comma-delimited strings", () => {
+ assert.deepStrictEqual(parseInputFiles("foo,bar"), ["foo", "bar"]);
+ });
+ it("parses newline and comma-delimited (and then some)", () => {
+ assert.deepStrictEqual(
+ parseInputFiles("foo,bar\nbaz,boom,\n\ndoom,loom "),
+ ["foo", "bar", "baz", "boom", "doom", "loom"]
);
});
});
- describe('parseInputFiles', () => {
- it('parses empty strings', () => {
- assert.deepStrictEqual(parseInputFiles(''), []);
+ describe("parseConfig", () => {
+ it("parses basic config", () => {
+ assert.deepStrictEqual(parseConfig({}), {
+ github_ref: "",
+ github_repository: "",
+ github_token: "",
+ input_body: undefined,
+ input_body_path: undefined,
+ input_draft: false,
+ input_prerelease: false,
+ input_files: [],
+ input_name: undefined
+ });
});
- it('parses comma-delimited strings', () => {
- assert.deepStrictEqual(parseInputFiles('foo,bar'), ['foo', 'bar']);
+ });
+ describe("isTag", () => {
+ it("returns true for tags", async () => {
+ assert.equal(isTag("refs/tags/foo"), true);
});
- it('parses newline and comma-delimited (and then some)', () => {
- assert.deepStrictEqual(parseInputFiles('foo,bar\nbaz,boom,\n\ndoom,loom '), [
- 'foo',
- 'bar',
- 'baz',
- 'boom',
- 'doom',
- 'loom',
+ it("returns false for other kinds of refs", async () => {
+ assert.equal(isTag("refs/heads/master"), false);
+ });
+ });
+
+ describe("paths", () => {
+ it("resolves files given a set of paths", async () => {
+ assert.deepStrictEqual(paths(["tests/data/**/*"]), [
+ "tests/data/foo/bar.txt"
]);
});
});
- describe('releaseBody', () => {
- it('uses input body', () => {
- assert.equal(
- 'foo',
- releaseBody({
- github_ref: '',
- github_repository: '',
- github_token: '',
- input_body: 'foo',
- input_body_path: undefined,
- input_draft: false,
- input_prerelease: false,
- input_preserve_order: undefined,
- input_files: [],
- input_overwrite_files: undefined,
- input_name: undefined,
- input_tag_name: undefined,
- input_target_commitish: undefined,
- input_discussion_category_name: undefined,
- input_generate_release_notes: false,
- input_make_latest: undefined,
- }),
- );
- });
- it('uses input body path', () => {
- assert.equal(
- 'bar',
- releaseBody({
- github_ref: '',
- github_repository: '',
- github_token: '',
- input_body: undefined,
- input_body_path: '__tests__/release.txt',
- input_draft: false,
- input_prerelease: false,
- input_preserve_order: undefined,
- input_files: [],
- input_overwrite_files: undefined,
- input_name: undefined,
- input_tag_name: undefined,
- input_target_commitish: undefined,
- input_discussion_category_name: undefined,
- input_generate_release_notes: false,
- input_make_latest: undefined,
- }),
- );
- });
- it('defaults to body path when both body and body path are provided', () => {
- assert.equal(
- 'bar',
- releaseBody({
- github_ref: '',
- github_repository: '',
- github_token: '',
- input_body: 'foo',
- input_body_path: '__tests__/release.txt',
- input_draft: false,
- input_prerelease: false,
- input_preserve_order: undefined,
- input_files: [],
- input_overwrite_files: undefined,
- input_name: undefined,
- input_tag_name: undefined,
- input_target_commitish: undefined,
- input_discussion_category_name: undefined,
- input_generate_release_notes: false,
- input_make_latest: undefined,
- }),
- );
- });
- });
- describe('parseConfig', () => {
- it('parses basic config', () => {
- assert.deepStrictEqual(
- parseConfig({
- // note: inputs declared in actions.yml, even when declared not required,
- // are still provided by the actions runtime env as empty strings instead of
- // the normal absent env value one would expect. this breaks things
- // as an empty string !== undefined in terms of what we pass to the api
- // so we cover that in a test case here to ensure undefined values are actually
- // resolved as undefined and not empty strings
- INPUT_TARGET_COMMITISH: '',
- INPUT_DISCUSSION_CATEGORY_NAME: '',
- }),
- {
- github_ref: '',
- github_repository: '',
- github_token: '',
- input_append_body: false,
- input_body: undefined,
- input_body_path: undefined,
- input_draft: undefined,
- input_prerelease: undefined,
- input_preserve_order: undefined,
- input_files: [],
- input_overwrite_files: undefined,
- input_name: undefined,
- input_tag_name: undefined,
- input_fail_on_unmatched_files: false,
- input_target_commitish: undefined,
- input_discussion_category_name: undefined,
- input_generate_release_notes: false,
- input_make_latest: undefined,
- },
- );
- });
-
- it('parses basic config with commitish', () => {
- assert.deepStrictEqual(
- parseConfig({
- INPUT_TARGET_COMMITISH: 'affa18ef97bc9db20076945705aba8c516139abd',
- }),
- {
- github_ref: '',
- github_repository: '',
- github_token: '',
- input_append_body: false,
- input_body: undefined,
- input_body_path: undefined,
- input_draft: undefined,
- input_prerelease: undefined,
- input_files: [],
- input_overwrite_files: undefined,
- input_preserve_order: undefined,
- input_name: undefined,
- input_tag_name: undefined,
- input_fail_on_unmatched_files: false,
- input_target_commitish: 'affa18ef97bc9db20076945705aba8c516139abd',
- input_discussion_category_name: undefined,
- input_generate_release_notes: false,
- input_make_latest: undefined,
- },
- );
- });
- it('supports discussion category names', () => {
- assert.deepStrictEqual(
- parseConfig({
- INPUT_DISCUSSION_CATEGORY_NAME: 'releases',
- }),
- {
- github_ref: '',
- github_repository: '',
- github_token: '',
- input_append_body: false,
- input_body: undefined,
- input_body_path: undefined,
- input_draft: undefined,
- input_prerelease: undefined,
- input_files: [],
- input_preserve_order: undefined,
- input_name: undefined,
- input_overwrite_files: undefined,
- input_tag_name: undefined,
- input_fail_on_unmatched_files: false,
- input_target_commitish: undefined,
- input_discussion_category_name: 'releases',
- input_generate_release_notes: false,
- input_make_latest: undefined,
- },
- );
- });
-
- it('supports generating release notes', () => {
- assert.deepStrictEqual(
- parseConfig({
- INPUT_GENERATE_RELEASE_NOTES: 'true',
- }),
- {
- github_ref: '',
- github_repository: '',
- github_token: '',
- input_append_body: false,
- input_body: undefined,
- input_body_path: undefined,
- input_draft: undefined,
- input_prerelease: undefined,
- input_preserve_order: undefined,
- input_files: [],
- input_overwrite_files: undefined,
- input_name: undefined,
- input_tag_name: undefined,
- input_fail_on_unmatched_files: false,
- input_target_commitish: undefined,
- input_discussion_category_name: undefined,
- input_generate_release_notes: true,
- input_make_latest: undefined,
- },
- );
- });
-
- it('prefers GITHUB_TOKEN over token input for backwards compatibility', () => {
- assert.deepStrictEqual(
- parseConfig({
- INPUT_DRAFT: 'false',
- INPUT_PRERELEASE: 'true',
- INPUT_PRESERVE_ORDER: 'true',
- GITHUB_TOKEN: 'env-token',
- INPUT_TOKEN: 'input-token',
- }),
- {
- github_ref: '',
- github_repository: '',
- github_token: 'env-token',
- input_append_body: false,
- input_body: undefined,
- input_body_path: undefined,
- input_draft: false,
- input_prerelease: true,
- input_preserve_order: true,
- input_files: [],
- input_overwrite_files: undefined,
- input_name: undefined,
- input_tag_name: undefined,
- input_fail_on_unmatched_files: false,
- input_target_commitish: undefined,
- input_discussion_category_name: undefined,
- input_generate_release_notes: false,
- input_make_latest: undefined,
- },
- );
- });
- it('uses input token as the source of GITHUB_TOKEN by default', () => {
- assert.deepStrictEqual(
- parseConfig({
- INPUT_DRAFT: 'false',
- INPUT_PRERELEASE: 'true',
- INPUT_TOKEN: 'input-token',
- }),
- {
- github_ref: '',
- github_repository: '',
- github_token: 'input-token',
- input_append_body: false,
- input_body: undefined,
- input_body_path: undefined,
- input_draft: false,
- input_prerelease: true,
- input_preserve_order: undefined,
- input_files: [],
- input_overwrite_files: undefined,
- input_name: undefined,
- input_tag_name: undefined,
- input_fail_on_unmatched_files: false,
- input_target_commitish: undefined,
- input_discussion_category_name: undefined,
- input_generate_release_notes: false,
- input_make_latest: undefined,
- },
- );
- });
- it('parses basic config with draft and prerelease', () => {
- assert.deepStrictEqual(
- parseConfig({
- INPUT_DRAFT: 'false',
- INPUT_PRERELEASE: 'true',
- }),
- {
- github_ref: '',
- github_repository: '',
- github_token: '',
- input_append_body: false,
- input_body: undefined,
- input_body_path: undefined,
- input_draft: false,
- input_prerelease: true,
- input_preserve_order: undefined,
- input_files: [],
- input_overwrite_files: undefined,
- input_name: undefined,
- input_tag_name: undefined,
- input_fail_on_unmatched_files: false,
- input_target_commitish: undefined,
- input_discussion_category_name: undefined,
- input_generate_release_notes: false,
- input_make_latest: undefined,
- },
- );
- });
- it('parses basic config where make_latest is passed', () => {
- assert.deepStrictEqual(
- parseConfig({
- INPUT_MAKE_LATEST: 'false',
- }),
- {
- github_ref: '',
- github_repository: '',
- github_token: '',
- input_append_body: false,
- input_body: undefined,
- input_body_path: undefined,
- input_draft: undefined,
- input_prerelease: undefined,
- input_preserve_order: undefined,
- input_files: [],
- input_name: undefined,
- input_overwrite_files: undefined,
- input_tag_name: undefined,
- input_fail_on_unmatched_files: false,
- input_target_commitish: undefined,
- input_discussion_category_name: undefined,
- input_generate_release_notes: false,
- input_make_latest: 'false',
- },
- );
- });
- it('parses basic config with append_body', () => {
- assert.deepStrictEqual(
- parseConfig({
- INPUT_APPEND_BODY: 'true',
- }),
- {
- github_ref: '',
- github_repository: '',
- github_token: '',
- input_append_body: true,
- input_body: undefined,
- input_body_path: undefined,
- input_draft: undefined,
- input_prerelease: undefined,
- input_preserve_order: undefined,
- input_files: [],
- input_overwrite_files: undefined,
- input_name: undefined,
- input_tag_name: undefined,
- input_fail_on_unmatched_files: false,
- input_target_commitish: undefined,
- input_discussion_category_name: undefined,
- input_generate_release_notes: false,
- input_make_latest: undefined,
- },
- );
- });
- });
- describe('isTag', () => {
- it('returns true for tags', async () => {
- assert.equal(isTag('refs/tags/foo'), true);
- });
- it('returns false for other kinds of refs', async () => {
- assert.equal(isTag('refs/heads/master'), false);
- });
- });
-
- describe('paths', () => {
- it('resolves files given a set of paths', async () => {
- assert.deepStrictEqual(paths(['tests/data/**/*', 'tests/data/does/not/exist/*']), [
- 'tests/data/foo/bar.txt',
- ]);
- });
- });
-
- describe('unmatchedPatterns', () => {
- it("returns the patterns that don't match any files", async () => {
- assert.deepStrictEqual(
- unmatchedPatterns(['tests/data/**/*', 'tests/data/does/not/exist/*']),
- ['tests/data/does/not/exist/*'],
- );
- });
- });
-
- describe('replaceSpacesWithDots', () => {
- it('replaces all spaces with dots', () => {
- expect(alignAssetName('John Doe.bla')).toBe('John.Doe.bla');
- });
-
- it('handles names with multiple spaces', () => {
- expect(alignAssetName('John William Doe.bla')).toBe('John.William.Doe.bla');
- });
-
- it('returns the same string if there are no spaces', () => {
- expect(alignAssetName('JohnDoe')).toBe('JohnDoe');
- });
- });
});
diff --git a/action.yml b/action.yml
index e9319e6..65e4023 100644
--- a/action.yml
+++ b/action.yml
@@ -1,75 +1,31 @@
# https://help.github.com/en/articles/metadata-syntax-for-github-actions
-name: "GH Release"
-description: "Github Action for creating Github Releases"
-author: "softprops"
+name: 'GH Release'
+description: 'Github Action for creating Github Releases'
+author: 'softprops'
inputs:
body:
- description: "Note-worthy description of changes in release"
+ description: 'Note-worthy description of changes in release'
required: false
- body_path:
- description: "Path to load note-worthy description of changes in release from"
+ body-path:
+ description: 'Path to load note-worthy description of changes in release from'
required: false
name:
- description: "Gives the release a custom name. Defaults to tag name"
- required: false
- tag_name:
- description: "Gives a tag name. Defaults to github.ref_name"
+ description: 'Gives the release a custom name. Defaults to tag name'
required: false
draft:
- description: "Creates a draft release. Defaults to false"
+ description: 'Creates a draft release. Defaults to false'
required: false
prerelease:
- description: "Identify the release as a prerelease. Defaults to false"
- required: false
- preserve_order:
- description: "Preserver the order of the artifacts when uploading"
+ description: 'Identify the release as a prerelease. Defaults to false'
required: false
files:
- description: "Newline-delimited list of path globs for asset files to upload"
- required: false
- overwrite_files:
- description: "Overwrite existing files with the same name. Defaults to true"
- required: false
- default: 'true'
- fail_on_unmatched_files:
- description: "Fails if any of the `files` globs match nothing. Defaults to false"
- required: false
- repository:
- description: "Repository to make releases against, in / format"
- required: false
- token:
- description: "Authorized secret GitHub Personal Access Token. Defaults to github.token"
- required: false
- default: ${{ github.token }}
- target_commitish:
- description: "Commitish value that determines where the Git tag is created from. Can be any branch or commit SHA."
- required: false
- discussion_category_name:
- description: "If specified, a discussion of the specified category is created and linked to the release. The value must be a category that already exists in the repository. If there is already a discussion linked to the release, this parameter is ignored."
- required: false
- generate_release_notes:
- description: "Whether to automatically generate the name and body for this release. If name is specified, the specified name will be used; otherwise, a name will be automatically generated. If body is specified, the body will be pre-pended to the automatically generated notes."
- required: false
- append_body:
- description: "Append to existing body instead of overwriting it. Default is false."
- required: false
- make_latest:
- description: "Specifies whether this release should be set as the latest release for the repository. Drafts and prereleases cannot be set as latest. Can be `true`, `false`, or `legacy`. Uses GitHub api default if not provided"
+ description: 'Newline-delimited list of path globs for asset files to upload'
required: false
env:
- GITHUB_TOKEN: "As provided by Github Actions"
-outputs:
- url:
- description: "URL to the Release HTML Page"
- id:
- description: "Release ID"
- upload_url:
- description: "URL for uploading assets to the release"
- assets:
- description: "JSON array containing information about each uploaded asset, in the format given [here](https://docs.github.com/en/rest/reference/repos#upload-a-release-asset--code-samples) (minus the `uploader` field)"
+ 'GITHUB_TOKEN': 'As provided by Github Actions'
runs:
- using: "node20"
- main: "dist/index.js"
+ using: 'node12'
+ main: 'lib/main.js'
branding:
- color: "green"
- icon: "package"
+ color: 'green'
+ icon: 'package'
\ No newline at end of file
diff --git a/dist/index.js b/dist/index.js
deleted file mode 100644
index 7f75342..0000000
--- a/dist/index.js
+++ /dev/null
@@ -1,16 +0,0 @@
-(()=>{var e={4914:function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){if(i===undefined)i=s;var A=Object.getOwnPropertyDescriptor(t,s);if(!A||("get"in A?!t.__esModule:A.writable||A.configurable)){A={enumerable:true,get:function(){return t[s]}}}Object.defineProperty(e,i,A)}:function(e,t,s,i){if(i===undefined)i=s;e[i]=t[s]});var A=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var s in e)if(s!=="default"&&Object.prototype.hasOwnProperty.call(e,s))i(t,e,s);A(t,e);return t};Object.defineProperty(t,"__esModule",{value:true});t.issue=t.issueCommand=void 0;const r=o(s(857));const n=s(302);function issueCommand(e,t,s){const i=new Command(e,t,s);process.stdout.write(i.toString()+r.EOL)}t.issueCommand=issueCommand;function issue(e,t=""){issueCommand(e,{},t)}t.issue=issue;const a="::";class Command{constructor(e,t,s){if(!e){e="missing.command"}this.command=e;this.properties=t;this.message=s}toString(){let e=a+this.command;if(this.properties&&Object.keys(this.properties).length>0){e+=" ";let t=true;for(const s in this.properties){if(this.properties.hasOwnProperty(s)){const i=this.properties[s];if(i){if(t){t=false}else{e+=","}e+=`${s}=${escapeProperty(i)}`}}}}e+=`${a}${escapeData(this.message)}`;return e}}function escapeData(e){return(0,n.toCommandValue)(e).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}function escapeProperty(e){return(0,n.toCommandValue)(e).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}},7484:function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){if(i===undefined)i=s;var A=Object.getOwnPropertyDescriptor(t,s);if(!A||("get"in A?!t.__esModule:A.writable||A.configurable)){A={enumerable:true,get:function(){return t[s]}}}Object.defineProperty(e,i,A)}:function(e,t,s,i){if(i===undefined)i=s;e[i]=t[s]});var A=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var s in e)if(s!=="default"&&Object.prototype.hasOwnProperty.call(e,s))i(t,e,s);A(t,e);return t};var r=this&&this.__awaiter||function(e,t,s,i){function adopt(e){return e instanceof s?e:new s((function(t){t(e)}))}return new(s||(s=Promise))((function(s,A){function fulfilled(e){try{step(i.next(e))}catch(e){A(e)}}function rejected(e){try{step(i["throw"](e))}catch(e){A(e)}}function step(e){e.done?s(e.value):adopt(e.value).then(fulfilled,rejected)}step((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.platform=t.toPlatformPath=t.toWin32Path=t.toPosixPath=t.markdownSummary=t.summary=t.getIDToken=t.getState=t.saveState=t.group=t.endGroup=t.startGroup=t.info=t.notice=t.warning=t.error=t.debug=t.isDebug=t.setFailed=t.setCommandEcho=t.setOutput=t.getBooleanInput=t.getMultilineInput=t.getInput=t.addPath=t.setSecret=t.exportVariable=t.ExitCode=void 0;const n=s(4914);const a=s(4753);const c=s(302);const l=o(s(857));const u=o(s(6928));const p=s(5306);var g;(function(e){e[e["Success"]=0]="Success";e[e["Failure"]=1]="Failure"})(g||(t.ExitCode=g={}));function exportVariable(e,t){const s=(0,c.toCommandValue)(t);process.env[e]=s;const i=process.env["GITHUB_ENV"]||"";if(i){return(0,a.issueFileCommand)("ENV",(0,a.prepareKeyValueMessage)(e,t))}(0,n.issueCommand)("set-env",{name:e},s)}t.exportVariable=exportVariable;function setSecret(e){(0,n.issueCommand)("add-mask",{},e)}t.setSecret=setSecret;function addPath(e){const t=process.env["GITHUB_PATH"]||"";if(t){(0,a.issueFileCommand)("PATH",e)}else{(0,n.issueCommand)("add-path",{},e)}process.env["PATH"]=`${e}${u.delimiter}${process.env["PATH"]}`}t.addPath=addPath;function getInput(e,t){const s=process.env[`INPUT_${e.replace(/ /g,"_").toUpperCase()}`]||"";if(t&&t.required&&!s){throw new Error(`Input required and not supplied: ${e}`)}if(t&&t.trimWhitespace===false){return s}return s.trim()}t.getInput=getInput;function getMultilineInput(e,t){const s=getInput(e,t).split("\n").filter((e=>e!==""));if(t&&t.trimWhitespace===false){return s}return s.map((e=>e.trim()))}t.getMultilineInput=getMultilineInput;function getBooleanInput(e,t){const s=["true","True","TRUE"];const i=["false","False","FALSE"];const A=getInput(e,t);if(s.includes(A))return true;if(i.includes(A))return false;throw new TypeError(`Input does not meet YAML 1.2 "Core Schema" specification: ${e}\n`+`Support boolean input list: \`true | True | TRUE | false | False | FALSE\``)}t.getBooleanInput=getBooleanInput;function setOutput(e,t){const s=process.env["GITHUB_OUTPUT"]||"";if(s){return(0,a.issueFileCommand)("OUTPUT",(0,a.prepareKeyValueMessage)(e,t))}process.stdout.write(l.EOL);(0,n.issueCommand)("set-output",{name:e},(0,c.toCommandValue)(t))}t.setOutput=setOutput;function setCommandEcho(e){(0,n.issue)("echo",e?"on":"off")}t.setCommandEcho=setCommandEcho;function setFailed(e){process.exitCode=g.Failure;error(e)}t.setFailed=setFailed;function isDebug(){return process.env["RUNNER_DEBUG"]==="1"}t.isDebug=isDebug;function debug(e){(0,n.issueCommand)("debug",{},e)}t.debug=debug;function error(e,t={}){(0,n.issueCommand)("error",(0,c.toCommandProperties)(t),e instanceof Error?e.toString():e)}t.error=error;function warning(e,t={}){(0,n.issueCommand)("warning",(0,c.toCommandProperties)(t),e instanceof Error?e.toString():e)}t.warning=warning;function notice(e,t={}){(0,n.issueCommand)("notice",(0,c.toCommandProperties)(t),e instanceof Error?e.toString():e)}t.notice=notice;function info(e){process.stdout.write(e+l.EOL)}t.info=info;function startGroup(e){(0,n.issue)("group",e)}t.startGroup=startGroup;function endGroup(){(0,n.issue)("endgroup")}t.endGroup=endGroup;function group(e,t){return r(this,void 0,void 0,(function*(){startGroup(e);let s;try{s=yield t()}finally{endGroup()}return s}))}t.group=group;function saveState(e,t){const s=process.env["GITHUB_STATE"]||"";if(s){return(0,a.issueFileCommand)("STATE",(0,a.prepareKeyValueMessage)(e,t))}(0,n.issueCommand)("save-state",{name:e},(0,c.toCommandValue)(t))}t.saveState=saveState;function getState(e){return process.env[`STATE_${e}`]||""}t.getState=getState;function getIDToken(e){return r(this,void 0,void 0,(function*(){return yield p.OidcClient.getIDToken(e)}))}t.getIDToken=getIDToken;var h=s(1847);Object.defineProperty(t,"summary",{enumerable:true,get:function(){return h.summary}});var d=s(1847);Object.defineProperty(t,"markdownSummary",{enumerable:true,get:function(){return d.markdownSummary}});var E=s(1976);Object.defineProperty(t,"toPosixPath",{enumerable:true,get:function(){return E.toPosixPath}});Object.defineProperty(t,"toWin32Path",{enumerable:true,get:function(){return E.toWin32Path}});Object.defineProperty(t,"toPlatformPath",{enumerable:true,get:function(){return E.toPlatformPath}});t.platform=o(s(8968))},4753:function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){if(i===undefined)i=s;var A=Object.getOwnPropertyDescriptor(t,s);if(!A||("get"in A?!t.__esModule:A.writable||A.configurable)){A={enumerable:true,get:function(){return t[s]}}}Object.defineProperty(e,i,A)}:function(e,t,s,i){if(i===undefined)i=s;e[i]=t[s]});var A=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var s in e)if(s!=="default"&&Object.prototype.hasOwnProperty.call(e,s))i(t,e,s);A(t,e);return t};Object.defineProperty(t,"__esModule",{value:true});t.prepareKeyValueMessage=t.issueFileCommand=void 0;const r=o(s(6982));const n=o(s(9896));const a=o(s(857));const c=s(302);function issueFileCommand(e,t){const s=process.env[`GITHUB_${e}`];if(!s){throw new Error(`Unable to find environment variable for file command ${e}`)}if(!n.existsSync(s)){throw new Error(`Missing file at path: ${s}`)}n.appendFileSync(s,`${(0,c.toCommandValue)(t)}${a.EOL}`,{encoding:"utf8"})}t.issueFileCommand=issueFileCommand;function prepareKeyValueMessage(e,t){const s=`ghadelimiter_${r.randomUUID()}`;const i=(0,c.toCommandValue)(t);if(e.includes(s)){throw new Error(`Unexpected input: name should not contain the delimiter "${s}"`)}if(i.includes(s)){throw new Error(`Unexpected input: value should not contain the delimiter "${s}"`)}return`${e}<<${s}${a.EOL}${i}${a.EOL}${s}`}t.prepareKeyValueMessage=prepareKeyValueMessage},5306:function(e,t,s){"use strict";var i=this&&this.__awaiter||function(e,t,s,i){function adopt(e){return e instanceof s?e:new s((function(t){t(e)}))}return new(s||(s=Promise))((function(s,A){function fulfilled(e){try{step(i.next(e))}catch(e){A(e)}}function rejected(e){try{step(i["throw"](e))}catch(e){A(e)}}function step(e){e.done?s(e.value):adopt(e.value).then(fulfilled,rejected)}step((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.OidcClient=void 0;const A=s(4844);const o=s(4552);const r=s(7484);class OidcClient{static createHttpClient(e=true,t=10){const s={allowRetries:e,maxRetries:t};return new A.HttpClient("actions/oidc-client",[new o.BearerCredentialHandler(OidcClient.getRequestToken())],s)}static getRequestToken(){const e=process.env["ACTIONS_ID_TOKEN_REQUEST_TOKEN"];if(!e){throw new Error("Unable to get ACTIONS_ID_TOKEN_REQUEST_TOKEN env variable")}return e}static getIDTokenUrl(){const e=process.env["ACTIONS_ID_TOKEN_REQUEST_URL"];if(!e){throw new Error("Unable to get ACTIONS_ID_TOKEN_REQUEST_URL env variable")}return e}static getCall(e){var t;return i(this,void 0,void 0,(function*(){const s=OidcClient.createHttpClient();const i=yield s.getJson(e).catch((e=>{throw new Error(`Failed to get ID Token. \n \n Error Code : ${e.statusCode}\n \n Error Message: ${e.message}`)}));const A=(t=i.result)===null||t===void 0?void 0:t.value;if(!A){throw new Error("Response json body do not have ID Token field")}return A}))}static getIDToken(e){return i(this,void 0,void 0,(function*(){try{let t=OidcClient.getIDTokenUrl();if(e){const s=encodeURIComponent(e);t=`${t}&audience=${s}`}(0,r.debug)(`ID token url is ${t}`);const s=yield OidcClient.getCall(t);(0,r.setSecret)(s);return s}catch(e){throw new Error(`Error message: ${e.message}`)}}))}}t.OidcClient=OidcClient},1976:function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){if(i===undefined)i=s;var A=Object.getOwnPropertyDescriptor(t,s);if(!A||("get"in A?!t.__esModule:A.writable||A.configurable)){A={enumerable:true,get:function(){return t[s]}}}Object.defineProperty(e,i,A)}:function(e,t,s,i){if(i===undefined)i=s;e[i]=t[s]});var A=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var s in e)if(s!=="default"&&Object.prototype.hasOwnProperty.call(e,s))i(t,e,s);A(t,e);return t};Object.defineProperty(t,"__esModule",{value:true});t.toPlatformPath=t.toWin32Path=t.toPosixPath=void 0;const r=o(s(6928));function toPosixPath(e){return e.replace(/[\\]/g,"/")}t.toPosixPath=toPosixPath;function toWin32Path(e){return e.replace(/[/]/g,"\\")}t.toWin32Path=toWin32Path;function toPlatformPath(e){return e.replace(/[/\\]/g,r.sep)}t.toPlatformPath=toPlatformPath},8968:function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){if(i===undefined)i=s;var A=Object.getOwnPropertyDescriptor(t,s);if(!A||("get"in A?!t.__esModule:A.writable||A.configurable)){A={enumerable:true,get:function(){return t[s]}}}Object.defineProperty(e,i,A)}:function(e,t,s,i){if(i===undefined)i=s;e[i]=t[s]});var A=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var s in e)if(s!=="default"&&Object.prototype.hasOwnProperty.call(e,s))i(t,e,s);A(t,e);return t};var r=this&&this.__awaiter||function(e,t,s,i){function adopt(e){return e instanceof s?e:new s((function(t){t(e)}))}return new(s||(s=Promise))((function(s,A){function fulfilled(e){try{step(i.next(e))}catch(e){A(e)}}function rejected(e){try{step(i["throw"](e))}catch(e){A(e)}}function step(e){e.done?s(e.value):adopt(e.value).then(fulfilled,rejected)}step((i=i.apply(e,t||[])).next())}))};var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:true});t.getDetails=t.isLinux=t.isMacOS=t.isWindows=t.arch=t.platform=void 0;const a=n(s(857));const c=o(s(5236));const getWindowsInfo=()=>r(void 0,void 0,void 0,(function*(){const{stdout:e}=yield c.getExecOutput('powershell -command "(Get-CimInstance -ClassName Win32_OperatingSystem).Version"',undefined,{silent:true});const{stdout:t}=yield c.getExecOutput('powershell -command "(Get-CimInstance -ClassName Win32_OperatingSystem).Caption"',undefined,{silent:true});return{name:t.trim(),version:e.trim()}}));const getMacOsInfo=()=>r(void 0,void 0,void 0,(function*(){var e,t,s,i;const{stdout:A}=yield c.getExecOutput("sw_vers",undefined,{silent:true});const o=(t=(e=A.match(/ProductVersion:\s*(.+)/))===null||e===void 0?void 0:e[1])!==null&&t!==void 0?t:"";const r=(i=(s=A.match(/ProductName:\s*(.+)/))===null||s===void 0?void 0:s[1])!==null&&i!==void 0?i:"";return{name:r,version:o}}));const getLinuxInfo=()=>r(void 0,void 0,void 0,(function*(){const{stdout:e}=yield c.getExecOutput("lsb_release",["-i","-r","-s"],{silent:true});const[t,s]=e.trim().split("\n");return{name:t,version:s}}));t.platform=a.default.platform();t.arch=a.default.arch();t.isWindows=t.platform==="win32";t.isMacOS=t.platform==="darwin";t.isLinux=t.platform==="linux";function getDetails(){return r(this,void 0,void 0,(function*(){return Object.assign(Object.assign({},yield t.isWindows?getWindowsInfo():t.isMacOS?getMacOsInfo():getLinuxInfo()),{platform:t.platform,arch:t.arch,isWindows:t.isWindows,isMacOS:t.isMacOS,isLinux:t.isLinux})}))}t.getDetails=getDetails},1847:function(e,t,s){"use strict";var i=this&&this.__awaiter||function(e,t,s,i){function adopt(e){return e instanceof s?e:new s((function(t){t(e)}))}return new(s||(s=Promise))((function(s,A){function fulfilled(e){try{step(i.next(e))}catch(e){A(e)}}function rejected(e){try{step(i["throw"](e))}catch(e){A(e)}}function step(e){e.done?s(e.value):adopt(e.value).then(fulfilled,rejected)}step((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.summary=t.markdownSummary=t.SUMMARY_DOCS_URL=t.SUMMARY_ENV_VAR=void 0;const A=s(857);const o=s(9896);const{access:r,appendFile:n,writeFile:a}=o.promises;t.SUMMARY_ENV_VAR="GITHUB_STEP_SUMMARY";t.SUMMARY_DOCS_URL="https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary";class Summary{constructor(){this._buffer=""}filePath(){return i(this,void 0,void 0,(function*(){if(this._filePath){return this._filePath}const e=process.env[t.SUMMARY_ENV_VAR];if(!e){throw new Error(`Unable to find environment variable for $${t.SUMMARY_ENV_VAR}. Check if your runtime environment supports job summaries.`)}try{yield r(e,o.constants.R_OK|o.constants.W_OK)}catch(t){throw new Error(`Unable to access summary file: '${e}'. Check if the file has correct read/write permissions.`)}this._filePath=e;return this._filePath}))}wrap(e,t,s={}){const i=Object.entries(s).map((([e,t])=>` ${e}="${t}"`)).join("");if(!t){return`<${e}${i}>`}return`<${e}${i}>${t}${e}>`}write(e){return i(this,void 0,void 0,(function*(){const t=!!(e===null||e===void 0?void 0:e.overwrite);const s=yield this.filePath();const i=t?a:n;yield i(s,this._buffer,{encoding:"utf8"});return this.emptyBuffer()}))}clear(){return i(this,void 0,void 0,(function*(){return this.emptyBuffer().write({overwrite:true})}))}stringify(){return this._buffer}isEmptyBuffer(){return this._buffer.length===0}emptyBuffer(){this._buffer="";return this}addRaw(e,t=false){this._buffer+=e;return t?this.addEOL():this}addEOL(){return this.addRaw(A.EOL)}addCodeBlock(e,t){const s=Object.assign({},t&&{lang:t});const i=this.wrap("pre",this.wrap("code",e),s);return this.addRaw(i).addEOL()}addList(e,t=false){const s=t?"ol":"ul";const i=e.map((e=>this.wrap("li",e))).join("");const A=this.wrap(s,i);return this.addRaw(A).addEOL()}addTable(e){const t=e.map((e=>{const t=e.map((e=>{if(typeof e==="string"){return this.wrap("td",e)}const{header:t,data:s,colspan:i,rowspan:A}=e;const o=t?"th":"td";const r=Object.assign(Object.assign({},i&&{colspan:i}),A&&{rowspan:A});return this.wrap(o,s,r)})).join("");return this.wrap("tr",t)})).join("");const s=this.wrap("table",t);return this.addRaw(s).addEOL()}addDetails(e,t){const s=this.wrap("details",this.wrap("summary",e)+t);return this.addRaw(s).addEOL()}addImage(e,t,s){const{width:i,height:A}=s||{};const o=Object.assign(Object.assign({},i&&{width:i}),A&&{height:A});const r=this.wrap("img",null,Object.assign({src:e,alt:t},o));return this.addRaw(r).addEOL()}addHeading(e,t){const s=`h${t}`;const i=["h1","h2","h3","h4","h5","h6"].includes(s)?s:"h1";const A=this.wrap(i,e);return this.addRaw(A).addEOL()}addSeparator(){const e=this.wrap("hr",null);return this.addRaw(e).addEOL()}addBreak(){const e=this.wrap("br",null);return this.addRaw(e).addEOL()}addQuote(e,t){const s=Object.assign({},t&&{cite:t});const i=this.wrap("blockquote",e,s);return this.addRaw(i).addEOL()}addLink(e,t){const s=this.wrap("a",e,{href:t});return this.addRaw(s).addEOL()}}const c=new Summary;t.markdownSummary=c;t.summary=c},302:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.toCommandProperties=t.toCommandValue=void 0;function toCommandValue(e){if(e===null||e===undefined){return""}else if(typeof e==="string"||e instanceof String){return e}return JSON.stringify(e)}t.toCommandValue=toCommandValue;function toCommandProperties(e){if(!Object.keys(e).length){return{}}return{title:e.title,file:e.file,line:e.startLine,endLine:e.endLine,col:e.startColumn,endColumn:e.endColumn}}t.toCommandProperties=toCommandProperties},5236:function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){if(i===undefined)i=s;Object.defineProperty(e,i,{enumerable:true,get:function(){return t[s]}})}:function(e,t,s,i){if(i===undefined)i=s;e[i]=t[s]});var A=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var s in e)if(s!=="default"&&Object.hasOwnProperty.call(e,s))i(t,e,s);A(t,e);return t};var r=this&&this.__awaiter||function(e,t,s,i){function adopt(e){return e instanceof s?e:new s((function(t){t(e)}))}return new(s||(s=Promise))((function(s,A){function fulfilled(e){try{step(i.next(e))}catch(e){A(e)}}function rejected(e){try{step(i["throw"](e))}catch(e){A(e)}}function step(e){e.done?s(e.value):adopt(e.value).then(fulfilled,rejected)}step((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.getExecOutput=t.exec=void 0;const n=s(3193);const a=o(s(6665));function exec(e,t,s){return r(this,void 0,void 0,(function*(){const i=a.argStringToArray(e);if(i.length===0){throw new Error(`Parameter 'commandLine' cannot be null or empty.`)}const A=i[0];t=i.slice(1).concat(t||[]);const o=new a.ToolRunner(A,t,s);return o.exec()}))}t.exec=exec;function getExecOutput(e,t,s){var i,A;return r(this,void 0,void 0,(function*(){let o="";let r="";const a=new n.StringDecoder("utf8");const c=new n.StringDecoder("utf8");const l=(i=s===null||s===void 0?void 0:s.listeners)===null||i===void 0?void 0:i.stdout;const u=(A=s===null||s===void 0?void 0:s.listeners)===null||A===void 0?void 0:A.stderr;const stdErrListener=e=>{r+=c.write(e);if(u){u(e)}};const stdOutListener=e=>{o+=a.write(e);if(l){l(e)}};const p=Object.assign(Object.assign({},s===null||s===void 0?void 0:s.listeners),{stdout:stdOutListener,stderr:stdErrListener});const g=yield exec(e,t,Object.assign(Object.assign({},s),{listeners:p}));o+=a.end();r+=c.end();return{exitCode:g,stdout:o,stderr:r}}))}t.getExecOutput=getExecOutput},6665:function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){if(i===undefined)i=s;Object.defineProperty(e,i,{enumerable:true,get:function(){return t[s]}})}:function(e,t,s,i){if(i===undefined)i=s;e[i]=t[s]});var A=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var s in e)if(s!=="default"&&Object.hasOwnProperty.call(e,s))i(t,e,s);A(t,e);return t};var r=this&&this.__awaiter||function(e,t,s,i){function adopt(e){return e instanceof s?e:new s((function(t){t(e)}))}return new(s||(s=Promise))((function(s,A){function fulfilled(e){try{step(i.next(e))}catch(e){A(e)}}function rejected(e){try{step(i["throw"](e))}catch(e){A(e)}}function step(e){e.done?s(e.value):adopt(e.value).then(fulfilled,rejected)}step((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.argStringToArray=t.ToolRunner=void 0;const n=o(s(857));const a=o(s(4434));const c=o(s(5317));const l=o(s(6928));const u=o(s(4994));const p=o(s(5207));const g=s(3557);const h=process.platform==="win32";class ToolRunner extends a.EventEmitter{constructor(e,t,s){super();if(!e){throw new Error("Parameter 'toolPath' cannot be null or empty.")}this.toolPath=e;this.args=t||[];this.options=s||{}}_debug(e){if(this.options.listeners&&this.options.listeners.debug){this.options.listeners.debug(e)}}_getCommandString(e,t){const s=this._getSpawnFileName();const i=this._getSpawnArgs(e);let A=t?"":"[command]";if(h){if(this._isCmdFile()){A+=s;for(const e of i){A+=` ${e}`}}else if(e.windowsVerbatimArguments){A+=`"${s}"`;for(const e of i){A+=` ${e}`}}else{A+=this._windowsQuoteCmdArg(s);for(const e of i){A+=` ${this._windowsQuoteCmdArg(e)}`}}}else{A+=s;for(const e of i){A+=` ${e}`}}return A}_processLineBuffer(e,t,s){try{let i=t+e.toString();let A=i.indexOf(n.EOL);while(A>-1){const e=i.substring(0,A);s(e);i=i.substring(A+n.EOL.length);A=i.indexOf(n.EOL)}return i}catch(e){this._debug(`error processing line. Failed with error ${e}`);return""}}_getSpawnFileName(){if(h){if(this._isCmdFile()){return process.env["COMSPEC"]||"cmd.exe"}}return this.toolPath}_getSpawnArgs(e){if(h){if(this._isCmdFile()){let t=`/D /S /C "${this._windowsQuoteCmdArg(this.toolPath)}`;for(const s of this.args){t+=" ";t+=e.windowsVerbatimArguments?s:this._windowsQuoteCmdArg(s)}t+='"';return[t]}}return this.args}_endsWith(e,t){return e.endsWith(t)}_isCmdFile(){const e=this.toolPath.toUpperCase();return this._endsWith(e,".CMD")||this._endsWith(e,".BAT")}_windowsQuoteCmdArg(e){if(!this._isCmdFile()){return this._uvQuoteCmdArg(e)}if(!e){return'""'}const t=[" ","\t","&","(",")","[","]","{","}","^","=",";","!","'","+",",","`","~","|","<",">",'"'];let s=false;for(const i of e){if(t.some((e=>e===i))){s=true;break}}if(!s){return e}let i='"';let A=true;for(let t=e.length;t>0;t--){i+=e[t-1];if(A&&e[t-1]==="\\"){i+="\\"}else if(e[t-1]==='"'){A=true;i+='"'}else{A=false}}i+='"';return i.split("").reverse().join("")}_uvQuoteCmdArg(e){if(!e){return'""'}if(!e.includes(" ")&&!e.includes("\t")&&!e.includes('"')){return e}if(!e.includes('"')&&!e.includes("\\")){return`"${e}"`}let t='"';let s=true;for(let i=e.length;i>0;i--){t+=e[i-1];if(s&&e[i-1]==="\\"){t+="\\"}else if(e[i-1]==='"'){s=true;t+="\\"}else{s=false}}t+='"';return t.split("").reverse().join("")}_cloneExecOptions(e){e=e||{};const t={cwd:e.cwd||process.cwd(),env:e.env||process.env,silent:e.silent||false,windowsVerbatimArguments:e.windowsVerbatimArguments||false,failOnStdErr:e.failOnStdErr||false,ignoreReturnCode:e.ignoreReturnCode||false,delay:e.delay||1e4};t.outStream=e.outStream||process.stdout;t.errStream=e.errStream||process.stderr;return t}_getSpawnOptions(e,t){e=e||{};const s={};s.cwd=e.cwd;s.env=e.env;s["windowsVerbatimArguments"]=e.windowsVerbatimArguments||this._isCmdFile();if(e.windowsVerbatimArguments){s.argv0=`"${t}"`}return s}exec(){return r(this,void 0,void 0,(function*(){if(!p.isRooted(this.toolPath)&&(this.toolPath.includes("/")||h&&this.toolPath.includes("\\"))){this.toolPath=l.resolve(process.cwd(),this.options.cwd||process.cwd(),this.toolPath)}this.toolPath=yield u.which(this.toolPath,true);return new Promise(((e,t)=>r(this,void 0,void 0,(function*(){this._debug(`exec tool: ${this.toolPath}`);this._debug("arguments:");for(const e of this.args){this._debug(` ${e}`)}const s=this._cloneExecOptions(this.options);if(!s.silent&&s.outStream){s.outStream.write(this._getCommandString(s)+n.EOL)}const i=new ExecState(s,this.toolPath);i.on("debug",(e=>{this._debug(e)}));if(this.options.cwd&&!(yield p.exists(this.options.cwd))){return t(new Error(`The cwd: ${this.options.cwd} does not exist!`))}const A=this._getSpawnFileName();const o=c.spawn(A,this._getSpawnArgs(s),this._getSpawnOptions(this.options,A));let r="";if(o.stdout){o.stdout.on("data",(e=>{if(this.options.listeners&&this.options.listeners.stdout){this.options.listeners.stdout(e)}if(!s.silent&&s.outStream){s.outStream.write(e)}r=this._processLineBuffer(e,r,(e=>{if(this.options.listeners&&this.options.listeners.stdline){this.options.listeners.stdline(e)}}))}))}let a="";if(o.stderr){o.stderr.on("data",(e=>{i.processStderr=true;if(this.options.listeners&&this.options.listeners.stderr){this.options.listeners.stderr(e)}if(!s.silent&&s.errStream&&s.outStream){const t=s.failOnStdErr?s.errStream:s.outStream;t.write(e)}a=this._processLineBuffer(e,a,(e=>{if(this.options.listeners&&this.options.listeners.errline){this.options.listeners.errline(e)}}))}))}o.on("error",(e=>{i.processError=e.message;i.processExited=true;i.processClosed=true;i.CheckComplete()}));o.on("exit",(e=>{i.processExitCode=e;i.processExited=true;this._debug(`Exit code ${e} received from tool '${this.toolPath}'`);i.CheckComplete()}));o.on("close",(e=>{i.processExitCode=e;i.processExited=true;i.processClosed=true;this._debug(`STDIO streams have closed for tool '${this.toolPath}'`);i.CheckComplete()}));i.on("done",((s,i)=>{if(r.length>0){this.emit("stdline",r)}if(a.length>0){this.emit("errline",a)}o.removeAllListeners();if(s){t(s)}else{e(i)}}));if(this.options.input){if(!o.stdin){throw new Error("child process missing stdin")}o.stdin.end(this.options.input)}}))))}))}}t.ToolRunner=ToolRunner;function argStringToArray(e){const t=[];let s=false;let i=false;let A="";function append(e){if(i&&e!=='"'){A+="\\"}A+=e;i=false}for(let o=0;o0){t.push(A);A=""}continue}append(r)}if(A.length>0){t.push(A.trim())}return t}t.argStringToArray=argStringToArray;class ExecState extends a.EventEmitter{constructor(e,t){super();this.processClosed=false;this.processError="";this.processExitCode=0;this.processExited=false;this.processStderr=false;this.delay=1e4;this.done=false;this.timeout=null;if(!t){throw new Error("toolPath must not be empty")}this.options=e;this.toolPath=t;if(e.delay){this.delay=e.delay}}CheckComplete(){if(this.done){return}if(this.processClosed){this._setResult()}else if(this.processExited){this.timeout=g.setTimeout(ExecState.HandleTimeout,this.delay,this)}}_debug(e){this.emit("debug",e)}_setResult(){let e;if(this.processExited){if(this.processError){e=new Error(`There was an error when attempting to execute the process '${this.toolPath}'. This may indicate the process failed to start. Error: ${this.processError}`)}else if(this.processExitCode!==0&&!this.options.ignoreReturnCode){e=new Error(`The process '${this.toolPath}' failed with exit code ${this.processExitCode}`)}else if(this.processStderr&&this.options.failOnStdErr){e=new Error(`The process '${this.toolPath}' failed because one or more lines were written to the STDERR stream`)}}if(this.timeout){clearTimeout(this.timeout);this.timeout=null}this.done=true;this.emit("done",e,this.processExitCode)}static HandleTimeout(e){if(e.done){return}if(!e.processClosed&&e.processExited){const t=`The STDIO streams did not close within ${e.delay/1e3} seconds of the exit event from process '${e.toolPath}'. This may indicate a child process inherited the STDIO streams and has not yet exited.`;e._debug(t)}e._setResult()}}},1648:(e,t,s)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.Context=void 0;const i=s(9896);const A=s(857);class Context{constructor(){var e,t,s;this.payload={};if(process.env.GITHUB_EVENT_PATH){if((0,i.existsSync)(process.env.GITHUB_EVENT_PATH)){this.payload=JSON.parse((0,i.readFileSync)(process.env.GITHUB_EVENT_PATH,{encoding:"utf8"}))}else{const e=process.env.GITHUB_EVENT_PATH;process.stdout.write(`GITHUB_EVENT_PATH ${e} does not exist${A.EOL}`)}}this.eventName=process.env.GITHUB_EVENT_NAME;this.sha=process.env.GITHUB_SHA;this.ref=process.env.GITHUB_REF;this.workflow=process.env.GITHUB_WORKFLOW;this.action=process.env.GITHUB_ACTION;this.actor=process.env.GITHUB_ACTOR;this.job=process.env.GITHUB_JOB;this.runAttempt=parseInt(process.env.GITHUB_RUN_ATTEMPT,10);this.runNumber=parseInt(process.env.GITHUB_RUN_NUMBER,10);this.runId=parseInt(process.env.GITHUB_RUN_ID,10);this.apiUrl=(e=process.env.GITHUB_API_URL)!==null&&e!==void 0?e:`https://api.github.com`;this.serverUrl=(t=process.env.GITHUB_SERVER_URL)!==null&&t!==void 0?t:`https://github.com`;this.graphqlUrl=(s=process.env.GITHUB_GRAPHQL_URL)!==null&&s!==void 0?s:`https://api.github.com/graphql`}get issue(){const e=this.payload;return Object.assign(Object.assign({},this.repo),{number:(e.issue||e.pull_request||e).number})}get repo(){if(process.env.GITHUB_REPOSITORY){const[e,t]=process.env.GITHUB_REPOSITORY.split("/");return{owner:e,repo:t}}if(this.payload.repository){return{owner:this.payload.repository.owner.login,repo:this.payload.repository.name}}throw new Error("context.repo requires a GITHUB_REPOSITORY environment variable like 'owner/repo'")}}t.Context=Context},3228:function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){if(i===undefined)i=s;var A=Object.getOwnPropertyDescriptor(t,s);if(!A||("get"in A?!t.__esModule:A.writable||A.configurable)){A={enumerable:true,get:function(){return t[s]}}}Object.defineProperty(e,i,A)}:function(e,t,s,i){if(i===undefined)i=s;e[i]=t[s]});var A=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var s in e)if(s!=="default"&&Object.prototype.hasOwnProperty.call(e,s))i(t,e,s);A(t,e);return t};Object.defineProperty(t,"__esModule",{value:true});t.getOctokit=t.context=void 0;const r=o(s(1648));const n=s(8006);t.context=new r.Context;function getOctokit(e,t,...s){const i=n.GitHub.plugin(...s);return new i((0,n.getOctokitOptions)(e,t))}t.getOctokit=getOctokit},5156:function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){if(i===undefined)i=s;var A=Object.getOwnPropertyDescriptor(t,s);if(!A||("get"in A?!t.__esModule:A.writable||A.configurable)){A={enumerable:true,get:function(){return t[s]}}}Object.defineProperty(e,i,A)}:function(e,t,s,i){if(i===undefined)i=s;e[i]=t[s]});var A=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var s in e)if(s!=="default"&&Object.prototype.hasOwnProperty.call(e,s))i(t,e,s);A(t,e);return t};var r=this&&this.__awaiter||function(e,t,s,i){function adopt(e){return e instanceof s?e:new s((function(t){t(e)}))}return new(s||(s=Promise))((function(s,A){function fulfilled(e){try{step(i.next(e))}catch(e){A(e)}}function rejected(e){try{step(i["throw"](e))}catch(e){A(e)}}function step(e){e.done?s(e.value):adopt(e.value).then(fulfilled,rejected)}step((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.getApiBaseUrl=t.getProxyFetch=t.getProxyAgentDispatcher=t.getProxyAgent=t.getAuthString=void 0;const n=o(s(4844));const a=s(6752);function getAuthString(e,t){if(!e&&!t.auth){throw new Error("Parameter token or opts.auth is required")}else if(e&&t.auth){throw new Error("Parameters token and opts.auth may not both be specified")}return typeof t.auth==="string"?t.auth:`token ${e}`}t.getAuthString=getAuthString;function getProxyAgent(e){const t=new n.HttpClient;return t.getAgent(e)}t.getProxyAgent=getProxyAgent;function getProxyAgentDispatcher(e){const t=new n.HttpClient;return t.getAgentDispatcher(e)}t.getProxyAgentDispatcher=getProxyAgentDispatcher;function getProxyFetch(e){const t=getProxyAgentDispatcher(e);const proxyFetch=(e,s)=>r(this,void 0,void 0,(function*(){return(0,a.fetch)(e,Object.assign(Object.assign({},s),{dispatcher:t}))}));return proxyFetch}t.getProxyFetch=getProxyFetch;function getApiBaseUrl(){return process.env["GITHUB_API_URL"]||"https://api.github.com"}t.getApiBaseUrl=getApiBaseUrl},8006:function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){if(i===undefined)i=s;var A=Object.getOwnPropertyDescriptor(t,s);if(!A||("get"in A?!t.__esModule:A.writable||A.configurable)){A={enumerable:true,get:function(){return t[s]}}}Object.defineProperty(e,i,A)}:function(e,t,s,i){if(i===undefined)i=s;e[i]=t[s]});var A=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var s in e)if(s!=="default"&&Object.prototype.hasOwnProperty.call(e,s))i(t,e,s);A(t,e);return t};Object.defineProperty(t,"__esModule",{value:true});t.getOctokitOptions=t.GitHub=t.defaults=t.context=void 0;const r=o(s(1648));const n=o(s(5156));const a=s(8452);const c=s(5726);const l=s(7731);t.context=new r.Context;const u=n.getApiBaseUrl();t.defaults={baseUrl:u,request:{agent:n.getProxyAgent(u),fetch:n.getProxyFetch(u)}};t.GitHub=a.Octokit.plugin(c.restEndpointMethods,l.paginateRest).defaults(t.defaults);function getOctokitOptions(e,t){const s=Object.assign({},t||{});const i=n.getAuthString(e,s);if(i){s.auth=i}return s}t.getOctokitOptions=getOctokitOptions},2057:e=>{"use strict";var t=Object.defineProperty;var s=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var A=Object.prototype.hasOwnProperty;var __export=(e,s)=>{for(var i in s)t(e,i,{get:s[i],enumerable:true})};var __copyProps=(e,o,r,n)=>{if(o&&typeof o==="object"||typeof o==="function"){for(let a of i(o))if(!A.call(e,a)&&a!==r)t(e,a,{get:()=>o[a],enumerable:!(n=s(o,a))||n.enumerable})}return e};var __toCommonJS=e=>__copyProps(t({},"__esModule",{value:true}),e);var o={};__export(o,{createTokenAuth:()=>c});e.exports=__toCommonJS(o);var r=/^v1\./;var n=/^ghs_/;var a=/^ghu_/;async function auth(e){const t=e.split(/\./).length===3;const s=r.test(e)||n.test(e);const i=a.test(e);const A=t?"app":s?"installation":i?"user-to-server":"oauth";return{type:"token",token:e,tokenType:A}}function withAuthorizationPrefix(e){if(e.split(/\./).length===3){return`bearer ${e}`}return`token ${e}`}async function hook(e,t,s,i){const A=t.endpoint.merge(s,i);A.headers.authorization=withAuthorizationPrefix(e);return t(A)}var c=function createTokenAuth2(e){if(!e){throw new Error("[@octokit/auth-token] No token passed to createTokenAuth")}if(typeof e!=="string"){throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string")}e=e.replace(/^(token|bearer) +/i,"");return Object.assign(auth.bind(null,e),{hook:hook.bind(null,e)})};0&&0},8452:(e,t,s)=>{"use strict";var i=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var o=Object.getOwnPropertyNames;var r=Object.prototype.hasOwnProperty;var __export=(e,t)=>{for(var s in t)i(e,s,{get:t[s],enumerable:true})};var __copyProps=(e,t,s,n)=>{if(t&&typeof t==="object"||typeof t==="function"){for(let a of o(t))if(!r.call(e,a)&&a!==s)i(e,a,{get:()=>t[a],enumerable:!(n=A(t,a))||n.enumerable})}return e};var __toCommonJS=e=>__copyProps(i({},"__esModule",{value:true}),e);var n={};__export(n,{Octokit:()=>Q});e.exports=__toCommonJS(n);var a=s(3843);var c=s(2732);var l=s(8576);var u=s(5448);var p=s(2057);var g="5.2.0";var noop=()=>{};var h=console.warn.bind(console);var d=console.error.bind(console);var E=`octokit-core.js/${g} ${(0,a.getUserAgent)()}`;var Q=class{static{this.VERSION=g}static defaults(e){const t=class extends(this){constructor(...t){const s=t[0]||{};if(typeof e==="function"){super(e(s));return}super(Object.assign({},e,s,s.userAgent&&e.userAgent?{userAgent:`${s.userAgent} ${e.userAgent}`}:null))}};return t}static{this.plugins=[]}static plugin(...e){const t=this.plugins;const s=class extends(this){static{this.plugins=t.concat(e.filter((e=>!t.includes(e))))}};return s}constructor(e={}){const t=new c.Collection;const s={baseUrl:l.request.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},e.request,{hook:t.bind(null,"request")}),mediaType:{previews:[],format:""}};s.headers["user-agent"]=e.userAgent?`${e.userAgent} ${E}`:E;if(e.baseUrl){s.baseUrl=e.baseUrl}if(e.previews){s.mediaType.previews=e.previews}if(e.timeZone){s.headers["time-zone"]=e.timeZone}this.request=l.request.defaults(s);this.graphql=(0,u.withCustomRequest)(this.request).defaults(s);this.log=Object.assign({debug:noop,info:noop,warn:h,error:d},e.log);this.hook=t;if(!e.authStrategy){if(!e.auth){this.auth=async()=>({type:"unauthenticated"})}else{const s=(0,p.createTokenAuth)(e.auth);t.wrap("request",s.hook);this.auth=s}}else{const{authStrategy:s,...i}=e;const A=s(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:i},e.auth));t.wrap("request",A.hook);this.auth=A}const i=this.constructor;for(let t=0;t{"use strict";var i=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var o=Object.getOwnPropertyNames;var r=Object.prototype.hasOwnProperty;var __export=(e,t)=>{for(var s in t)i(e,s,{get:t[s],enumerable:true})};var __copyProps=(e,t,s,n)=>{if(t&&typeof t==="object"||typeof t==="function"){for(let a of o(t))if(!r.call(e,a)&&a!==s)i(e,a,{get:()=>t[a],enumerable:!(n=A(t,a))||n.enumerable})}return e};var __toCommonJS=e=>__copyProps(i({},"__esModule",{value:true}),e);var n={};__export(n,{endpoint:()=>g});e.exports=__toCommonJS(n);var a=s(3843);var c="9.0.6";var l=`octokit-endpoint.js/${c} ${(0,a.getUserAgent)()}`;var u={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":l},mediaType:{format:""}};function lowercaseKeys(e){if(!e){return{}}return Object.keys(e).reduce(((t,s)=>{t[s.toLowerCase()]=e[s];return t}),{})}function isPlainObject(e){if(typeof e!=="object"||e===null)return false;if(Object.prototype.toString.call(e)!=="[object Object]")return false;const t=Object.getPrototypeOf(e);if(t===null)return true;const s=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof s==="function"&&s instanceof s&&Function.prototype.call(s)===Function.prototype.call(e)}function mergeDeep(e,t){const s=Object.assign({},e);Object.keys(t).forEach((i=>{if(isPlainObject(t[i])){if(!(i in e))Object.assign(s,{[i]:t[i]});else s[i]=mergeDeep(e[i],t[i])}else{Object.assign(s,{[i]:t[i]})}}));return s}function removeUndefinedProperties(e){for(const t in e){if(e[t]===void 0){delete e[t]}}return e}function merge(e,t,s){if(typeof t==="string"){let[e,i]=t.split(" ");s=Object.assign(i?{method:e,url:i}:{url:e},s)}else{s=Object.assign({},t)}s.headers=lowercaseKeys(s.headers);removeUndefinedProperties(s);removeUndefinedProperties(s.headers);const i=mergeDeep(e||{},s);if(s.url==="/graphql"){if(e&&e.mediaType.previews?.length){i.mediaType.previews=e.mediaType.previews.filter((e=>!i.mediaType.previews.includes(e))).concat(i.mediaType.previews)}i.mediaType.previews=(i.mediaType.previews||[]).map((e=>e.replace(/-preview/,"")))}return i}function addQueryParameters(e,t){const s=/\?/.test(e)?"&":"?";const i=Object.keys(t);if(i.length===0){return e}return e+s+i.map((e=>{if(e==="q"){return"q="+t.q.split("+").map(encodeURIComponent).join("+")}return`${e}=${encodeURIComponent(t[e])}`})).join("&")}var p=/\{[^{}}]+\}/g;function removeNonChars(e){return e.replace(/(?:^\W+)|(?:(?e.concat(t)),[])}function omit(e,t){const s={__proto__:null};for(const i of Object.keys(e)){if(t.indexOf(i)===-1){s[i]=e[i]}}return s}function encodeReserved(e){return e.split(/(%[0-9A-Fa-f]{2})/g).map((function(e){if(!/%[0-9A-Fa-f]/.test(e)){e=encodeURI(e).replace(/%5B/g,"[").replace(/%5D/g,"]")}return e})).join("")}function encodeUnreserved(e){return encodeURIComponent(e).replace(/[!'()*]/g,(function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()}))}function encodeValue(e,t,s){t=e==="+"||e==="#"?encodeReserved(t):encodeUnreserved(t);if(s){return encodeUnreserved(s)+"="+t}else{return t}}function isDefined(e){return e!==void 0&&e!==null}function isKeyOperator(e){return e===";"||e==="&"||e==="?"}function getValues(e,t,s,i){var A=e[s],o=[];if(isDefined(A)&&A!==""){if(typeof A==="string"||typeof A==="number"||typeof A==="boolean"){A=A.toString();if(i&&i!=="*"){A=A.substring(0,parseInt(i,10))}o.push(encodeValue(t,A,isKeyOperator(t)?s:""))}else{if(i==="*"){if(Array.isArray(A)){A.filter(isDefined).forEach((function(e){o.push(encodeValue(t,e,isKeyOperator(t)?s:""))}))}else{Object.keys(A).forEach((function(e){if(isDefined(A[e])){o.push(encodeValue(t,A[e],e))}}))}}else{const e=[];if(Array.isArray(A)){A.filter(isDefined).forEach((function(s){e.push(encodeValue(t,s))}))}else{Object.keys(A).forEach((function(s){if(isDefined(A[s])){e.push(encodeUnreserved(s));e.push(encodeValue(t,A[s].toString()))}}))}if(isKeyOperator(t)){o.push(encodeUnreserved(s)+"="+e.join(","))}else if(e.length!==0){o.push(e.join(","))}}}}else{if(t===";"){if(isDefined(A)){o.push(encodeUnreserved(s))}}else if(A===""&&(t==="&"||t==="?")){o.push(encodeUnreserved(s)+"=")}else if(A===""){o.push("")}}return o}function parseUrl(e){return{expand:expand.bind(null,e)}}function expand(e,t){var s=["+","#",".","/",";","?","&"];e=e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,(function(e,i,A){if(i){let e="";const A=[];if(s.indexOf(i.charAt(0))!==-1){e=i.charAt(0);i=i.substr(1)}i.split(/,/g).forEach((function(s){var i=/([^:\*]*)(?::(\d+)|(\*))?/.exec(s);A.push(getValues(t,e,i[1],i[2]||i[3]))}));if(e&&e!=="+"){var o=",";if(e==="?"){o="&"}else if(e!=="#"){o=e}return(A.length!==0?e:"")+A.join(o)}else{return A.join(",")}}else{return encodeReserved(A)}}));if(e==="/"){return e}else{return e.replace(/\/$/,"")}}function parse(e){let t=e.method.toUpperCase();let s=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}");let i=Object.assign({},e.headers);let A;let o=omit(e,["method","baseUrl","url","headers","request","mediaType"]);const r=extractUrlVariableNames(s);s=parseUrl(s).expand(o);if(!/^http/.test(s)){s=e.baseUrl+s}const n=Object.keys(e).filter((e=>r.includes(e))).concat("baseUrl");const a=omit(o,n);const c=/application\/octet-stream/i.test(i.accept);if(!c){if(e.mediaType.format){i.accept=i.accept.split(/,/).map((t=>t.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${e.mediaType.format}`))).join(",")}if(s.endsWith("/graphql")){if(e.mediaType.previews?.length){const t=i.accept.match(/(?{const s=e.mediaType.format?`.${e.mediaType.format}`:"+json";return`application/vnd.github.${t}-preview${s}`})).join(",")}}}if(["GET","HEAD"].includes(t)){s=addQueryParameters(s,a)}else{if("data"in a){A=a.data}else{if(Object.keys(a).length){A=a}}}if(!i["content-type"]&&typeof A!=="undefined"){i["content-type"]="application/json; charset=utf-8"}if(["PATCH","PUT"].includes(t)&&typeof A==="undefined"){A=""}return Object.assign({method:t,url:s,headers:i},typeof A!=="undefined"?{body:A}:null,e.request?{request:e.request}:null)}function endpointWithDefaults(e,t,s){return parse(merge(e,t,s))}function withDefaults(e,t){const s=merge(e,t);const i=endpointWithDefaults.bind(null,s);return Object.assign(i,{DEFAULTS:s,defaults:withDefaults.bind(null,s),merge:merge.bind(null,s),parse:parse})}var g=withDefaults(null,u);0&&0},5448:(e,t,s)=>{"use strict";var i=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var o=Object.getOwnPropertyNames;var r=Object.prototype.hasOwnProperty;var __export=(e,t)=>{for(var s in t)i(e,s,{get:t[s],enumerable:true})};var __copyProps=(e,t,s,n)=>{if(t&&typeof t==="object"||typeof t==="function"){for(let a of o(t))if(!r.call(e,a)&&a!==s)i(e,a,{get:()=>t[a],enumerable:!(n=A(t,a))||n.enumerable})}return e};var __toCommonJS=e=>__copyProps(i({},"__esModule",{value:true}),e);var n={};__export(n,{GraphqlResponseError:()=>g,graphql:()=>Q,withCustomRequest:()=>withCustomRequest});e.exports=__toCommonJS(n);var a=s(8576);var c=s(3843);var l="7.1.0";var u=s(8576);var p=s(8576);function _buildMessageForResponseErrors(e){return`Request failed due to following response errors:\n`+e.errors.map((e=>` - ${e.message}`)).join("\n")}var g=class extends Error{constructor(e,t,s){super(_buildMessageForResponseErrors(s));this.request=e;this.headers=t;this.response=s;this.name="GraphqlResponseError";this.errors=s.errors;this.data=s.data;if(Error.captureStackTrace){Error.captureStackTrace(this,this.constructor)}}};var h=["method","baseUrl","url","headers","request","query","mediaType"];var d=["query","method","url"];var E=/\/api\/v3\/?$/;function graphql(e,t,s){if(s){if(typeof t==="string"&&"query"in s){return Promise.reject(new Error(`[@octokit/graphql] "query" cannot be used as variable name`))}for(const e in s){if(!d.includes(e))continue;return Promise.reject(new Error(`[@octokit/graphql] "${e}" cannot be used as variable name`))}}const i=typeof t==="string"?Object.assign({query:t},s):t;const A=Object.keys(i).reduce(((e,t)=>{if(h.includes(t)){e[t]=i[t];return e}if(!e.variables){e.variables={}}e.variables[t]=i[t];return e}),{});const o=i.baseUrl||e.endpoint.DEFAULTS.baseUrl;if(E.test(o)){A.url=o.replace(E,"/api/graphql")}return e(A).then((e=>{if(e.data.errors){const t={};for(const s of Object.keys(e.headers)){t[s]=e.headers[s]}throw new g(A,t,e.data)}return e.data.data}))}function withDefaults(e,t){const s=e.defaults(t);const newApi=(e,t)=>graphql(s,e,t);return Object.assign(newApi,{defaults:withDefaults.bind(null,s),endpoint:s.endpoint})}var Q=withDefaults(a.request,{headers:{"user-agent":`octokit-graphql.js/${l} ${(0,c.getUserAgent)()}`},method:"POST",url:"/graphql"});function withCustomRequest(e){return withDefaults(e,{method:"POST",url:"/graphql"})}0&&0},7731:e=>{"use strict";var t=Object.defineProperty;var s=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var A=Object.prototype.hasOwnProperty;var __export=(e,s)=>{for(var i in s)t(e,i,{get:s[i],enumerable:true})};var __copyProps=(e,o,r,n)=>{if(o&&typeof o==="object"||typeof o==="function"){for(let a of i(o))if(!A.call(e,a)&&a!==r)t(e,a,{get:()=>o[a],enumerable:!(n=s(o,a))||n.enumerable})}return e};var __toCommonJS=e=>__copyProps(t({},"__esModule",{value:true}),e);var o={};__export(o,{composePaginateRest:()=>n,isPaginatingEndpoint:()=>isPaginatingEndpoint,paginateRest:()=>paginateRest,paginatingEndpoints:()=>a});e.exports=__toCommonJS(o);var r="9.2.2";function normalizePaginatedListResponse(e){if(!e.data){return{...e,data:[]}}const t="total_count"in e.data&&!("url"in e.data);if(!t)return e;const s=e.data.incomplete_results;const i=e.data.repository_selection;const A=e.data.total_count;delete e.data.incomplete_results;delete e.data.repository_selection;delete e.data.total_count;const o=Object.keys(e.data)[0];const r=e.data[o];e.data=r;if(typeof s!=="undefined"){e.data.incomplete_results=s}if(typeof i!=="undefined"){e.data.repository_selection=i}e.data.total_count=A;return e}function iterator(e,t,s){const i=typeof t==="function"?t.endpoint(s):e.request.endpoint(t,s);const A=typeof t==="function"?t:e.request;const o=i.method;const r=i.headers;let n=i.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!n)return{done:true};try{const e=await A({method:o,url:n,headers:r});const t=normalizePaginatedListResponse(e);n=((t.headers.link||"").match(/<([^<>]+)>;\s*rel="next"/)||[])[1];return{value:t}}catch(e){if(e.status!==409)throw e;n="";return{value:{status:200,headers:{},data:[]}}}}})}}function paginate(e,t,s,i){if(typeof s==="function"){i=s;s=void 0}return gather(e,[],iterator(e,t,s)[Symbol.asyncIterator](),i)}function gather(e,t,s,i){return s.next().then((A=>{if(A.done){return t}let o=false;function done(){o=true}t=t.concat(i?i(A.value,done):A.value.data);if(o){return t}return gather(e,t,s,i)}))}var n=Object.assign(paginate,{iterator:iterator});var a=["GET /advisories","GET /app/hook/deliveries","GET /app/installation-requests","GET /app/installations","GET /assignments/{assignment_id}/accepted_assignments","GET /classrooms","GET /classrooms/{classroom_id}/assignments","GET /enterprises/{enterprise}/dependabot/alerts","GET /enterprises/{enterprise}/secret-scanning/alerts","GET /events","GET /gists","GET /gists/public","GET /gists/starred","GET /gists/{gist_id}/comments","GET /gists/{gist_id}/commits","GET /gists/{gist_id}/forks","GET /installation/repositories","GET /issues","GET /licenses","GET /marketplace_listing/plans","GET /marketplace_listing/plans/{plan_id}/accounts","GET /marketplace_listing/stubbed/plans","GET /marketplace_listing/stubbed/plans/{plan_id}/accounts","GET /networks/{owner}/{repo}/events","GET /notifications","GET /organizations","GET /orgs/{org}/actions/cache/usage-by-repository","GET /orgs/{org}/actions/permissions/repositories","GET /orgs/{org}/actions/runners","GET /orgs/{org}/actions/secrets","GET /orgs/{org}/actions/secrets/{secret_name}/repositories","GET /orgs/{org}/actions/variables","GET /orgs/{org}/actions/variables/{name}/repositories","GET /orgs/{org}/blocks","GET /orgs/{org}/code-scanning/alerts","GET /orgs/{org}/codespaces","GET /orgs/{org}/codespaces/secrets","GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories","GET /orgs/{org}/copilot/billing/seats","GET /orgs/{org}/dependabot/alerts","GET /orgs/{org}/dependabot/secrets","GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories","GET /orgs/{org}/events","GET /orgs/{org}/failed_invitations","GET /orgs/{org}/hooks","GET /orgs/{org}/hooks/{hook_id}/deliveries","GET /orgs/{org}/installations","GET /orgs/{org}/invitations","GET /orgs/{org}/invitations/{invitation_id}/teams","GET /orgs/{org}/issues","GET /orgs/{org}/members","GET /orgs/{org}/members/{username}/codespaces","GET /orgs/{org}/migrations","GET /orgs/{org}/migrations/{migration_id}/repositories","GET /orgs/{org}/organization-roles/{role_id}/teams","GET /orgs/{org}/organization-roles/{role_id}/users","GET /orgs/{org}/outside_collaborators","GET /orgs/{org}/packages","GET /orgs/{org}/packages/{package_type}/{package_name}/versions","GET /orgs/{org}/personal-access-token-requests","GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories","GET /orgs/{org}/personal-access-tokens","GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories","GET /orgs/{org}/projects","GET /orgs/{org}/properties/values","GET /orgs/{org}/public_members","GET /orgs/{org}/repos","GET /orgs/{org}/rulesets","GET /orgs/{org}/rulesets/rule-suites","GET /orgs/{org}/secret-scanning/alerts","GET /orgs/{org}/security-advisories","GET /orgs/{org}/teams","GET /orgs/{org}/teams/{team_slug}/discussions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions","GET /orgs/{org}/teams/{team_slug}/invitations","GET /orgs/{org}/teams/{team_slug}/members","GET /orgs/{org}/teams/{team_slug}/projects","GET /orgs/{org}/teams/{team_slug}/repos","GET /orgs/{org}/teams/{team_slug}/teams","GET /projects/columns/{column_id}/cards","GET /projects/{project_id}/collaborators","GET /projects/{project_id}/columns","GET /repos/{owner}/{repo}/actions/artifacts","GET /repos/{owner}/{repo}/actions/caches","GET /repos/{owner}/{repo}/actions/organization-secrets","GET /repos/{owner}/{repo}/actions/organization-variables","GET /repos/{owner}/{repo}/actions/runners","GET /repos/{owner}/{repo}/actions/runs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts","GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs","GET /repos/{owner}/{repo}/actions/secrets","GET /repos/{owner}/{repo}/actions/variables","GET /repos/{owner}/{repo}/actions/workflows","GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs","GET /repos/{owner}/{repo}/activity","GET /repos/{owner}/{repo}/assignees","GET /repos/{owner}/{repo}/branches","GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations","GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs","GET /repos/{owner}/{repo}/code-scanning/alerts","GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances","GET /repos/{owner}/{repo}/code-scanning/analyses","GET /repos/{owner}/{repo}/codespaces","GET /repos/{owner}/{repo}/codespaces/devcontainers","GET /repos/{owner}/{repo}/codespaces/secrets","GET /repos/{owner}/{repo}/collaborators","GET /repos/{owner}/{repo}/comments","GET /repos/{owner}/{repo}/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/commits","GET /repos/{owner}/{repo}/commits/{commit_sha}/comments","GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls","GET /repos/{owner}/{repo}/commits/{ref}/check-runs","GET /repos/{owner}/{repo}/commits/{ref}/check-suites","GET /repos/{owner}/{repo}/commits/{ref}/status","GET /repos/{owner}/{repo}/commits/{ref}/statuses","GET /repos/{owner}/{repo}/contributors","GET /repos/{owner}/{repo}/dependabot/alerts","GET /repos/{owner}/{repo}/dependabot/secrets","GET /repos/{owner}/{repo}/deployments","GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses","GET /repos/{owner}/{repo}/environments","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps","GET /repos/{owner}/{repo}/events","GET /repos/{owner}/{repo}/forks","GET /repos/{owner}/{repo}/hooks","GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries","GET /repos/{owner}/{repo}/invitations","GET /repos/{owner}/{repo}/issues","GET /repos/{owner}/{repo}/issues/comments","GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/issues/events","GET /repos/{owner}/{repo}/issues/{issue_number}/comments","GET /repos/{owner}/{repo}/issues/{issue_number}/events","GET /repos/{owner}/{repo}/issues/{issue_number}/labels","GET /repos/{owner}/{repo}/issues/{issue_number}/reactions","GET /repos/{owner}/{repo}/issues/{issue_number}/timeline","GET /repos/{owner}/{repo}/keys","GET /repos/{owner}/{repo}/labels","GET /repos/{owner}/{repo}/milestones","GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels","GET /repos/{owner}/{repo}/notifications","GET /repos/{owner}/{repo}/pages/builds","GET /repos/{owner}/{repo}/projects","GET /repos/{owner}/{repo}/pulls","GET /repos/{owner}/{repo}/pulls/comments","GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/pulls/{pull_number}/comments","GET /repos/{owner}/{repo}/pulls/{pull_number}/commits","GET /repos/{owner}/{repo}/pulls/{pull_number}/files","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments","GET /repos/{owner}/{repo}/releases","GET /repos/{owner}/{repo}/releases/{release_id}/assets","GET /repos/{owner}/{repo}/releases/{release_id}/reactions","GET /repos/{owner}/{repo}/rules/branches/{branch}","GET /repos/{owner}/{repo}/rulesets","GET /repos/{owner}/{repo}/rulesets/rule-suites","GET /repos/{owner}/{repo}/secret-scanning/alerts","GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations","GET /repos/{owner}/{repo}/security-advisories","GET /repos/{owner}/{repo}/stargazers","GET /repos/{owner}/{repo}/subscribers","GET /repos/{owner}/{repo}/tags","GET /repos/{owner}/{repo}/teams","GET /repos/{owner}/{repo}/topics","GET /repositories","GET /repositories/{repository_id}/environments/{environment_name}/secrets","GET /repositories/{repository_id}/environments/{environment_name}/variables","GET /search/code","GET /search/commits","GET /search/issues","GET /search/labels","GET /search/repositories","GET /search/topics","GET /search/users","GET /teams/{team_id}/discussions","GET /teams/{team_id}/discussions/{discussion_number}/comments","GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /teams/{team_id}/discussions/{discussion_number}/reactions","GET /teams/{team_id}/invitations","GET /teams/{team_id}/members","GET /teams/{team_id}/projects","GET /teams/{team_id}/repos","GET /teams/{team_id}/teams","GET /user/blocks","GET /user/codespaces","GET /user/codespaces/secrets","GET /user/emails","GET /user/followers","GET /user/following","GET /user/gpg_keys","GET /user/installations","GET /user/installations/{installation_id}/repositories","GET /user/issues","GET /user/keys","GET /user/marketplace_purchases","GET /user/marketplace_purchases/stubbed","GET /user/memberships/orgs","GET /user/migrations","GET /user/migrations/{migration_id}/repositories","GET /user/orgs","GET /user/packages","GET /user/packages/{package_type}/{package_name}/versions","GET /user/public_emails","GET /user/repos","GET /user/repository_invitations","GET /user/social_accounts","GET /user/ssh_signing_keys","GET /user/starred","GET /user/subscriptions","GET /user/teams","GET /users","GET /users/{username}/events","GET /users/{username}/events/orgs/{org}","GET /users/{username}/events/public","GET /users/{username}/followers","GET /users/{username}/following","GET /users/{username}/gists","GET /users/{username}/gpg_keys","GET /users/{username}/keys","GET /users/{username}/orgs","GET /users/{username}/packages","GET /users/{username}/projects","GET /users/{username}/received_events","GET /users/{username}/received_events/public","GET /users/{username}/repos","GET /users/{username}/social_accounts","GET /users/{username}/ssh_signing_keys","GET /users/{username}/starred","GET /users/{username}/subscriptions"];function isPaginatingEndpoint(e){if(typeof e==="string"){return a.includes(e)}else{return false}}function paginateRest(e){return{paginate:Object.assign(paginate.bind(null,e),{iterator:iterator.bind(null,e)})}}paginateRest.VERSION=r;0&&0},5726:e=>{"use strict";var t=Object.defineProperty;var s=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var A=Object.prototype.hasOwnProperty;var __export=(e,s)=>{for(var i in s)t(e,i,{get:s[i],enumerable:true})};var __copyProps=(e,o,r,n)=>{if(o&&typeof o==="object"||typeof o==="function"){for(let a of i(o))if(!A.call(e,a)&&a!==r)t(e,a,{get:()=>o[a],enumerable:!(n=s(o,a))||n.enumerable})}return e};var __toCommonJS=e=>__copyProps(t({},"__esModule",{value:true}),e);var o={};__export(o,{legacyRestEndpointMethods:()=>legacyRestEndpointMethods,restEndpointMethods:()=>restEndpointMethods});e.exports=__toCommonJS(o);var r="10.4.1";var n={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repositories/{repository_id}/environments/{environment_name}/variables"],createOrUpdateEnvironmentSecret:["PUT /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteEnvironmentSecret:["DELETE /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listEnvironmentSecrets:["GET /repositories/{repository_id}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repositories/{repository_id}/environments/{environment_name}/variables"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{cancelImport:["DELETE /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.cancelImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#cancel-an-import"}],deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getCommitAuthors:["GET /repos/{owner}/{repo}/import/authors",{},{deprecated:"octokit.rest.migrations.getCommitAuthors() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-commit-authors"}],getImportStatus:["GET /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.getImportStatus() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-an-import-status"}],getLargeFiles:["GET /repos/{owner}/{repo}/import/large_files",{},{deprecated:"octokit.rest.migrations.getLargeFiles() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-large-files"}],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],mapCommitAuthor:["PATCH /repos/{owner}/{repo}/import/authors/{author_id}",{},{deprecated:"octokit.rest.migrations.mapCommitAuthor() is deprecated, see https://docs.github.com/rest/migrations/source-imports#map-a-commit-author"}],setLfsPreference:["PATCH /repos/{owner}/{repo}/import/lfs",{},{deprecated:"octokit.rest.migrations.setLfsPreference() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-git-lfs-preference"}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],startImport:["PUT /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.startImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#start-an-import"}],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"],updateImport:["PATCH /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.updateImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-an-import"}]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}"],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createCustomOrganizationRole:["POST /orgs/{org}/organization-roles"],createInvitation:["POST /orgs/{org}/invitations"],createOrUpdateCustomProperties:["PATCH /orgs/{org}/properties/schema"],createOrUpdateCustomPropertiesValuesForRepos:["PATCH /orgs/{org}/properties/values"],createOrUpdateCustomProperty:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],createWebhook:["POST /orgs/{org}/hooks"],delete:["DELETE /orgs/{org}"],deleteCustomOrganizationRole:["DELETE /orgs/{org}/organization-roles/{role_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],enableOrDisableSecurityProductOnAllOrgRepos:["POST /orgs/{org}/{security_product}/{enablement}"],get:["GET /orgs/{org}"],getAllCustomProperties:["GET /orgs/{org}/properties/schema"],getCustomProperty:["GET /orgs/{org}/properties/schema/{custom_property_name}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listBlockedUsers:["GET /orgs/{org}/blocks"],listCustomPropertiesValuesForRepos:["GET /orgs/{org}/properties/values"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers"],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],patchCustomOrganizationRole:["PATCH /orgs/{org}/organization-roles/{role_id}"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeCustomProperty:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}"],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},projects:{addCollaborator:["PUT /projects/{project_id}/collaborators/{username}"],createCard:["POST /projects/columns/{column_id}/cards"],createColumn:["POST /projects/{project_id}/columns"],createForAuthenticatedUser:["POST /user/projects"],createForOrg:["POST /orgs/{org}/projects"],createForRepo:["POST /repos/{owner}/{repo}/projects"],delete:["DELETE /projects/{project_id}"],deleteCard:["DELETE /projects/columns/cards/{card_id}"],deleteColumn:["DELETE /projects/columns/{column_id}"],get:["GET /projects/{project_id}"],getCard:["GET /projects/columns/cards/{card_id}"],getColumn:["GET /projects/columns/{column_id}"],getPermissionForUser:["GET /projects/{project_id}/collaborators/{username}/permission"],listCards:["GET /projects/columns/{column_id}/cards"],listCollaborators:["GET /projects/{project_id}/collaborators"],listColumns:["GET /projects/{project_id}/columns"],listForOrg:["GET /orgs/{org}/projects"],listForRepo:["GET /repos/{owner}/{repo}/projects"],listForUser:["GET /users/{username}/projects"],moveCard:["POST /projects/columns/cards/{card_id}/moves"],moveColumn:["POST /projects/columns/{column_id}/moves"],removeCollaborator:["DELETE /projects/{project_id}/collaborators/{username}"],update:["PATCH /projects/{project_id}"],updateCard:["PATCH /projects/columns/cards/{card_id}"],updateColumn:["PATCH /projects/columns/{column_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateCustomPropertiesValues:["PATCH /repos/{owner}/{repo}/properties/values"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createTagProtection:["POST /repos/{owner}/{repo}/tags/protection"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteTagProtection:["DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getCustomPropertiesValues:["GET /repos/{owner}/{repo}/properties/values"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTagProtection:["GET /repos/{owner}/{repo}/tags/protection"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/secret-scanning/alerts"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateProjectPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForProjectInOrg:["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listProjectsInOrg:["GET /orgs/{org}/teams/{team_slug}/projects"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeProjectInOrg:["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}};var a=n;var c=new Map;for(const[e,t]of Object.entries(a)){for(const[s,i]of Object.entries(t)){const[t,A,o]=i;const[r,n]=t.split(/ /);const a=Object.assign({method:r,url:n},A);if(!c.has(e)){c.set(e,new Map)}c.get(e).set(s,{scope:e,methodName:s,endpointDefaults:a,decorations:o})}}var l={has({scope:e},t){return c.get(e).has(t)},getOwnPropertyDescriptor(e,t){return{value:this.get(e,t),configurable:true,writable:true,enumerable:true}},defineProperty(e,t,s){Object.defineProperty(e.cache,t,s);return true},deleteProperty(e,t){delete e.cache[t];return true},ownKeys({scope:e}){return[...c.get(e).keys()]},set(e,t,s){return e.cache[t]=s},get({octokit:e,scope:t,cache:s},i){if(s[i]){return s[i]}const A=c.get(t).get(i);if(!A){return void 0}const{endpointDefaults:o,decorations:r}=A;if(r){s[i]=decorate(e,t,i,o,r)}else{s[i]=e.request.defaults(o)}return s[i]}};function endpointsToMethods(e){const t={};for(const s of c.keys()){t[s]=new Proxy({octokit:e,scope:s,cache:{}},l)}return t}function decorate(e,t,s,i,A){const o=e.request.defaults(i);function withDecorations(...i){let r=o.endpoint.merge(...i);if(A.mapToData){r=Object.assign({},r,{data:r[A.mapToData],[A.mapToData]:void 0});return o(r)}if(A.renamed){const[i,o]=A.renamed;e.log.warn(`octokit.${t}.${s}() has been renamed to octokit.${i}.${o}()`)}if(A.deprecated){e.log.warn(A.deprecated)}if(A.renamedParameters){const r=o.endpoint.merge(...i);for(const[i,o]of Object.entries(A.renamedParameters)){if(i in r){e.log.warn(`"${i}" parameter is deprecated for "octokit.${t}.${s}()". Use "${o}" instead`);if(!(o in r)){r[o]=r[i]}delete r[i]}}return o(r)}return o(...i)}return Object.assign(withDecorations,o)}function restEndpointMethods(e){const t=endpointsToMethods(e);return{rest:t}}restEndpointMethods.VERSION=r;function legacyRestEndpointMethods(e){const t=endpointsToMethods(e);return{...t,rest:t}}legacyRestEndpointMethods.VERSION=r;0&&0},7651:(e,t,s)=>{"use strict";var i=Object.create;var A=Object.defineProperty;var o=Object.getOwnPropertyDescriptor;var r=Object.getOwnPropertyNames;var n=Object.getPrototypeOf;var a=Object.prototype.hasOwnProperty;var __export=(e,t)=>{for(var s in t)A(e,s,{get:t[s],enumerable:true})};var __copyProps=(e,t,s,i)=>{if(t&&typeof t==="object"||typeof t==="function"){for(let n of r(t))if(!a.call(e,n)&&n!==s)A(e,n,{get:()=>t[n],enumerable:!(i=o(t,n))||i.enumerable})}return e};var __toESM=(e,t,s)=>(s=e!=null?i(n(e)):{},__copyProps(t||!e||!e.__esModule?A(s,"default",{value:e,enumerable:true}):s,e));var __toCommonJS=e=>__copyProps(A({},"__esModule",{value:true}),e);var c={};__export(c,{RequestError:()=>h});e.exports=__toCommonJS(c);var l=s(4150);var u=__toESM(s(5560));var p=(0,u.default)((e=>console.warn(e)));var g=(0,u.default)((e=>console.warn(e)));var h=class extends Error{constructor(e,t,s){super(e);if(Error.captureStackTrace){Error.captureStackTrace(this,this.constructor)}this.name="HttpError";this.status=t;let i;if("headers"in s&&typeof s.headers!=="undefined"){i=s.headers}if("response"in s){this.response=s.response;i=s.response.headers}const A=Object.assign({},s.request);if(s.request.headers.authorization){A.headers=Object.assign({},s.request.headers,{authorization:s.request.headers.authorization.replace(/(?{"use strict";var i=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var o=Object.getOwnPropertyNames;var r=Object.prototype.hasOwnProperty;var __export=(e,t)=>{for(var s in t)i(e,s,{get:t[s],enumerable:true})};var __copyProps=(e,t,s,n)=>{if(t&&typeof t==="object"||typeof t==="function"){for(let a of o(t))if(!r.call(e,a)&&a!==s)i(e,a,{get:()=>t[a],enumerable:!(n=A(t,a))||n.enumerable})}return e};var __toCommonJS=e=>__copyProps(i({},"__esModule",{value:true}),e);var n={};__export(n,{request:()=>p});e.exports=__toCommonJS(n);var a=s(4806);var c=s(3843);var l="8.4.1";function isPlainObject(e){if(typeof e!=="object"||e===null)return false;if(Object.prototype.toString.call(e)!=="[object Object]")return false;const t=Object.getPrototypeOf(e);if(t===null)return true;const s=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof s==="function"&&s instanceof s&&Function.prototype.call(s)===Function.prototype.call(e)}var u=s(7651);function getBufferResponse(e){return e.arrayBuffer()}function fetchWrapper(e){var t,s,i,A;const o=e.request&&e.request.log?e.request.log:console;const r=((t=e.request)==null?void 0:t.parseSuccessResponseBody)!==false;if(isPlainObject(e.body)||Array.isArray(e.body)){e.body=JSON.stringify(e.body)}let n={};let a;let c;let{fetch:l}=globalThis;if((s=e.request)==null?void 0:s.fetch){l=e.request.fetch}if(!l){throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing")}return l(e.url,{method:e.method,body:e.body,redirect:(i=e.request)==null?void 0:i.redirect,headers:e.headers,signal:(A=e.request)==null?void 0:A.signal,...e.body&&{duplex:"half"}}).then((async t=>{c=t.url;a=t.status;for(const e of t.headers){n[e[0]]=e[1]}if("deprecation"in n){const t=n.link&&n.link.match(/<([^<>]+)>; rel="deprecation"/);const s=t&&t.pop();o.warn(`[@octokit/request] "${e.method} ${e.url}" is deprecated. It is scheduled to be removed on ${n.sunset}${s?`. See ${s}`:""}`)}if(a===204||a===205){return}if(e.method==="HEAD"){if(a<400){return}throw new u.RequestError(t.statusText,a,{response:{url:c,status:a,headers:n,data:void 0},request:e})}if(a===304){throw new u.RequestError("Not modified",a,{response:{url:c,status:a,headers:n,data:await getResponseData(t)},request:e})}if(a>=400){const s=await getResponseData(t);const i=new u.RequestError(toErrorMessage(s),a,{response:{url:c,status:a,headers:n,data:s},request:e});throw i}return r?await getResponseData(t):t.body})).then((e=>({status:a,url:c,headers:n,data:e}))).catch((t=>{if(t instanceof u.RequestError)throw t;else if(t.name==="AbortError")throw t;let s=t.message;if(t.name==="TypeError"&&"cause"in t){if(t.cause instanceof Error){s=t.cause.message}else if(typeof t.cause==="string"){s=t.cause}}throw new u.RequestError(s,500,{request:e})}))}async function getResponseData(e){const t=e.headers.get("content-type");if(/application\/json/.test(t)){return e.json().catch((()=>e.text())).catch((()=>""))}if(!t||/^text\/|charset=utf-8$/.test(t)){return e.text()}return getBufferResponse(e)}function toErrorMessage(e){if(typeof e==="string")return e;let t;if("documentation_url"in e){t=` - ${e.documentation_url}`}else{t=""}if("message"in e){if(Array.isArray(e.errors)){return`${e.message}: ${e.errors.map(JSON.stringify).join(", ")}${t}`}return`${e.message}${t}`}return`Unknown error: ${JSON.stringify(e)}`}function withDefaults(e,t){const s=e.defaults(t);const newApi=function(e,t){const i=s.merge(e,t);if(!i.request||!i.request.hook){return fetchWrapper(s.parse(i))}const request2=(e,t)=>fetchWrapper(s.parse(s.merge(e,t)));Object.assign(request2,{endpoint:s,defaults:withDefaults.bind(null,s)});return i.request.hook(request2,i)};return Object.assign(newApi,{endpoint:s,defaults:withDefaults.bind(null,s)})}var p=withDefaults(a.endpoint,{headers:{"user-agent":`octokit-request.js/${l} ${(0,c.getUserAgent)()}`}});0&&0},4552:function(e,t){"use strict";var s=this&&this.__awaiter||function(e,t,s,i){function adopt(e){return e instanceof s?e:new s((function(t){t(e)}))}return new(s||(s=Promise))((function(s,A){function fulfilled(e){try{step(i.next(e))}catch(e){A(e)}}function rejected(e){try{step(i["throw"](e))}catch(e){A(e)}}function step(e){e.done?s(e.value):adopt(e.value).then(fulfilled,rejected)}step((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.PersonalAccessTokenCredentialHandler=t.BearerCredentialHandler=t.BasicCredentialHandler=void 0;class BasicCredentialHandler{constructor(e,t){this.username=e;this.password=t}prepareRequest(e){if(!e.headers){throw Error("The request has no headers")}e.headers["Authorization"]=`Basic ${Buffer.from(`${this.username}:${this.password}`).toString("base64")}`}canHandleAuthentication(){return false}handleAuthentication(){return s(this,void 0,void 0,(function*(){throw new Error("not implemented")}))}}t.BasicCredentialHandler=BasicCredentialHandler;class BearerCredentialHandler{constructor(e){this.token=e}prepareRequest(e){if(!e.headers){throw Error("The request has no headers")}e.headers["Authorization"]=`Bearer ${this.token}`}canHandleAuthentication(){return false}handleAuthentication(){return s(this,void 0,void 0,(function*(){throw new Error("not implemented")}))}}t.BearerCredentialHandler=BearerCredentialHandler;class PersonalAccessTokenCredentialHandler{constructor(e){this.token=e}prepareRequest(e){if(!e.headers){throw Error("The request has no headers")}e.headers["Authorization"]=`Basic ${Buffer.from(`PAT:${this.token}`).toString("base64")}`}canHandleAuthentication(){return false}handleAuthentication(){return s(this,void 0,void 0,(function*(){throw new Error("not implemented")}))}}t.PersonalAccessTokenCredentialHandler=PersonalAccessTokenCredentialHandler},4844:function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){if(i===undefined)i=s;var A=Object.getOwnPropertyDescriptor(t,s);if(!A||("get"in A?!t.__esModule:A.writable||A.configurable)){A={enumerable:true,get:function(){return t[s]}}}Object.defineProperty(e,i,A)}:function(e,t,s,i){if(i===undefined)i=s;e[i]=t[s]});var A=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var s in e)if(s!=="default"&&Object.prototype.hasOwnProperty.call(e,s))i(t,e,s);A(t,e);return t};var r=this&&this.__awaiter||function(e,t,s,i){function adopt(e){return e instanceof s?e:new s((function(t){t(e)}))}return new(s||(s=Promise))((function(s,A){function fulfilled(e){try{step(i.next(e))}catch(e){A(e)}}function rejected(e){try{step(i["throw"](e))}catch(e){A(e)}}function step(e){e.done?s(e.value):adopt(e.value).then(fulfilled,rejected)}step((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.HttpClient=t.isHttps=t.HttpClientResponse=t.HttpClientError=t.getProxyUrl=t.MediaTypes=t.Headers=t.HttpCodes=void 0;const n=o(s(8611));const a=o(s(5692));const c=o(s(4988));const l=o(s(770));const u=s(6752);var p;(function(e){e[e["OK"]=200]="OK";e[e["MultipleChoices"]=300]="MultipleChoices";e[e["MovedPermanently"]=301]="MovedPermanently";e[e["ResourceMoved"]=302]="ResourceMoved";e[e["SeeOther"]=303]="SeeOther";e[e["NotModified"]=304]="NotModified";e[e["UseProxy"]=305]="UseProxy";e[e["SwitchProxy"]=306]="SwitchProxy";e[e["TemporaryRedirect"]=307]="TemporaryRedirect";e[e["PermanentRedirect"]=308]="PermanentRedirect";e[e["BadRequest"]=400]="BadRequest";e[e["Unauthorized"]=401]="Unauthorized";e[e["PaymentRequired"]=402]="PaymentRequired";e[e["Forbidden"]=403]="Forbidden";e[e["NotFound"]=404]="NotFound";e[e["MethodNotAllowed"]=405]="MethodNotAllowed";e[e["NotAcceptable"]=406]="NotAcceptable";e[e["ProxyAuthenticationRequired"]=407]="ProxyAuthenticationRequired";e[e["RequestTimeout"]=408]="RequestTimeout";e[e["Conflict"]=409]="Conflict";e[e["Gone"]=410]="Gone";e[e["TooManyRequests"]=429]="TooManyRequests";e[e["InternalServerError"]=500]="InternalServerError";e[e["NotImplemented"]=501]="NotImplemented";e[e["BadGateway"]=502]="BadGateway";e[e["ServiceUnavailable"]=503]="ServiceUnavailable";e[e["GatewayTimeout"]=504]="GatewayTimeout"})(p||(t.HttpCodes=p={}));var g;(function(e){e["Accept"]="accept";e["ContentType"]="content-type"})(g||(t.Headers=g={}));var h;(function(e){e["ApplicationJson"]="application/json"})(h||(t.MediaTypes=h={}));function getProxyUrl(e){const t=c.getProxyUrl(new URL(e));return t?t.href:""}t.getProxyUrl=getProxyUrl;const d=[p.MovedPermanently,p.ResourceMoved,p.SeeOther,p.TemporaryRedirect,p.PermanentRedirect];const E=[p.BadGateway,p.ServiceUnavailable,p.GatewayTimeout];const Q=["OPTIONS","GET","DELETE","HEAD"];const C=10;const B=5;class HttpClientError extends Error{constructor(e,t){super(e);this.name="HttpClientError";this.statusCode=t;Object.setPrototypeOf(this,HttpClientError.prototype)}}t.HttpClientError=HttpClientError;class HttpClientResponse{constructor(e){this.message=e}readBody(){return r(this,void 0,void 0,(function*(){return new Promise((e=>r(this,void 0,void 0,(function*(){let t=Buffer.alloc(0);this.message.on("data",(e=>{t=Buffer.concat([t,e])}));this.message.on("end",(()=>{e(t.toString())}))}))))}))}readBodyBuffer(){return r(this,void 0,void 0,(function*(){return new Promise((e=>r(this,void 0,void 0,(function*(){const t=[];this.message.on("data",(e=>{t.push(e)}));this.message.on("end",(()=>{e(Buffer.concat(t))}))}))))}))}}t.HttpClientResponse=HttpClientResponse;function isHttps(e){const t=new URL(e);return t.protocol==="https:"}t.isHttps=isHttps;class HttpClient{constructor(e,t,s){this._ignoreSslError=false;this._allowRedirects=true;this._allowRedirectDowngrade=false;this._maxRedirects=50;this._allowRetries=false;this._maxRetries=1;this._keepAlive=false;this._disposed=false;this.userAgent=e;this.handlers=t||[];this.requestOptions=s;if(s){if(s.ignoreSslError!=null){this._ignoreSslError=s.ignoreSslError}this._socketTimeout=s.socketTimeout;if(s.allowRedirects!=null){this._allowRedirects=s.allowRedirects}if(s.allowRedirectDowngrade!=null){this._allowRedirectDowngrade=s.allowRedirectDowngrade}if(s.maxRedirects!=null){this._maxRedirects=Math.max(s.maxRedirects,0)}if(s.keepAlive!=null){this._keepAlive=s.keepAlive}if(s.allowRetries!=null){this._allowRetries=s.allowRetries}if(s.maxRetries!=null){this._maxRetries=s.maxRetries}}}options(e,t){return r(this,void 0,void 0,(function*(){return this.request("OPTIONS",e,null,t||{})}))}get(e,t){return r(this,void 0,void 0,(function*(){return this.request("GET",e,null,t||{})}))}del(e,t){return r(this,void 0,void 0,(function*(){return this.request("DELETE",e,null,t||{})}))}post(e,t,s){return r(this,void 0,void 0,(function*(){return this.request("POST",e,t,s||{})}))}patch(e,t,s){return r(this,void 0,void 0,(function*(){return this.request("PATCH",e,t,s||{})}))}put(e,t,s){return r(this,void 0,void 0,(function*(){return this.request("PUT",e,t,s||{})}))}head(e,t){return r(this,void 0,void 0,(function*(){return this.request("HEAD",e,null,t||{})}))}sendStream(e,t,s,i){return r(this,void 0,void 0,(function*(){return this.request(e,t,s,i)}))}getJson(e,t={}){return r(this,void 0,void 0,(function*(){t[g.Accept]=this._getExistingOrDefaultHeader(t,g.Accept,h.ApplicationJson);const s=yield this.get(e,t);return this._processResponse(s,this.requestOptions)}))}postJson(e,t,s={}){return r(this,void 0,void 0,(function*(){const i=JSON.stringify(t,null,2);s[g.Accept]=this._getExistingOrDefaultHeader(s,g.Accept,h.ApplicationJson);s[g.ContentType]=this._getExistingOrDefaultHeader(s,g.ContentType,h.ApplicationJson);const A=yield this.post(e,i,s);return this._processResponse(A,this.requestOptions)}))}putJson(e,t,s={}){return r(this,void 0,void 0,(function*(){const i=JSON.stringify(t,null,2);s[g.Accept]=this._getExistingOrDefaultHeader(s,g.Accept,h.ApplicationJson);s[g.ContentType]=this._getExistingOrDefaultHeader(s,g.ContentType,h.ApplicationJson);const A=yield this.put(e,i,s);return this._processResponse(A,this.requestOptions)}))}patchJson(e,t,s={}){return r(this,void 0,void 0,(function*(){const i=JSON.stringify(t,null,2);s[g.Accept]=this._getExistingOrDefaultHeader(s,g.Accept,h.ApplicationJson);s[g.ContentType]=this._getExistingOrDefaultHeader(s,g.ContentType,h.ApplicationJson);const A=yield this.patch(e,i,s);return this._processResponse(A,this.requestOptions)}))}request(e,t,s,i){return r(this,void 0,void 0,(function*(){if(this._disposed){throw new Error("Client has already been disposed.")}const A=new URL(t);let o=this._prepareRequest(e,A,i);const r=this._allowRetries&&Q.includes(e)?this._maxRetries+1:1;let n=0;let a;do{a=yield this.requestRaw(o,s);if(a&&a.message&&a.message.statusCode===p.Unauthorized){let e;for(const t of this.handlers){if(t.canHandleAuthentication(a)){e=t;break}}if(e){return e.handleAuthentication(this,o,s)}else{return a}}let t=this._maxRedirects;while(a.message.statusCode&&d.includes(a.message.statusCode)&&this._allowRedirects&&t>0){const r=a.message.headers["location"];if(!r){break}const n=new URL(r);if(A.protocol==="https:"&&A.protocol!==n.protocol&&!this._allowRedirectDowngrade){throw new Error("Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true.")}yield a.readBody();if(n.hostname!==A.hostname){for(const e in i){if(e.toLowerCase()==="authorization"){delete i[e]}}}o=this._prepareRequest(e,n,i);a=yield this.requestRaw(o,s);t--}if(!a.message.statusCode||!E.includes(a.message.statusCode)){return a}n+=1;if(n{function callbackForResult(e,t){if(e){i(e)}else if(!t){i(new Error("Unknown error"))}else{s(t)}}this.requestRawWithCallback(e,t,callbackForResult)}))}))}requestRawWithCallback(e,t,s){if(typeof t==="string"){if(!e.options.headers){e.options.headers={}}e.options.headers["Content-Length"]=Buffer.byteLength(t,"utf8")}let i=false;function handleResult(e,t){if(!i){i=true;s(e,t)}}const A=e.httpModule.request(e.options,(e=>{const t=new HttpClientResponse(e);handleResult(undefined,t)}));let o;A.on("socket",(e=>{o=e}));A.setTimeout(this._socketTimeout||3*6e4,(()=>{if(o){o.end()}handleResult(new Error(`Request timeout: ${e.options.path}`))}));A.on("error",(function(e){handleResult(e)}));if(t&&typeof t==="string"){A.write(t,"utf8")}if(t&&typeof t!=="string"){t.on("close",(function(){A.end()}));t.pipe(A)}else{A.end()}}getAgent(e){const t=new URL(e);return this._getAgent(t)}getAgentDispatcher(e){const t=new URL(e);const s=c.getProxyUrl(t);const i=s&&s.hostname;if(!i){return}return this._getProxyAgentDispatcher(t,s)}_prepareRequest(e,t,s){const i={};i.parsedUrl=t;const A=i.parsedUrl.protocol==="https:";i.httpModule=A?a:n;const o=A?443:80;i.options={};i.options.host=i.parsedUrl.hostname;i.options.port=i.parsedUrl.port?parseInt(i.parsedUrl.port):o;i.options.path=(i.parsedUrl.pathname||"")+(i.parsedUrl.search||"");i.options.method=e;i.options.headers=this._mergeHeaders(s);if(this.userAgent!=null){i.options.headers["user-agent"]=this.userAgent}i.options.agent=this._getAgent(i.parsedUrl);if(this.handlers){for(const e of this.handlers){e.prepareRequest(i.options)}}return i}_mergeHeaders(e){if(this.requestOptions&&this.requestOptions.headers){return Object.assign({},lowercaseKeys(this.requestOptions.headers),lowercaseKeys(e||{}))}return lowercaseKeys(e||{})}_getExistingOrDefaultHeader(e,t,s){let i;if(this.requestOptions&&this.requestOptions.headers){i=lowercaseKeys(this.requestOptions.headers)[t]}return e[t]||i||s}_getAgent(e){let t;const s=c.getProxyUrl(e);const i=s&&s.hostname;if(this._keepAlive&&i){t=this._proxyAgent}if(!i){t=this._agent}if(t){return t}const A=e.protocol==="https:";let o=100;if(this.requestOptions){o=this.requestOptions.maxSockets||n.globalAgent.maxSockets}if(s&&s.hostname){const e={maxSockets:o,keepAlive:this._keepAlive,proxy:Object.assign(Object.assign({},(s.username||s.password)&&{proxyAuth:`${s.username}:${s.password}`}),{host:s.hostname,port:s.port})};let i;const r=s.protocol==="https:";if(A){i=r?l.httpsOverHttps:l.httpsOverHttp}else{i=r?l.httpOverHttps:l.httpOverHttp}t=i(e);this._proxyAgent=t}if(!t){const e={keepAlive:this._keepAlive,maxSockets:o};t=A?new a.Agent(e):new n.Agent(e);this._agent=t}if(A&&this._ignoreSslError){t.options=Object.assign(t.options||{},{rejectUnauthorized:false})}return t}_getProxyAgentDispatcher(e,t){let s;if(this._keepAlive){s=this._proxyAgentDispatcher}if(s){return s}const i=e.protocol==="https:";s=new u.ProxyAgent(Object.assign({uri:t.href,pipelining:!this._keepAlive?0:1},(t.username||t.password)&&{token:`${t.username}:${t.password}`}));this._proxyAgentDispatcher=s;if(i&&this._ignoreSslError){s.options=Object.assign(s.options.requestTls||{},{rejectUnauthorized:false})}return s}_performExponentialBackoff(e){return r(this,void 0,void 0,(function*(){e=Math.min(C,e);const t=B*Math.pow(2,e);return new Promise((e=>setTimeout((()=>e()),t)))}))}_processResponse(e,t){return r(this,void 0,void 0,(function*(){return new Promise(((s,i)=>r(this,void 0,void 0,(function*(){const A=e.message.statusCode||0;const o={statusCode:A,result:null,headers:{}};if(A===p.NotFound){s(o)}function dateTimeDeserializer(e,t){if(typeof t==="string"){const e=new Date(t);if(!isNaN(e.valueOf())){return e}}return t}let r;let n;try{n=yield e.readBody();if(n&&n.length>0){if(t&&t.deserializeDates){r=JSON.parse(n,dateTimeDeserializer)}else{r=JSON.parse(n)}o.result=r}o.headers=e.message.headers}catch(e){}if(A>299){let e;if(r&&r.message){e=r.message}else if(n&&n.length>0){e=n}else{e=`Failed request: (${A})`}const t=new HttpClientError(e,A);t.result=o.result;i(t)}else{s(o)}}))))}))}}t.HttpClient=HttpClient;const lowercaseKeys=e=>Object.keys(e).reduce(((t,s)=>(t[s.toLowerCase()]=e[s],t)),{})},4988:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.checkBypass=t.getProxyUrl=void 0;function getProxyUrl(e){const t=e.protocol==="https:";if(checkBypass(e)){return undefined}const s=(()=>{if(t){return process.env["https_proxy"]||process.env["HTTPS_PROXY"]}else{return process.env["http_proxy"]||process.env["HTTP_PROXY"]}})();if(s){try{return new URL(s)}catch(e){if(!s.startsWith("http://")&&!s.startsWith("https://"))return new URL(`http://${s}`)}}else{return undefined}}t.getProxyUrl=getProxyUrl;function checkBypass(e){if(!e.hostname){return false}const t=e.hostname;if(isLoopbackAddress(t)){return true}const s=process.env["no_proxy"]||process.env["NO_PROXY"]||"";if(!s){return false}let i;if(e.port){i=Number(e.port)}else if(e.protocol==="http:"){i=80}else if(e.protocol==="https:"){i=443}const A=[e.hostname.toUpperCase()];if(typeof i==="number"){A.push(`${A[0]}:${i}`)}for(const e of s.split(",").map((e=>e.trim().toUpperCase())).filter((e=>e))){if(e==="*"||A.some((t=>t===e||t.endsWith(`.${e}`)||e.startsWith(".")&&t.endsWith(`${e}`)))){return true}}return false}t.checkBypass=checkBypass;function isLoopbackAddress(e){const t=e.toLowerCase();return t==="localhost"||t.startsWith("127.")||t.startsWith("[::1]")||t.startsWith("[0:0:0:0:0:0:0:1]")}},5207:function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){if(i===undefined)i=s;Object.defineProperty(e,i,{enumerable:true,get:function(){return t[s]}})}:function(e,t,s,i){if(i===undefined)i=s;e[i]=t[s]});var A=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var s in e)if(s!=="default"&&Object.hasOwnProperty.call(e,s))i(t,e,s);A(t,e);return t};var r=this&&this.__awaiter||function(e,t,s,i){function adopt(e){return e instanceof s?e:new s((function(t){t(e)}))}return new(s||(s=Promise))((function(s,A){function fulfilled(e){try{step(i.next(e))}catch(e){A(e)}}function rejected(e){try{step(i["throw"](e))}catch(e){A(e)}}function step(e){e.done?s(e.value):adopt(e.value).then(fulfilled,rejected)}step((i=i.apply(e,t||[])).next())}))};var n;Object.defineProperty(t,"__esModule",{value:true});t.getCmdPath=t.tryGetExecutablePath=t.isRooted=t.isDirectory=t.exists=t.READONLY=t.UV_FS_O_EXLOCK=t.IS_WINDOWS=t.unlink=t.symlink=t.stat=t.rmdir=t.rm=t.rename=t.readlink=t.readdir=t.open=t.mkdir=t.lstat=t.copyFile=t.chmod=void 0;const a=o(s(9896));const c=o(s(6928));n=a.promises,t.chmod=n.chmod,t.copyFile=n.copyFile,t.lstat=n.lstat,t.mkdir=n.mkdir,t.open=n.open,t.readdir=n.readdir,t.readlink=n.readlink,t.rename=n.rename,t.rm=n.rm,t.rmdir=n.rmdir,t.stat=n.stat,t.symlink=n.symlink,t.unlink=n.unlink;t.IS_WINDOWS=process.platform==="win32";t.UV_FS_O_EXLOCK=268435456;t.READONLY=a.constants.O_RDONLY;function exists(e){return r(this,void 0,void 0,(function*(){try{yield t.stat(e)}catch(e){if(e.code==="ENOENT"){return false}throw e}return true}))}t.exists=exists;function isDirectory(e,s=false){return r(this,void 0,void 0,(function*(){const i=s?yield t.stat(e):yield t.lstat(e);return i.isDirectory()}))}t.isDirectory=isDirectory;function isRooted(e){e=normalizeSeparators(e);if(!e){throw new Error('isRooted() parameter "p" cannot be empty')}if(t.IS_WINDOWS){return e.startsWith("\\")||/^[A-Z]:/i.test(e)}return e.startsWith("/")}t.isRooted=isRooted;function tryGetExecutablePath(e,s){return r(this,void 0,void 0,(function*(){let i=undefined;try{i=yield t.stat(e)}catch(t){if(t.code!=="ENOENT"){console.log(`Unexpected error attempting to determine if executable file exists '${e}': ${t}`)}}if(i&&i.isFile()){if(t.IS_WINDOWS){const t=c.extname(e).toUpperCase();if(s.some((e=>e.toUpperCase()===t))){return e}}else{if(isUnixExecutable(i)){return e}}}const A=e;for(const o of s){e=A+o;i=undefined;try{i=yield t.stat(e)}catch(t){if(t.code!=="ENOENT"){console.log(`Unexpected error attempting to determine if executable file exists '${e}': ${t}`)}}if(i&&i.isFile()){if(t.IS_WINDOWS){try{const s=c.dirname(e);const i=c.basename(e).toUpperCase();for(const A of yield t.readdir(s)){if(i===A.toUpperCase()){e=c.join(s,A);break}}}catch(t){console.log(`Unexpected error attempting to determine the actual case of the file '${e}': ${t}`)}return e}else{if(isUnixExecutable(i)){return e}}}}return""}))}t.tryGetExecutablePath=tryGetExecutablePath;function normalizeSeparators(e){e=e||"";if(t.IS_WINDOWS){e=e.replace(/\//g,"\\");return e.replace(/\\\\+/g,"\\")}return e.replace(/\/\/+/g,"/")}function isUnixExecutable(e){return(e.mode&1)>0||(e.mode&8)>0&&e.gid===process.getgid()||(e.mode&64)>0&&e.uid===process.getuid()}function getCmdPath(){var e;return(e=process.env["COMSPEC"])!==null&&e!==void 0?e:`cmd.exe`}t.getCmdPath=getCmdPath},4994:function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){if(i===undefined)i=s;Object.defineProperty(e,i,{enumerable:true,get:function(){return t[s]}})}:function(e,t,s,i){if(i===undefined)i=s;e[i]=t[s]});var A=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var s in e)if(s!=="default"&&Object.hasOwnProperty.call(e,s))i(t,e,s);A(t,e);return t};var r=this&&this.__awaiter||function(e,t,s,i){function adopt(e){return e instanceof s?e:new s((function(t){t(e)}))}return new(s||(s=Promise))((function(s,A){function fulfilled(e){try{step(i.next(e))}catch(e){A(e)}}function rejected(e){try{step(i["throw"](e))}catch(e){A(e)}}function step(e){e.done?s(e.value):adopt(e.value).then(fulfilled,rejected)}step((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:true});t.findInPath=t.which=t.mkdirP=t.rmRF=t.mv=t.cp=void 0;const n=s(2613);const a=o(s(6928));const c=o(s(5207));function cp(e,t,s={}){return r(this,void 0,void 0,(function*(){const{force:i,recursive:A,copySourceDirectory:o}=readCopyOptions(s);const r=(yield c.exists(t))?yield c.stat(t):null;if(r&&r.isFile()&&!i){return}const n=r&&r.isDirectory()&&o?a.join(t,a.basename(e)):t;if(!(yield c.exists(e))){throw new Error(`no such file or directory: ${e}`)}const l=yield c.stat(e);if(l.isDirectory()){if(!A){throw new Error(`Failed to copy. ${e} is a directory, but tried to copy without recursive flag.`)}else{yield cpDirRecursive(e,n,0,i)}}else{if(a.relative(e,n)===""){throw new Error(`'${n}' and '${e}' are the same file`)}yield copyFile(e,n,i)}}))}t.cp=cp;function mv(e,t,s={}){return r(this,void 0,void 0,(function*(){if(yield c.exists(t)){let i=true;if(yield c.isDirectory(t)){t=a.join(t,a.basename(e));i=yield c.exists(t)}if(i){if(s.force==null||s.force){yield rmRF(t)}else{throw new Error("Destination already exists")}}}yield mkdirP(a.dirname(t));yield c.rename(e,t)}))}t.mv=mv;function rmRF(e){return r(this,void 0,void 0,(function*(){if(c.IS_WINDOWS){if(/[*"<>|]/.test(e)){throw new Error('File path must not contain `*`, `"`, `<`, `>` or `|` on Windows')}}try{yield c.rm(e,{force:true,maxRetries:3,recursive:true,retryDelay:300})}catch(e){throw new Error(`File was unable to be removed ${e}`)}}))}t.rmRF=rmRF;function mkdirP(e){return r(this,void 0,void 0,(function*(){n.ok(e,"a path argument must be provided");yield c.mkdir(e,{recursive:true})}))}t.mkdirP=mkdirP;function which(e,t){return r(this,void 0,void 0,(function*(){if(!e){throw new Error("parameter 'tool' is required")}if(t){const t=yield which(e,false);if(!t){if(c.IS_WINDOWS){throw new Error(`Unable to locate executable file: ${e}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also verify the file has a valid extension for an executable file.`)}else{throw new Error(`Unable to locate executable file: ${e}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also check the file mode to verify the file is executable.`)}}return t}const s=yield findInPath(e);if(s&&s.length>0){return s[0]}return""}))}t.which=which;function findInPath(e){return r(this,void 0,void 0,(function*(){if(!e){throw new Error("parameter 'tool' is required")}const t=[];if(c.IS_WINDOWS&&process.env["PATHEXT"]){for(const e of process.env["PATHEXT"].split(a.delimiter)){if(e){t.push(e)}}}if(c.isRooted(e)){const s=yield c.tryGetExecutablePath(e,t);if(s){return[s]}return[]}if(e.includes(a.sep)){return[]}const s=[];if(process.env.PATH){for(const e of process.env.PATH.split(a.delimiter)){if(e){s.push(e)}}}const i=[];for(const A of s){const s=yield c.tryGetExecutablePath(a.join(A,e),t);if(s){i.push(s)}}return i}))}t.findInPath=findInPath;function readCopyOptions(e){const t=e.force==null?true:e.force;const s=Boolean(e.recursive);const i=e.copySourceDirectory==null?true:Boolean(e.copySourceDirectory);return{force:t,recursive:s,copySourceDirectory:i}}function cpDirRecursive(e,t,s,i){return r(this,void 0,void 0,(function*(){if(s>=255)return;s++;yield mkdirP(t);const A=yield c.readdir(e);for(const o of A){const A=`${e}/${o}`;const r=`${t}/${o}`;const n=yield c.lstat(A);if(n.isDirectory()){yield cpDirRecursive(A,r,s,i)}else{yield copyFile(A,r,i)}}yield c.chmod(t,(yield c.stat(e)).mode)}))}function copyFile(e,t,s){return r(this,void 0,void 0,(function*(){if((yield c.lstat(e)).isSymbolicLink()){try{yield c.lstat(t);yield c.unlink(t)}catch(e){if(e.code==="EPERM"){yield c.chmod(t,"0666");yield c.unlink(t)}}const s=yield c.readlink(e);yield c.symlink(s,t,c.IS_WINDOWS?"junction":null)}else if(!(yield c.exists(t))||s){yield c.copyFile(e,t)}}))}},9380:e=>{"use strict";e.exports=balanced;function balanced(e,t,s){if(e instanceof RegExp)e=maybeMatch(e,s);if(t instanceof RegExp)t=maybeMatch(t,s);var i=range(e,t,s);return i&&{start:i[0],end:i[1],pre:s.slice(0,i[0]),body:s.slice(i[0]+e.length,i[1]),post:s.slice(i[1]+t.length)}}function maybeMatch(e,t){var s=t.match(e);return s?s[0]:null}balanced.range=range;function range(e,t,s){var i,A,o,r,n;var a=s.indexOf(e);var c=s.indexOf(t,a+1);var l=a;if(a>=0&&c>0){if(e===t){return[a,c]}i=[];o=s.length;while(l>=0&&!n){if(l==a){i.push(l);a=s.indexOf(e,l+1)}else if(i.length==1){n=[i.pop(),c]}else{A=i.pop();if(A=0?a:c}if(i.length){n=[o,r]}}return n}},2732:(e,t,s)=>{var i=s(1063);var A=s(2027);var o=s(9934);var r=Function.bind;var n=r.bind(r);function bindApi(e,t,s){var i=n(o,null).apply(null,s?[t,s]:[t]);e.api={remove:i};e.remove=i;["before","error","after","wrap"].forEach((function(i){var o=s?[t,i,s]:[t,i];e[i]=e.api[i]=n(A,null).apply(null,o)}))}function HookSingular(){var e="h";var t={registry:{}};var s=i.bind(null,t,e);bindApi(s,t,e);return s}function HookCollection(){var e={registry:{}};var t=i.bind(null,e);bindApi(t,e);return t}var a=false;function Hook(){if(!a){console.warn('[before-after-hook]: "Hook()" repurposing warning, use "Hook.Collection()". Read more: https://git.io/upgrade-before-after-hook-to-1.4');a=true}return HookCollection()}Hook.Singular=HookSingular.bind();Hook.Collection=HookCollection.bind();e.exports=Hook;e.exports.Hook=Hook;e.exports.Singular=Hook.Singular;e.exports.Collection=Hook.Collection},2027:e=>{e.exports=addHook;function addHook(e,t,s,i){var A=i;if(!e.registry[s]){e.registry[s]=[]}if(t==="before"){i=function(e,t){return Promise.resolve().then(A.bind(null,t)).then(e.bind(null,t))}}if(t==="after"){i=function(e,t){var s;return Promise.resolve().then(e.bind(null,t)).then((function(e){s=e;return A(s,t)})).then((function(){return s}))}}if(t==="error"){i=function(e,t){return Promise.resolve().then(e.bind(null,t)).catch((function(e){return A(e,t)}))}}e.registry[s].push({hook:i,orig:A})}},1063:e=>{e.exports=register;function register(e,t,s,i){if(typeof s!=="function"){throw new Error("method for before hook must be a function")}if(!i){i={}}if(Array.isArray(t)){return t.reverse().reduce((function(t,s){return register.bind(null,e,s,t,i)}),s)()}return Promise.resolve().then((function(){if(!e.registry[t]){return s(i)}return e.registry[t].reduce((function(e,t){return t.hook.bind(null,e,i)}),s)()}))}},9934:e=>{e.exports=removeHook;function removeHook(e,t,s){if(!e.registry[t]){return}var i=e.registry[t].map((function(e){return e.orig})).indexOf(s);if(i===-1){return}e.registry[t].splice(i,1)}},4691:(e,t,s)=>{var i=s(9380);e.exports=expandTop;var A="\0SLASH"+Math.random()+"\0";var o="\0OPEN"+Math.random()+"\0";var r="\0CLOSE"+Math.random()+"\0";var n="\0COMMA"+Math.random()+"\0";var a="\0PERIOD"+Math.random()+"\0";function numeric(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function escapeBraces(e){return e.split("\\\\").join(A).split("\\{").join(o).split("\\}").join(r).split("\\,").join(n).split("\\.").join(a)}function unescapeBraces(e){return e.split(A).join("\\").split(o).join("{").split(r).join("}").split(n).join(",").split(a).join(".")}function parseCommaParts(e){if(!e)return[""];var t=[];var s=i("{","}",e);if(!s)return e.split(",");var A=s.pre;var o=s.body;var r=s.post;var n=A.split(",");n[n.length-1]+="{"+o+"}";var a=parseCommaParts(r);if(r.length){n[n.length-1]+=a.shift();n.push.apply(n,a)}t.push.apply(t,n);return t}function expandTop(e){if(!e)return[];if(e.substr(0,2)==="{}"){e="\\{\\}"+e.substr(2)}return expand(escapeBraces(e),true).map(unescapeBraces)}function embrace(e){return"{"+e+"}"}function isPadded(e){return/^-?0\d/.test(e)}function lte(e,t){return e<=t}function gte(e,t){return e>=t}function expand(e,t){var s=[];var A=i("{","}",e);if(!A)return[e];var o=A.pre;var n=A.post.length?expand(A.post,false):[""];if(/\$$/.test(A.pre)){for(var a=0;a=0;if(!p&&!g){if(A.post.match(/,.*\}/)){e=A.pre+"{"+A.body+r+A.post;return expand(e)}return[e]}var h;if(p){h=A.body.split(/\.\./)}else{h=parseCommaParts(A.body);if(h.length===1){h=expand(h[0],false).map(embrace);if(h.length===1){return n.map((function(e){return A.pre+h[0]+e}))}}}var d;if(p){var E=numeric(h[0]);var Q=numeric(h[1]);var C=Math.max(h[0].length,h[1].length);var B=h.length==3?Math.abs(numeric(h[2])):1;var I=lte;var b=Q0){var R=new Array(k+1).join("0");if(w<0)v="-"+R+v.slice(1);else v=R+v}}}d.push(v)}}else{d=[];for(var x=0;x{"use strict";Object.defineProperty(t,"__esModule",{value:true});class Deprecation extends Error{constructor(e){super(e);if(Error.captureStackTrace){Error.captureStackTrace(this,this.constructor)}this.name="Deprecation"}}t.Deprecation=Deprecation},9829:(e,t,s)=>{
-/*!
- * mime-db
- * Copyright(c) 2014 Jonathan Ong
- * Copyright(c) 2015-2022 Douglas Christopher Wilson
- * MIT Licensed
- */
-e.exports=s(1813)},4096:(e,t,s)=>{"use strict";
-/*!
- * mime-types
- * Copyright(c) 2014 Jonathan Ong
- * Copyright(c) 2015 Douglas Christopher Wilson
- * MIT Licensed
- */var i=s(9829);var A=s(6928).extname;var o=s(4062);var r=/^\s*([^;\s]*)(?:;|\s|$)/;var n=/^text\//i;t.charset=charset;t.charsets={lookup:charset};t.contentType=contentType;t.extension=extension;t.extensions=Object.create(null);t.lookup=lookup;t.types=Object.create(null);t._extensionConflicts=[];populateMaps(t.extensions,t.types);function charset(e){if(!e||typeof e!=="string"){return false}var t=r.exec(e);var s=t&&i[t[1].toLowerCase()];if(s&&s.charset){return s.charset}if(t&&n.test(t[1])){return"UTF-8"}return false}function contentType(e){if(!e||typeof e!=="string"){return false}var s=e.indexOf("/")===-1?t.lookup(e):e;if(!s){return false}if(s.indexOf("charset")===-1){var i=t.charset(s);if(i)s+="; charset="+i.toLowerCase()}return s}function extension(e){if(!e||typeof e!=="string"){return false}var s=r.exec(e);var i=s&&t.extensions[s[1].toLowerCase()];if(!i||!i.length){return false}return i[0]}function lookup(e){if(!e||typeof e!=="string"){return false}var s=A("x."+e).toLowerCase().slice(1);if(!s){return false}return t.types[s]||false}function populateMaps(e,s){Object.keys(i).forEach((function forEachMimeType(A){var o=i[A];var r=o.extensions;if(!r||!r.length){return}e[A]=r;for(var n=0;nr?t:s}function _preferredTypeLegacy(e,s,A){var o=["nginx","apache",undefined,"iana"];var r=s?o.indexOf(i[s].source):0;var n=A?o.indexOf(i[A].source):0;if(t.types[extension]!=="application/octet-stream"&&(r>n||r===n&&t.types[extension]?.slice(0,12)==="application/")){return s}return r>n?s:A}},4062:e=>{var t={"prs.":100,"x-":200,"x.":300,"vnd.":400,default:900};var s={nginx:10,apache:20,iana:40,default:30};var i={application:1,font:2,default:0};e.exports=function mimeScore(e,A="default"){if(e==="application/octet-stream"){return 0}const[o,r]=e.split("/");const n=r.replace(/(\.|x-).*/,"$1");const a=t[n]||t.default;const c=s[A]||s.default;const l=i[o]||i.default;const u=1-e.length/100;return a+c+l+u}},5560:(e,t,s)=>{var i=s(8264);e.exports=i(once);e.exports.strict=i(onceStrict);once.proto=once((function(){Object.defineProperty(Function.prototype,"once",{value:function(){return once(this)},configurable:true});Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return onceStrict(this)},configurable:true})}));function once(e){var f=function(){if(f.called)return f.value;f.called=true;return f.value=e.apply(this,arguments)};f.called=false;return f}function onceStrict(e){var f=function(){if(f.called)throw new Error(f.onceError);f.called=true;return f.value=e.apply(this,arguments)};var t=e.name||"Function wrapped with `once`";f.onceError=t+" shouldn't be called more than once";f.called=false;return f}},770:(e,t,s)=>{e.exports=s(218)},218:(e,t,s)=>{"use strict";var i=s(9278);var A=s(4756);var o=s(8611);var r=s(5692);var n=s(4434);var a=s(2613);var c=s(9023);t.httpOverHttp=httpOverHttp;t.httpsOverHttp=httpsOverHttp;t.httpOverHttps=httpOverHttps;t.httpsOverHttps=httpsOverHttps;function httpOverHttp(e){var t=new TunnelingAgent(e);t.request=o.request;return t}function httpsOverHttp(e){var t=new TunnelingAgent(e);t.request=o.request;t.createSocket=createSecureSocket;t.defaultPort=443;return t}function httpOverHttps(e){var t=new TunnelingAgent(e);t.request=r.request;return t}function httpsOverHttps(e){var t=new TunnelingAgent(e);t.request=r.request;t.createSocket=createSecureSocket;t.defaultPort=443;return t}function TunnelingAgent(e){var t=this;t.options=e||{};t.proxyOptions=t.options.proxy||{};t.maxSockets=t.options.maxSockets||o.Agent.defaultMaxSockets;t.requests=[];t.sockets=[];t.on("free",(function onFree(e,s,i,A){var o=toOptions(s,i,A);for(var r=0,n=t.requests.length;r=this.maxSockets){A.requests.push(o);return}A.createSocket(o,(function(t){t.on("free",onFree);t.on("close",onCloseOrRemove);t.on("agentRemove",onCloseOrRemove);e.onSocket(t);function onFree(){A.emit("free",t,o)}function onCloseOrRemove(e){A.removeSocket(t);t.removeListener("free",onFree);t.removeListener("close",onCloseOrRemove);t.removeListener("agentRemove",onCloseOrRemove)}}))};TunnelingAgent.prototype.createSocket=function createSocket(e,t){var s=this;var i={};s.sockets.push(i);var A=mergeOptions({},s.proxyOptions,{method:"CONNECT",path:e.host+":"+e.port,agent:false,headers:{host:e.host+":"+e.port}});if(e.localAddress){A.localAddress=e.localAddress}if(A.proxyAuth){A.headers=A.headers||{};A.headers["Proxy-Authorization"]="Basic "+new Buffer(A.proxyAuth).toString("base64")}l("making CONNECT request");var o=s.request(A);o.useChunkedEncodingByDefault=false;o.once("response",onResponse);o.once("upgrade",onUpgrade);o.once("connect",onConnect);o.once("error",onError);o.end();function onResponse(e){e.upgrade=true}function onUpgrade(e,t,s){process.nextTick((function(){onConnect(e,t,s)}))}function onConnect(A,r,n){o.removeAllListeners();r.removeAllListeners();if(A.statusCode!==200){l("tunneling socket could not be established, statusCode=%d",A.statusCode);r.destroy();var a=new Error("tunneling socket could not be established, "+"statusCode="+A.statusCode);a.code="ECONNRESET";e.request.emit("error",a);s.removeSocket(i);return}if(n.length>0){l("got illegal response body from proxy");r.destroy();var a=new Error("got illegal response body from proxy");a.code="ECONNRESET";e.request.emit("error",a);s.removeSocket(i);return}l("tunneling connection has established");s.sockets[s.sockets.indexOf(i)]=r;return t(r)}function onError(t){o.removeAllListeners();l("tunneling socket could not be established, cause=%s\n",t.message,t.stack);var A=new Error("tunneling socket could not be established, "+"cause="+t.message);A.code="ECONNRESET";e.request.emit("error",A);s.removeSocket(i)}};TunnelingAgent.prototype.removeSocket=function removeSocket(e){var t=this.sockets.indexOf(e);if(t===-1){return}this.sockets.splice(t,1);var s=this.requests.shift();if(s){this.createSocket(s,(function(e){s.request.onSocket(e)}))}};function createSecureSocket(e,t){var s=this;TunnelingAgent.prototype.createSocket.call(s,e,(function(i){var o=e.request.getHeader("host");var r=mergeOptions({},s.options,{socket:i,servername:o?o.replace(/:.*$/,""):e.host});var n=A.connect(0,r);s.sockets[s.sockets.indexOf(i)]=n;t(n)}))}function toOptions(e,t,s){if(typeof e==="string"){return{host:e,port:t,localAddress:s}}return e}function mergeOptions(e){for(var t=1,s=arguments.length;t{"use strict";const i=s(6197);const A=s(992);const o=s(8707);const r=s(5076);const n=s(1093);const a=s(9965);const c=s(3440);const{InvalidArgumentError:l}=o;const u=s(6615);const p=s(9136);const g=s(7365);const h=s(7501);const d=s(4004);const E=s(2429);const Q=s(2720);const C=s(3573);const{getGlobalDispatcher:B,setGlobalDispatcher:I}=s(2581);const b=s(8840);const y=s(8299);const w=s(4415);let v;try{s(6982);v=true}catch{v=false}Object.assign(A.prototype,u);e.exports.Dispatcher=A;e.exports.Client=i;e.exports.Pool=r;e.exports.BalancedPool=n;e.exports.Agent=a;e.exports.ProxyAgent=Q;e.exports.RetryHandler=C;e.exports.DecoratorHandler=b;e.exports.RedirectHandler=y;e.exports.createRedirectInterceptor=w;e.exports.buildConnector=p;e.exports.errors=o;function makeDispatcher(e){return(t,s,i)=>{if(typeof s==="function"){i=s;s=null}if(!t||typeof t!=="string"&&typeof t!=="object"&&!(t instanceof URL)){throw new l("invalid url")}if(s!=null&&typeof s!=="object"){throw new l("invalid opts")}if(s&&s.path!=null){if(typeof s.path!=="string"){throw new l("invalid opts.path")}let e=s.path;if(!s.path.startsWith("/")){e=`/${e}`}t=new URL(c.parseOrigin(t).origin+e)}else{if(!s){s=typeof t==="object"?t:{}}t=c.parseURL(t)}const{agent:A,dispatcher:o=B()}=s;if(A){throw new l("unsupported opts.agent. Did you mean opts.client?")}return e.call(o,{...s,origin:t.origin,path:t.search?`${t.pathname}${t.search}`:t.pathname,method:s.method||(s.body?"PUT":"GET")},i)}}e.exports.setGlobalDispatcher=I;e.exports.getGlobalDispatcher=B;if(c.nodeMajor>16||c.nodeMajor===16&&c.nodeMinor>=8){let t=null;e.exports.fetch=async function fetch(e){if(!t){t=s(2315).fetch}try{return await t(...arguments)}catch(e){if(typeof e==="object"){Error.captureStackTrace(e,this)}throw e}};e.exports.Headers=s(6349).Headers;e.exports.Response=s(8676).Response;e.exports.Request=s(5194).Request;e.exports.FormData=s(3073).FormData;e.exports.File=s(3041).File;e.exports.FileReader=s(2160).FileReader;const{setGlobalOrigin:i,getGlobalOrigin:A}=s(5628);e.exports.setGlobalOrigin=i;e.exports.getGlobalOrigin=A;const{CacheStorage:o}=s(4738);const{kConstruct:r}=s(296);e.exports.caches=new o(r)}if(c.nodeMajor>=16){const{deleteCookie:t,getCookies:i,getSetCookies:A,setCookie:o}=s(3168);e.exports.deleteCookie=t;e.exports.getCookies=i;e.exports.getSetCookies=A;e.exports.setCookie=o;const{parseMIMEType:r,serializeAMimeType:n}=s(4322);e.exports.parseMIMEType=r;e.exports.serializeAMimeType=n}if(c.nodeMajor>=18&&v){const{WebSocket:t}=s(5171);e.exports.WebSocket=t}e.exports.request=makeDispatcher(u.request);e.exports.stream=makeDispatcher(u.stream);e.exports.pipeline=makeDispatcher(u.pipeline);e.exports.connect=makeDispatcher(u.connect);e.exports.upgrade=makeDispatcher(u.upgrade);e.exports.MockClient=g;e.exports.MockPool=d;e.exports.MockAgent=h;e.exports.mockErrors=E},9965:(e,t,s)=>{"use strict";const{InvalidArgumentError:i}=s(8707);const{kClients:A,kRunning:o,kClose:r,kDestroy:n,kDispatch:a,kInterceptors:c}=s(6443);const l=s(1);const u=s(5076);const p=s(6197);const g=s(3440);const h=s(4415);const{WeakRef:d,FinalizationRegistry:E}=s(3194)();const Q=Symbol("onConnect");const C=Symbol("onDisconnect");const B=Symbol("onConnectionError");const I=Symbol("maxRedirections");const b=Symbol("onDrain");const y=Symbol("factory");const w=Symbol("finalizer");const v=Symbol("options");function defaultFactory(e,t){return t&&t.connections===1?new p(e,t):new u(e,t)}class Agent extends l{constructor({factory:e=defaultFactory,maxRedirections:t=0,connect:s,...o}={}){super();if(typeof e!=="function"){throw new i("factory must be a function.")}if(s!=null&&typeof s!=="function"&&typeof s!=="object"){throw new i("connect must be a function or an object")}if(!Number.isInteger(t)||t<0){throw new i("maxRedirections must be a positive number")}if(s&&typeof s!=="function"){s={...s}}this[c]=o.interceptors&&o.interceptors.Agent&&Array.isArray(o.interceptors.Agent)?o.interceptors.Agent:[h({maxRedirections:t})];this[v]={...g.deepClone(o),connect:s};this[v].interceptors=o.interceptors?{...o.interceptors}:undefined;this[I]=t;this[y]=e;this[A]=new Map;this[w]=new E((e=>{const t=this[A].get(e);if(t!==undefined&&t.deref()===undefined){this[A].delete(e)}}));const r=this;this[b]=(e,t)=>{r.emit("drain",e,[r,...t])};this[Q]=(e,t)=>{r.emit("connect",e,[r,...t])};this[C]=(e,t,s)=>{r.emit("disconnect",e,[r,...t],s)};this[B]=(e,t,s)=>{r.emit("connectionError",e,[r,...t],s)}}get[o](){let e=0;for(const t of this[A].values()){const s=t.deref();if(s){e+=s[o]}}return e}[a](e,t){let s;if(e.origin&&(typeof e.origin==="string"||e.origin instanceof URL)){s=String(e.origin)}else{throw new i("opts.origin must be a non-empty string or URL.")}const o=this[A].get(s);let r=o?o.deref():null;if(!r){r=this[y](e.origin,this[v]).on("drain",this[b]).on("connect",this[Q]).on("disconnect",this[C]).on("connectionError",this[B]);this[A].set(s,new d(r));this[w].register(r,s)}return r.dispatch(e,t)}async[r](){const e=[];for(const t of this[A].values()){const s=t.deref();if(s){e.push(s.close())}}await Promise.all(e)}async[n](e){const t=[];for(const s of this[A].values()){const i=s.deref();if(i){t.push(i.destroy(e))}}await Promise.all(t)}}e.exports=Agent},158:(e,t,s)=>{const{addAbortListener:i}=s(3440);const{RequestAbortedError:A}=s(8707);const o=Symbol("kListener");const r=Symbol("kSignal");function abort(e){if(e.abort){e.abort()}else{e.onError(new A)}}function addSignal(e,t){e[r]=null;e[o]=null;if(!t){return}if(t.aborted){abort(e);return}e[r]=t;e[o]=()=>{abort(e)};i(e[r],e[o])}function removeSignal(e){if(!e[r]){return}if("removeEventListener"in e[r]){e[r].removeEventListener("abort",e[o])}else{e[r].removeListener("abort",e[o])}e[r]=null;e[o]=null}e.exports={addSignal:addSignal,removeSignal:removeSignal}},4660:(e,t,s)=>{"use strict";const{AsyncResource:i}=s(290);const{InvalidArgumentError:A,RequestAbortedError:o,SocketError:r}=s(8707);const n=s(3440);const{addSignal:a,removeSignal:c}=s(158);class ConnectHandler extends i{constructor(e,t){if(!e||typeof e!=="object"){throw new A("invalid opts")}if(typeof t!=="function"){throw new A("invalid callback")}const{signal:s,opaque:i,responseHeaders:o}=e;if(s&&typeof s.on!=="function"&&typeof s.addEventListener!=="function"){throw new A("signal must be an EventEmitter or EventTarget")}super("UNDICI_CONNECT");this.opaque=i||null;this.responseHeaders=o||null;this.callback=t;this.abort=null;a(this,s)}onConnect(e,t){if(!this.callback){throw new o}this.abort=e;this.context=t}onHeaders(){throw new r("bad connect",null)}onUpgrade(e,t,s){const{callback:i,opaque:A,context:o}=this;c(this);this.callback=null;let r=t;if(r!=null){r=this.responseHeaders==="raw"?n.parseRawHeaders(t):n.parseHeaders(t)}this.runInAsyncScope(i,null,null,{statusCode:e,headers:r,socket:s,opaque:A,context:o})}onError(e){const{callback:t,opaque:s}=this;c(this);if(t){this.callback=null;queueMicrotask((()=>{this.runInAsyncScope(t,null,e,{opaque:s})}))}}}function connect(e,t){if(t===undefined){return new Promise(((t,s)=>{connect.call(this,e,((e,i)=>e?s(e):t(i)))}))}try{const s=new ConnectHandler(e,t);this.dispatch({...e,method:"CONNECT"},s)}catch(s){if(typeof t!=="function"){throw s}const i=e&&e.opaque;queueMicrotask((()=>t(s,{opaque:i})))}}e.exports=connect},6862:(e,t,s)=>{"use strict";const{Readable:i,Duplex:A,PassThrough:o}=s(2203);const{InvalidArgumentError:r,InvalidReturnValueError:n,RequestAbortedError:a}=s(8707);const c=s(3440);const{AsyncResource:l}=s(290);const{addSignal:u,removeSignal:p}=s(158);const g=s(2613);const h=Symbol("resume");class PipelineRequest extends i{constructor(){super({autoDestroy:true});this[h]=null}_read(){const{[h]:e}=this;if(e){this[h]=null;e()}}_destroy(e,t){this._read();t(e)}}class PipelineResponse extends i{constructor(e){super({autoDestroy:true});this[h]=e}_read(){this[h]()}_destroy(e,t){if(!e&&!this._readableState.endEmitted){e=new a}t(e)}}class PipelineHandler extends l{constructor(e,t){if(!e||typeof e!=="object"){throw new r("invalid opts")}if(typeof t!=="function"){throw new r("invalid handler")}const{signal:s,method:i,opaque:o,onInfo:n,responseHeaders:l}=e;if(s&&typeof s.on!=="function"&&typeof s.addEventListener!=="function"){throw new r("signal must be an EventEmitter or EventTarget")}if(i==="CONNECT"){throw new r("invalid method")}if(n&&typeof n!=="function"){throw new r("invalid onInfo callback")}super("UNDICI_PIPELINE");this.opaque=o||null;this.responseHeaders=l||null;this.handler=t;this.abort=null;this.context=null;this.onInfo=n||null;this.req=(new PipelineRequest).on("error",c.nop);this.ret=new A({readableObjectMode:e.objectMode,autoDestroy:true,read:()=>{const{body:e}=this;if(e&&e.resume){e.resume()}},write:(e,t,s)=>{const{req:i}=this;if(i.push(e,t)||i._readableState.destroyed){s()}else{i[h]=s}},destroy:(e,t)=>{const{body:s,req:i,res:A,ret:o,abort:r}=this;if(!e&&!o._readableState.endEmitted){e=new a}if(r&&e){r()}c.destroy(s,e);c.destroy(i,e);c.destroy(A,e);p(this);t(e)}}).on("prefinish",(()=>{const{req:e}=this;e.push(null)}));this.res=null;u(this,s)}onConnect(e,t){const{ret:s,res:i}=this;g(!i,"pipeline cannot be retried");if(s.destroyed){throw new a}this.abort=e;this.context=t}onHeaders(e,t,s){const{opaque:i,handler:A,context:o}=this;if(e<200){if(this.onInfo){const s=this.responseHeaders==="raw"?c.parseRawHeaders(t):c.parseHeaders(t);this.onInfo({statusCode:e,headers:s})}return}this.res=new PipelineResponse(s);let r;try{this.handler=null;const s=this.responseHeaders==="raw"?c.parseRawHeaders(t):c.parseHeaders(t);r=this.runInAsyncScope(A,null,{statusCode:e,headers:s,opaque:i,body:this.res,context:o})}catch(e){this.res.on("error",c.nop);throw e}if(!r||typeof r.on!=="function"){throw new n("expected Readable")}r.on("data",(e=>{const{ret:t,body:s}=this;if(!t.push(e)&&s.pause){s.pause()}})).on("error",(e=>{const{ret:t}=this;c.destroy(t,e)})).on("end",(()=>{const{ret:e}=this;e.push(null)})).on("close",(()=>{const{ret:e}=this;if(!e._readableState.ended){c.destroy(e,new a)}}));this.body=r}onData(e){const{res:t}=this;return t.push(e)}onComplete(e){const{res:t}=this;t.push(null)}onError(e){const{ret:t}=this;this.handler=null;c.destroy(t,e)}}function pipeline(e,t){try{const s=new PipelineHandler(e,t);this.dispatch({...e,body:s.req},s);return s.ret}catch(e){return(new o).destroy(e)}}e.exports=pipeline},4043:(e,t,s)=>{"use strict";const i=s(9927);const{InvalidArgumentError:A,RequestAbortedError:o}=s(8707);const r=s(3440);const{getResolveErrorBodyCallback:n}=s(7655);const{AsyncResource:a}=s(290);const{addSignal:c,removeSignal:l}=s(158);class RequestHandler extends a{constructor(e,t){if(!e||typeof e!=="object"){throw new A("invalid opts")}const{signal:s,method:i,opaque:o,body:n,onInfo:a,responseHeaders:l,throwOnError:u,highWaterMark:p}=e;try{if(typeof t!=="function"){throw new A("invalid callback")}if(p&&(typeof p!=="number"||p<0)){throw new A("invalid highWaterMark")}if(s&&typeof s.on!=="function"&&typeof s.addEventListener!=="function"){throw new A("signal must be an EventEmitter or EventTarget")}if(i==="CONNECT"){throw new A("invalid method")}if(a&&typeof a!=="function"){throw new A("invalid onInfo callback")}super("UNDICI_REQUEST")}catch(e){if(r.isStream(n)){r.destroy(n.on("error",r.nop),e)}throw e}this.responseHeaders=l||null;this.opaque=o||null;this.callback=t;this.res=null;this.abort=null;this.body=n;this.trailers={};this.context=null;this.onInfo=a||null;this.throwOnError=u;this.highWaterMark=p;if(r.isStream(n)){n.on("error",(e=>{this.onError(e)}))}c(this,s)}onConnect(e,t){if(!this.callback){throw new o}this.abort=e;this.context=t}onHeaders(e,t,s,A){const{callback:o,opaque:a,abort:c,context:l,responseHeaders:u,highWaterMark:p}=this;const g=u==="raw"?r.parseRawHeaders(t):r.parseHeaders(t);if(e<200){if(this.onInfo){this.onInfo({statusCode:e,headers:g})}return}const h=u==="raw"?r.parseHeaders(t):g;const d=h["content-type"];const E=new i({resume:s,abort:c,contentType:d,highWaterMark:p});this.callback=null;this.res=E;if(o!==null){if(this.throwOnError&&e>=400){this.runInAsyncScope(n,null,{callback:o,body:E,contentType:d,statusCode:e,statusMessage:A,headers:g})}else{this.runInAsyncScope(o,null,null,{statusCode:e,headers:g,trailers:this.trailers,opaque:a,body:E,context:l})}}}onData(e){const{res:t}=this;return t.push(e)}onComplete(e){const{res:t}=this;l(this);r.parseHeaders(e,this.trailers);t.push(null)}onError(e){const{res:t,callback:s,body:i,opaque:A}=this;l(this);if(s){this.callback=null;queueMicrotask((()=>{this.runInAsyncScope(s,null,e,{opaque:A})}))}if(t){this.res=null;queueMicrotask((()=>{r.destroy(t,e)}))}if(i){this.body=null;r.destroy(i,e)}}}function request(e,t){if(t===undefined){return new Promise(((t,s)=>{request.call(this,e,((e,i)=>e?s(e):t(i)))}))}try{this.dispatch(e,new RequestHandler(e,t))}catch(s){if(typeof t!=="function"){throw s}const i=e&&e.opaque;queueMicrotask((()=>t(s,{opaque:i})))}}e.exports=request;e.exports.RequestHandler=RequestHandler},3560:(e,t,s)=>{"use strict";const{finished:i,PassThrough:A}=s(2203);const{InvalidArgumentError:o,InvalidReturnValueError:r,RequestAbortedError:n}=s(8707);const a=s(3440);const{getResolveErrorBodyCallback:c}=s(7655);const{AsyncResource:l}=s(290);const{addSignal:u,removeSignal:p}=s(158);class StreamHandler extends l{constructor(e,t,s){if(!e||typeof e!=="object"){throw new o("invalid opts")}const{signal:i,method:A,opaque:r,body:n,onInfo:c,responseHeaders:l,throwOnError:p}=e;try{if(typeof s!=="function"){throw new o("invalid callback")}if(typeof t!=="function"){throw new o("invalid factory")}if(i&&typeof i.on!=="function"&&typeof i.addEventListener!=="function"){throw new o("signal must be an EventEmitter or EventTarget")}if(A==="CONNECT"){throw new o("invalid method")}if(c&&typeof c!=="function"){throw new o("invalid onInfo callback")}super("UNDICI_STREAM")}catch(e){if(a.isStream(n)){a.destroy(n.on("error",a.nop),e)}throw e}this.responseHeaders=l||null;this.opaque=r||null;this.factory=t;this.callback=s;this.res=null;this.abort=null;this.context=null;this.trailers=null;this.body=n;this.onInfo=c||null;this.throwOnError=p||false;if(a.isStream(n)){n.on("error",(e=>{this.onError(e)}))}u(this,i)}onConnect(e,t){if(!this.callback){throw new n}this.abort=e;this.context=t}onHeaders(e,t,s,o){const{factory:n,opaque:l,context:u,callback:p,responseHeaders:g}=this;const h=g==="raw"?a.parseRawHeaders(t):a.parseHeaders(t);if(e<200){if(this.onInfo){this.onInfo({statusCode:e,headers:h})}return}this.factory=null;let d;if(this.throwOnError&&e>=400){const s=g==="raw"?a.parseHeaders(t):h;const i=s["content-type"];d=new A;this.callback=null;this.runInAsyncScope(c,null,{callback:p,body:d,contentType:i,statusCode:e,statusMessage:o,headers:h})}else{if(n===null){return}d=this.runInAsyncScope(n,null,{statusCode:e,headers:h,opaque:l,context:u});if(!d||typeof d.write!=="function"||typeof d.end!=="function"||typeof d.on!=="function"){throw new r("expected Writable")}i(d,{readable:false},(e=>{const{callback:t,res:s,opaque:i,trailers:A,abort:o}=this;this.res=null;if(e||!s.readable){a.destroy(s,e)}this.callback=null;this.runInAsyncScope(t,null,e||null,{opaque:i,trailers:A});if(e){o()}}))}d.on("drain",s);this.res=d;const E=d.writableNeedDrain!==undefined?d.writableNeedDrain:d._writableState&&d._writableState.needDrain;return E!==true}onData(e){const{res:t}=this;return t?t.write(e):true}onComplete(e){const{res:t}=this;p(this);if(!t){return}this.trailers=a.parseHeaders(e);t.end()}onError(e){const{res:t,callback:s,opaque:i,body:A}=this;p(this);this.factory=null;if(t){this.res=null;a.destroy(t,e)}else if(s){this.callback=null;queueMicrotask((()=>{this.runInAsyncScope(s,null,e,{opaque:i})}))}if(A){this.body=null;a.destroy(A,e)}}}function stream(e,t,s){if(s===undefined){return new Promise(((s,i)=>{stream.call(this,e,t,((e,t)=>e?i(e):s(t)))}))}try{this.dispatch(e,new StreamHandler(e,t,s))}catch(t){if(typeof s!=="function"){throw t}const i=e&&e.opaque;queueMicrotask((()=>s(t,{opaque:i})))}}e.exports=stream},1882:(e,t,s)=>{"use strict";const{InvalidArgumentError:i,RequestAbortedError:A,SocketError:o}=s(8707);const{AsyncResource:r}=s(290);const n=s(3440);const{addSignal:a,removeSignal:c}=s(158);const l=s(2613);class UpgradeHandler extends r{constructor(e,t){if(!e||typeof e!=="object"){throw new i("invalid opts")}if(typeof t!=="function"){throw new i("invalid callback")}const{signal:s,opaque:A,responseHeaders:o}=e;if(s&&typeof s.on!=="function"&&typeof s.addEventListener!=="function"){throw new i("signal must be an EventEmitter or EventTarget")}super("UNDICI_UPGRADE");this.responseHeaders=o||null;this.opaque=A||null;this.callback=t;this.abort=null;this.context=null;a(this,s)}onConnect(e,t){if(!this.callback){throw new A}this.abort=e;this.context=null}onHeaders(){throw new o("bad upgrade",null)}onUpgrade(e,t,s){const{callback:i,opaque:A,context:o}=this;l.strictEqual(e,101);c(this);this.callback=null;const r=this.responseHeaders==="raw"?n.parseRawHeaders(t):n.parseHeaders(t);this.runInAsyncScope(i,null,null,{headers:r,socket:s,opaque:A,context:o})}onError(e){const{callback:t,opaque:s}=this;c(this);if(t){this.callback=null;queueMicrotask((()=>{this.runInAsyncScope(t,null,e,{opaque:s})}))}}}function upgrade(e,t){if(t===undefined){return new Promise(((t,s)=>{upgrade.call(this,e,((e,i)=>e?s(e):t(i)))}))}try{const s=new UpgradeHandler(e,t);this.dispatch({...e,method:e.method||"GET",upgrade:e.protocol||"Websocket"},s)}catch(s){if(typeof t!=="function"){throw s}const i=e&&e.opaque;queueMicrotask((()=>t(s,{opaque:i})))}}e.exports=upgrade},6615:(e,t,s)=>{"use strict";e.exports.request=s(4043);e.exports.stream=s(3560);e.exports.pipeline=s(6862);e.exports.upgrade=s(1882);e.exports.connect=s(4660)},9927:(e,t,s)=>{"use strict";const i=s(2613);const{Readable:A}=s(2203);const{RequestAbortedError:o,NotSupportedError:r,InvalidArgumentError:n}=s(8707);const a=s(3440);const{ReadableStreamFrom:c,toUSVString:l}=s(3440);let u;const p=Symbol("kConsume");const g=Symbol("kReading");const h=Symbol("kBody");const d=Symbol("abort");const E=Symbol("kContentType");const noop=()=>{};e.exports=class BodyReadable extends A{constructor({resume:e,abort:t,contentType:s="",highWaterMark:i=64*1024}){super({autoDestroy:true,read:e,highWaterMark:i});this._readableState.dataEmitted=false;this[d]=t;this[p]=null;this[h]=null;this[E]=s;this[g]=false}destroy(e){if(this.destroyed){return this}if(!e&&!this._readableState.endEmitted){e=new o}if(e){this[d]()}return super.destroy(e)}emit(e,...t){if(e==="data"){this._readableState.dataEmitted=true}else if(e==="error"){this._readableState.errorEmitted=true}return super.emit(e,...t)}on(e,...t){if(e==="data"||e==="readable"){this[g]=true}return super.on(e,...t)}addListener(e,...t){return this.on(e,...t)}off(e,...t){const s=super.off(e,...t);if(e==="data"||e==="readable"){this[g]=this.listenerCount("data")>0||this.listenerCount("readable")>0}return s}removeListener(e,...t){return this.off(e,...t)}push(e){if(this[p]&&e!==null&&this.readableLength===0){consumePush(this[p],e);return this[g]?super.push(e):true}return super.push(e)}async text(){return consume(this,"text")}async json(){return consume(this,"json")}async blob(){return consume(this,"blob")}async arrayBuffer(){return consume(this,"arrayBuffer")}async formData(){throw new r}get bodyUsed(){return a.isDisturbed(this)}get body(){if(!this[h]){this[h]=c(this);if(this[p]){this[h].getReader();i(this[h].locked)}}return this[h]}dump(e){let t=e&&Number.isFinite(e.limit)?e.limit:262144;const s=e&&e.signal;if(s){try{if(typeof s!=="object"||!("aborted"in s)){throw new n("signal must be an AbortSignal")}a.throwIfAborted(s)}catch(e){return Promise.reject(e)}}if(this.closed){return Promise.resolve(null)}return new Promise(((e,i)=>{const A=s?a.addAbortListener(s,(()=>{this.destroy()})):noop;this.on("close",(function(){A();if(s&&s.aborted){i(s.reason||Object.assign(new Error("The operation was aborted"),{name:"AbortError"}))}else{e(null)}})).on("error",noop).on("data",(function(e){t-=e.length;if(t<=0){this.destroy()}})).resume()}))}};function isLocked(e){return e[h]&&e[h].locked===true||e[p]}function isUnusable(e){return a.isDisturbed(e)||isLocked(e)}async function consume(e,t){if(isUnusable(e)){throw new TypeError("unusable")}i(!e[p]);return new Promise(((s,i)=>{e[p]={type:t,stream:e,resolve:s,reject:i,length:0,body:[]};e.on("error",(function(e){consumeFinish(this[p],e)})).on("close",(function(){if(this[p].body!==null){consumeFinish(this[p],new o)}}));process.nextTick(consumeStart,e[p])}))}function consumeStart(e){if(e.body===null){return}const{_readableState:t}=e.stream;for(const s of t.buffer){consumePush(e,s)}if(t.endEmitted){consumeEnd(this[p])}else{e.stream.on("end",(function(){consumeEnd(this[p])}))}e.stream.resume();while(e.stream.read()!=null){}}function consumeEnd(e){const{type:t,body:i,resolve:A,stream:o,length:r}=e;try{if(t==="text"){A(l(Buffer.concat(i)))}else if(t==="json"){A(JSON.parse(Buffer.concat(i)))}else if(t==="arrayBuffer"){const e=new Uint8Array(r);let t=0;for(const s of i){e.set(s,t);t+=s.byteLength}A(e.buffer)}else if(t==="blob"){if(!u){u=s(181).Blob}A(new u(i,{type:o[E]}))}consumeFinish(e)}catch(e){o.destroy(e)}}function consumePush(e,t){e.length+=t.length;e.body.push(t)}function consumeFinish(e,t){if(e.body===null){return}if(t){e.reject(t)}else{e.resolve()}e.type=null;e.stream=null;e.resolve=null;e.reject=null;e.length=0;e.body=null}},7655:(e,t,s)=>{const i=s(2613);const{ResponseStatusCodeError:A}=s(8707);const{toUSVString:o}=s(3440);async function getResolveErrorBodyCallback({callback:e,body:t,contentType:s,statusCode:r,statusMessage:n,headers:a}){i(t);let c=[];let l=0;for await(const e of t){c.push(e);l+=e.length;if(l>128*1024){c=null;break}}if(r===204||!s||!c){process.nextTick(e,new A(`Response status code ${r}${n?`: ${n}`:""}`,r,a));return}try{if(s.startsWith("application/json")){const t=JSON.parse(o(Buffer.concat(c)));process.nextTick(e,new A(`Response status code ${r}${n?`: ${n}`:""}`,r,a,t));return}if(s.startsWith("text/")){const t=o(Buffer.concat(c));process.nextTick(e,new A(`Response status code ${r}${n?`: ${n}`:""}`,r,a,t));return}}catch(e){}process.nextTick(e,new A(`Response status code ${r}${n?`: ${n}`:""}`,r,a))}e.exports={getResolveErrorBodyCallback:getResolveErrorBodyCallback}},1093:(e,t,s)=>{"use strict";const{BalancedPoolMissingUpstreamError:i,InvalidArgumentError:A}=s(8707);const{PoolBase:o,kClients:r,kNeedDrain:n,kAddClient:a,kRemoveClient:c,kGetDispatcher:l}=s(8640);const u=s(5076);const{kUrl:p,kInterceptors:g}=s(6443);const{parseOrigin:h}=s(3440);const d=Symbol("factory");const E=Symbol("options");const Q=Symbol("kGreatestCommonDivisor");const C=Symbol("kCurrentWeight");const B=Symbol("kIndex");const I=Symbol("kWeight");const b=Symbol("kMaxWeightPerServer");const y=Symbol("kErrorPenalty");function getGreatestCommonDivisor(e,t){if(t===0)return e;return getGreatestCommonDivisor(t,e%t)}function defaultFactory(e,t){return new u(e,t)}class BalancedPool extends o{constructor(e=[],{factory:t=defaultFactory,...s}={}){super();this[E]=s;this[B]=-1;this[C]=0;this[b]=this[E].maxWeightPerServer||100;this[y]=this[E].errorPenalty||15;if(!Array.isArray(e)){e=[e]}if(typeof t!=="function"){throw new A("factory must be a function.")}this[g]=s.interceptors&&s.interceptors.BalancedPool&&Array.isArray(s.interceptors.BalancedPool)?s.interceptors.BalancedPool:[];this[d]=t;for(const t of e){this.addUpstream(t)}this._updateBalancedPoolStats()}addUpstream(e){const t=h(e).origin;if(this[r].find((e=>e[p].origin===t&&e.closed!==true&&e.destroyed!==true))){return this}const s=this[d](t,Object.assign({},this[E]));this[a](s);s.on("connect",(()=>{s[I]=Math.min(this[b],s[I]+this[y])}));s.on("connectionError",(()=>{s[I]=Math.max(1,s[I]-this[y]);this._updateBalancedPoolStats()}));s.on("disconnect",((...e)=>{const t=e[2];if(t&&t.code==="UND_ERR_SOCKET"){s[I]=Math.max(1,s[I]-this[y]);this._updateBalancedPoolStats()}}));for(const e of this[r]){e[I]=this[b]}this._updateBalancedPoolStats();return this}_updateBalancedPoolStats(){this[Q]=this[r].map((e=>e[I])).reduce(getGreatestCommonDivisor,0)}removeUpstream(e){const t=h(e).origin;const s=this[r].find((e=>e[p].origin===t&&e.closed!==true&&e.destroyed!==true));if(s){this[c](s)}return this}get upstreams(){return this[r].filter((e=>e.closed!==true&&e.destroyed!==true)).map((e=>e[p].origin))}[l](){if(this[r].length===0){throw new i}const e=this[r].find((e=>!e[n]&&e.closed!==true&&e.destroyed!==true));if(!e){return}const t=this[r].map((e=>e[n])).reduce(((e,t)=>e&&t),true);if(t){return}let s=0;let A=this[r].findIndex((e=>!e[n]));while(s++this[r][A][I]&&!e[n]){A=this[B]}if(this[B]===0){this[C]=this[C]-this[Q];if(this[C]<=0){this[C]=this[b]}}if(e[I]>=this[C]&&!e[n]){return e}}this[C]=this[r][A][I];this[B]=A;return this[r][A]}}e.exports=BalancedPool},479:(e,t,s)=>{"use strict";const{kConstruct:i}=s(296);const{urlEquals:A,fieldValues:o}=s(3993);const{kEnumerableProperty:r,isDisturbed:n}=s(3440);const{kHeadersList:a}=s(6443);const{webidl:c}=s(4222);const{Response:l,cloneResponse:u}=s(8676);const{Request:p}=s(5194);const{kState:g,kHeaders:h,kGuard:d,kRealm:E}=s(9710);const{fetching:Q}=s(2315);const{urlIsHttpHttpsScheme:C,createDeferredPromise:B,readAllBytes:I}=s(5523);const b=s(2613);const{getGlobalDispatcher:y}=s(2581);class Cache{#e;constructor(){if(arguments[0]!==i){c.illegalConstructor()}this.#e=arguments[1]}async match(e,t={}){c.brandCheck(this,Cache);c.argumentLengthCheck(arguments,1,{header:"Cache.match"});e=c.converters.RequestInfo(e);t=c.converters.CacheQueryOptions(t);const s=await this.matchAll(e,t);if(s.length===0){return}return s[0]}async matchAll(e=undefined,t={}){c.brandCheck(this,Cache);if(e!==undefined)e=c.converters.RequestInfo(e);t=c.converters.CacheQueryOptions(t);let s=null;if(e!==undefined){if(e instanceof p){s=e[g];if(s.method!=="GET"&&!t.ignoreMethod){return[]}}else if(typeof e==="string"){s=new p(e)[g]}}const i=[];if(e===undefined){for(const e of this.#e){i.push(e[1])}}else{const e=this.#t(s,t);for(const t of e){i.push(t[1])}}const A=[];for(const e of i){const t=new l(e.body?.source??null);const s=t[g].body;t[g]=e;t[g].body=s;t[h][a]=e.headersList;t[h][d]="immutable";A.push(t)}return Object.freeze(A)}async add(e){c.brandCheck(this,Cache);c.argumentLengthCheck(arguments,1,{header:"Cache.add"});e=c.converters.RequestInfo(e);const t=[e];const s=this.addAll(t);return await s}async addAll(e){c.brandCheck(this,Cache);c.argumentLengthCheck(arguments,1,{header:"Cache.addAll"});e=c.converters["sequence"](e);const t=[];const s=[];for(const t of e){if(typeof t==="string"){continue}const e=t[g];if(!C(e.url)||e.method!=="GET"){throw c.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme when method is not GET."})}}const i=[];for(const A of e){const e=new p(A)[g];if(!C(e.url)){throw c.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme."})}e.initiator="fetch";e.destination="subresource";s.push(e);const r=B();i.push(Q({request:e,dispatcher:y(),processResponse(e){if(e.type==="error"||e.status===206||e.status<200||e.status>299){r.reject(c.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}))}else if(e.headersList.contains("vary")){const t=o(e.headersList.get("vary"));for(const e of t){if(e==="*"){r.reject(c.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(const e of i){e.abort()}return}}}},processResponseEndOfBody(e){if(e.aborted){r.reject(new DOMException("aborted","AbortError"));return}r.resolve(e)}}));t.push(r.promise)}const A=Promise.all(t);const r=await A;const n=[];let a=0;for(const e of r){const t={type:"put",request:s[a],response:e};n.push(t);a++}const l=B();let u=null;try{this.#s(n)}catch(e){u=e}queueMicrotask((()=>{if(u===null){l.resolve(undefined)}else{l.reject(u)}}));return l.promise}async put(e,t){c.brandCheck(this,Cache);c.argumentLengthCheck(arguments,2,{header:"Cache.put"});e=c.converters.RequestInfo(e);t=c.converters.Response(t);let s=null;if(e instanceof p){s=e[g]}else{s=new p(e)[g]}if(!C(s.url)||s.method!=="GET"){throw c.errors.exception({header:"Cache.put",message:"Expected an http/s scheme when method is not GET"})}const i=t[g];if(i.status===206){throw c.errors.exception({header:"Cache.put",message:"Got 206 status"})}if(i.headersList.contains("vary")){const e=o(i.headersList.get("vary"));for(const t of e){if(t==="*"){throw c.errors.exception({header:"Cache.put",message:"Got * vary field value"})}}}if(i.body&&(n(i.body.stream)||i.body.stream.locked)){throw c.errors.exception({header:"Cache.put",message:"Response body is locked or disturbed"})}const A=u(i);const r=B();if(i.body!=null){const e=i.body.stream;const t=e.getReader();I(t).then(r.resolve,r.reject)}else{r.resolve(undefined)}const a=[];const l={type:"put",request:s,response:A};a.push(l);const h=await r.promise;if(A.body!=null){A.body.source=h}const d=B();let E=null;try{this.#s(a)}catch(e){E=e}queueMicrotask((()=>{if(E===null){d.resolve()}else{d.reject(E)}}));return d.promise}async delete(e,t={}){c.brandCheck(this,Cache);c.argumentLengthCheck(arguments,1,{header:"Cache.delete"});e=c.converters.RequestInfo(e);t=c.converters.CacheQueryOptions(t);let s=null;if(e instanceof p){s=e[g];if(s.method!=="GET"&&!t.ignoreMethod){return false}}else{b(typeof e==="string");s=new p(e)[g]}const i=[];const A={type:"delete",request:s,options:t};i.push(A);const o=B();let r=null;let n;try{n=this.#s(i)}catch(e){r=e}queueMicrotask((()=>{if(r===null){o.resolve(!!n?.length)}else{o.reject(r)}}));return o.promise}async keys(e=undefined,t={}){c.brandCheck(this,Cache);if(e!==undefined)e=c.converters.RequestInfo(e);t=c.converters.CacheQueryOptions(t);let s=null;if(e!==undefined){if(e instanceof p){s=e[g];if(s.method!=="GET"&&!t.ignoreMethod){return[]}}else if(typeof e==="string"){s=new p(e)[g]}}const i=B();const A=[];if(e===undefined){for(const e of this.#e){A.push(e[0])}}else{const e=this.#t(s,t);for(const t of e){A.push(t[0])}}queueMicrotask((()=>{const e=[];for(const t of A){const s=new p("https://a");s[g]=t;s[h][a]=t.headersList;s[h][d]="immutable";s[E]=t.client;e.push(s)}i.resolve(Object.freeze(e))}));return i.promise}#s(e){const t=this.#e;const s=[...t];const i=[];const A=[];try{for(const s of e){if(s.type!=="delete"&&s.type!=="put"){throw c.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'})}if(s.type==="delete"&&s.response!=null){throw c.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"})}if(this.#t(s.request,s.options,i).length){throw new DOMException("???","InvalidStateError")}let e;if(s.type==="delete"){e=this.#t(s.request,s.options);if(e.length===0){return[]}for(const s of e){const e=t.indexOf(s);b(e!==-1);t.splice(e,1)}}else if(s.type==="put"){if(s.response==null){throw c.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"})}const A=s.request;if(!C(A.url)){throw c.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"})}if(A.method!=="GET"){throw c.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"})}if(s.options!=null){throw c.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"})}e=this.#t(s.request);for(const s of e){const e=t.indexOf(s);b(e!==-1);t.splice(e,1)}t.push([s.request,s.response]);i.push([s.request,s.response])}A.push([s.request,s.response])}return A}catch(e){this.#e.length=0;this.#e=s;throw e}}#t(e,t,s){const i=[];const A=s??this.#e;for(const s of A){const[A,o]=s;if(this.#i(e,A,o,t)){i.push(s)}}return i}#i(e,t,s=null,i){const r=new URL(e.url);const n=new URL(t.url);if(i?.ignoreSearch){n.search="";r.search=""}if(!A(r,n,true)){return false}if(s==null||i?.ignoreVary||!s.headersList.contains("vary")){return true}const a=o(s.headersList.get("vary"));for(const s of a){if(s==="*"){return false}const i=t.headersList.get(s);const A=e.headersList.get(s);if(i!==A){return false}}return true}}Object.defineProperties(Cache.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:true},match:r,matchAll:r,add:r,addAll:r,put:r,delete:r,keys:r});const w=[{key:"ignoreSearch",converter:c.converters.boolean,defaultValue:false},{key:"ignoreMethod",converter:c.converters.boolean,defaultValue:false},{key:"ignoreVary",converter:c.converters.boolean,defaultValue:false}];c.converters.CacheQueryOptions=c.dictionaryConverter(w);c.converters.MultiCacheQueryOptions=c.dictionaryConverter([...w,{key:"cacheName",converter:c.converters.DOMString}]);c.converters.Response=c.interfaceConverter(l);c.converters["sequence"]=c.sequenceConverter(c.converters.RequestInfo);e.exports={Cache:Cache}},4738:(e,t,s)=>{"use strict";const{kConstruct:i}=s(296);const{Cache:A}=s(479);const{webidl:o}=s(4222);const{kEnumerableProperty:r}=s(3440);class CacheStorage{#A=new Map;constructor(){if(arguments[0]!==i){o.illegalConstructor()}}async match(e,t={}){o.brandCheck(this,CacheStorage);o.argumentLengthCheck(arguments,1,{header:"CacheStorage.match"});e=o.converters.RequestInfo(e);t=o.converters.MultiCacheQueryOptions(t);if(t.cacheName!=null){if(this.#A.has(t.cacheName)){const s=this.#A.get(t.cacheName);const o=new A(i,s);return await o.match(e,t)}}else{for(const s of this.#A.values()){const o=new A(i,s);const r=await o.match(e,t);if(r!==undefined){return r}}}}async has(e){o.brandCheck(this,CacheStorage);o.argumentLengthCheck(arguments,1,{header:"CacheStorage.has"});e=o.converters.DOMString(e);return this.#A.has(e)}async open(e){o.brandCheck(this,CacheStorage);o.argumentLengthCheck(arguments,1,{header:"CacheStorage.open"});e=o.converters.DOMString(e);if(this.#A.has(e)){const t=this.#A.get(e);return new A(i,t)}const t=[];this.#A.set(e,t);return new A(i,t)}async delete(e){o.brandCheck(this,CacheStorage);o.argumentLengthCheck(arguments,1,{header:"CacheStorage.delete"});e=o.converters.DOMString(e);return this.#A.delete(e)}async keys(){o.brandCheck(this,CacheStorage);const e=this.#A.keys();return[...e]}}Object.defineProperties(CacheStorage.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:true},match:r,has:r,open:r,delete:r,keys:r});e.exports={CacheStorage:CacheStorage}},296:(e,t,s)=>{"use strict";e.exports={kConstruct:s(6443).kConstruct}},3993:(e,t,s)=>{"use strict";const i=s(2613);const{URLSerializer:A}=s(4322);const{isValidHeaderName:o}=s(5523);function urlEquals(e,t,s=false){const i=A(e,s);const o=A(t,s);return i===o}function fieldValues(e){i(e!==null);const t=[];for(let s of e.split(",")){s=s.trim();if(!s.length){continue}else if(!o(s)){continue}t.push(s)}return t}e.exports={urlEquals:urlEquals,fieldValues:fieldValues}},6197:(e,t,s)=>{"use strict";const i=s(2613);const A=s(9278);const o=s(8611);const{pipeline:r}=s(2203);const n=s(3440);const a=s(8804);const c=s(4655);const l=s(1);const{RequestContentLengthMismatchError:u,ResponseContentLengthMismatchError:p,InvalidArgumentError:g,RequestAbortedError:h,HeadersTimeoutError:d,HeadersOverflowError:E,SocketError:Q,InformationalError:C,BodyTimeoutError:B,HTTPParserError:I,ResponseExceededMaxSizeError:b,ClientDestroyedError:y}=s(8707);const w=s(9136);const{kUrl:v,kReset:k,kServerName:R,kClient:x,kBusy:D,kParser:S,kConnect:F,kBlocking:T,kResuming:N,kRunning:U,kPending:L,kSize:G,kWriting:M,kQueue:_,kConnected:O,kConnecting:P,kNeedDrain:H,kNoRef:Y,kKeepAliveDefaultTimeout:J,kHostHeader:V,kPendingIdx:q,kRunningIdx:W,kError:j,kPipelining:z,kSocket:Z,kKeepAliveTimeoutValue:X,kMaxHeadersSize:K,kKeepAliveMaxTimeout:$,kKeepAliveTimeoutThreshold:ee,kHeadersTimeout:te,kBodyTimeout:se,kStrictContentLength:ie,kConnector:Ae,kMaxRedirections:oe,kMaxRequests:re,kCounter:ne,kClose:ae,kDestroy:ce,kDispatch:le,kInterceptors:ue,kLocalAddress:pe,kMaxResponseSize:ge,kHTTPConnVersion:he,kHost:de,kHTTP2Session:Ee,kHTTP2SessionState:fe,kHTTP2BuildRequest:Qe,kHTTP2CopyHeaders:Ce,kHTTP1BuildRequest:me}=s(6443);let Be;try{Be=s(5675)}catch{Be={constants:{}}}const{constants:{HTTP2_HEADER_AUTHORITY:Ie,HTTP2_HEADER_METHOD:be,HTTP2_HEADER_PATH:ye,HTTP2_HEADER_SCHEME:we,HTTP2_HEADER_CONTENT_LENGTH:ve,HTTP2_HEADER_EXPECT:ke,HTTP2_HEADER_STATUS:Re}}=Be;let xe=false;const De=Buffer[Symbol.species];const Se=Symbol("kClosedResolve");const Fe={};try{const e=s(1637);Fe.sendHeaders=e.channel("undici:client:sendHeaders");Fe.beforeConnect=e.channel("undici:client:beforeConnect");Fe.connectError=e.channel("undici:client:connectError");Fe.connected=e.channel("undici:client:connected")}catch{Fe.sendHeaders={hasSubscribers:false};Fe.beforeConnect={hasSubscribers:false};Fe.connectError={hasSubscribers:false};Fe.connected={hasSubscribers:false}}class Client extends l{constructor(e,{interceptors:t,maxHeaderSize:s,headersTimeout:i,socketTimeout:r,requestTimeout:a,connectTimeout:c,bodyTimeout:l,idleTimeout:u,keepAlive:p,keepAliveTimeout:h,maxKeepAliveTimeout:d,keepAliveMaxTimeout:E,keepAliveTimeoutThreshold:Q,socketPath:C,pipelining:B,tls:I,strictContentLength:b,maxCachedSessions:y,maxRedirections:k,connect:x,maxRequestsPerClient:D,localAddress:S,maxResponseSize:F,autoSelectFamily:T,autoSelectFamilyAttemptTimeout:U,allowH2:L,maxConcurrentStreams:G}={}){super();if(p!==undefined){throw new g("unsupported keepAlive, use pipelining=0 instead")}if(r!==undefined){throw new g("unsupported socketTimeout, use headersTimeout & bodyTimeout instead")}if(a!==undefined){throw new g("unsupported requestTimeout, use headersTimeout & bodyTimeout instead")}if(u!==undefined){throw new g("unsupported idleTimeout, use keepAliveTimeout instead")}if(d!==undefined){throw new g("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead")}if(s!=null&&!Number.isFinite(s)){throw new g("invalid maxHeaderSize")}if(C!=null&&typeof C!=="string"){throw new g("invalid socketPath")}if(c!=null&&(!Number.isFinite(c)||c<0)){throw new g("invalid connectTimeout")}if(h!=null&&(!Number.isFinite(h)||h<=0)){throw new g("invalid keepAliveTimeout")}if(E!=null&&(!Number.isFinite(E)||E<=0)){throw new g("invalid keepAliveMaxTimeout")}if(Q!=null&&!Number.isFinite(Q)){throw new g("invalid keepAliveTimeoutThreshold")}if(i!=null&&(!Number.isInteger(i)||i<0)){throw new g("headersTimeout must be a positive integer or zero")}if(l!=null&&(!Number.isInteger(l)||l<0)){throw new g("bodyTimeout must be a positive integer or zero")}if(x!=null&&typeof x!=="function"&&typeof x!=="object"){throw new g("connect must be a function or an object")}if(k!=null&&(!Number.isInteger(k)||k<0)){throw new g("maxRedirections must be a positive number")}if(D!=null&&(!Number.isInteger(D)||D<0)){throw new g("maxRequestsPerClient must be a positive number")}if(S!=null&&(typeof S!=="string"||A.isIP(S)===0)){throw new g("localAddress must be valid string IP address")}if(F!=null&&(!Number.isInteger(F)||F<-1)){throw new g("maxResponseSize must be a positive number")}if(U!=null&&(!Number.isInteger(U)||U<-1)){throw new g("autoSelectFamilyAttemptTimeout must be a positive number")}if(L!=null&&typeof L!=="boolean"){throw new g("allowH2 must be a valid boolean value")}if(G!=null&&(typeof G!=="number"||G<1)){throw new g("maxConcurrentStreams must be a possitive integer, greater than 0")}if(typeof x!=="function"){x=w({...I,maxCachedSessions:y,allowH2:L,socketPath:C,timeout:c,...n.nodeHasAutoSelectFamily&&T?{autoSelectFamily:T,autoSelectFamilyAttemptTimeout:U}:undefined,...x})}this[ue]=t&&t.Client&&Array.isArray(t.Client)?t.Client:[Ne({maxRedirections:k})];this[v]=n.parseOrigin(e);this[Ae]=x;this[Z]=null;this[z]=B!=null?B:1;this[K]=s||o.maxHeaderSize;this[J]=h==null?4e3:h;this[$]=E==null?6e5:E;this[ee]=Q==null?1e3:Q;this[X]=this[J];this[R]=null;this[pe]=S!=null?S:null;this[N]=0;this[H]=0;this[V]=`host: ${this[v].hostname}${this[v].port?`:${this[v].port}`:""}\r\n`;this[se]=l!=null?l:3e5;this[te]=i!=null?i:3e5;this[ie]=b==null?true:b;this[oe]=k;this[re]=D;this[Se]=null;this[ge]=F>-1?F:-1;this[he]="h1";this[Ee]=null;this[fe]=!L?null:{openStreams:0,maxConcurrentStreams:G!=null?G:100};this[de]=`${this[v].hostname}${this[v].port?`:${this[v].port}`:""}`;this[_]=[];this[W]=0;this[q]=0}get pipelining(){return this[z]}set pipelining(e){this[z]=e;resume(this,true)}get[L](){return this[_].length-this[q]}get[U](){return this[q]-this[W]}get[G](){return this[_].length-this[W]}get[O](){return!!this[Z]&&!this[P]&&!this[Z].destroyed}get[D](){const e=this[Z];return e&&(e[k]||e[M]||e[T])||this[G]>=(this[z]||1)||this[L]>0}[F](e){connect(this);this.once("connect",e)}[le](e,t){const s=e.origin||this[v].origin;const i=this[he]==="h2"?c[Qe](s,e,t):c[me](s,e,t);this[_].push(i);if(this[N]){}else if(n.bodyLength(i.body)==null&&n.isIterable(i.body)){this[N]=1;process.nextTick(resume,this)}else{resume(this,true)}if(this[N]&&this[H]!==2&&this[D]){this[H]=2}return this[H]<2}async[ae](){return new Promise((e=>{if(!this[G]){e(null)}else{this[Se]=e}}))}async[ce](e){return new Promise((t=>{const s=this[_].splice(this[q]);for(let t=0;t{if(this[Se]){this[Se]();this[Se]=null}t()};if(this[Ee]!=null){n.destroy(this[Ee],e);this[Ee]=null;this[fe]=null}if(!this[Z]){queueMicrotask(callback)}else{n.destroy(this[Z].on("close",callback),e)}resume(this)}))}}function onHttp2SessionError(e){i(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID");this[Z][j]=e;onError(this[x],e)}function onHttp2FrameError(e,t,s){const i=new C(`HTTP/2: "frameError" received - type ${e}, code ${t}`);if(s===0){this[Z][j]=i;onError(this[x],i)}}function onHttp2SessionEnd(){n.destroy(this,new Q("other side closed"));n.destroy(this[Z],new Q("other side closed"))}function onHTTP2GoAway(e){const t=this[x];const s=new C(`HTTP/2: "GOAWAY" frame received with code ${e}`);t[Z]=null;t[Ee]=null;if(t.destroyed){i(this[L]===0);const e=t[_].splice(t[W]);for(let t=0;t0){const e=t[_][t[W]];t[_][t[W]++]=null;errorRequest(t,e,s)}t[q]=t[W];i(t[U]===0);t.emit("disconnect",t[v],[t],s);resume(t)}const Te=s(2824);const Ne=s(4415);const Ue=Buffer.alloc(0);async function lazyllhttp(){const e=process.env.JEST_WORKER_ID?s(3870):undefined;let t;try{t=await WebAssembly.compile(Buffer.from(s(3434),"base64"))}catch(i){t=await WebAssembly.compile(Buffer.from(e||s(3870),"base64"))}return await WebAssembly.instantiate(t,{env:{wasm_on_url:(e,t,s)=>0,wasm_on_status:(e,t,s)=>{i.strictEqual(Me.ptr,e);const A=t-Pe+_e.byteOffset;return Me.onStatus(new De(_e.buffer,A,s))||0},wasm_on_message_begin:e=>{i.strictEqual(Me.ptr,e);return Me.onMessageBegin()||0},wasm_on_header_field:(e,t,s)=>{i.strictEqual(Me.ptr,e);const A=t-Pe+_e.byteOffset;return Me.onHeaderField(new De(_e.buffer,A,s))||0},wasm_on_header_value:(e,t,s)=>{i.strictEqual(Me.ptr,e);const A=t-Pe+_e.byteOffset;return Me.onHeaderValue(new De(_e.buffer,A,s))||0},wasm_on_headers_complete:(e,t,s,A)=>{i.strictEqual(Me.ptr,e);return Me.onHeadersComplete(t,Boolean(s),Boolean(A))||0},wasm_on_body:(e,t,s)=>{i.strictEqual(Me.ptr,e);const A=t-Pe+_e.byteOffset;return Me.onBody(new De(_e.buffer,A,s))||0},wasm_on_message_complete:e=>{i.strictEqual(Me.ptr,e);return Me.onMessageComplete()||0}}})}let Le=null;let Ge=lazyllhttp();Ge.catch();let Me=null;let _e=null;let Oe=0;let Pe=null;const He=1;const Ye=2;const Je=3;class Parser{constructor(e,t,{exports:s}){i(Number.isFinite(e[K])&&e[K]>0);this.llhttp=s;this.ptr=this.llhttp.llhttp_alloc(Te.TYPE.RESPONSE);this.client=e;this.socket=t;this.timeout=null;this.timeoutValue=null;this.timeoutType=null;this.statusCode=null;this.statusText="";this.upgrade=false;this.headers=[];this.headersSize=0;this.headersMaxSize=e[K];this.shouldKeepAlive=false;this.paused=false;this.resume=this.resume.bind(this);this.bytesRead=0;this.keepAlive="";this.contentLength="";this.connection="";this.maxResponseSize=e[ge]}setTimeout(e,t){this.timeoutType=t;if(e!==this.timeoutValue){a.clearTimeout(this.timeout);if(e){this.timeout=a.setTimeout(onParserTimeout,e,this);if(this.timeout.unref){this.timeout.unref()}}else{this.timeout=null}this.timeoutValue=e}else if(this.timeout){if(this.timeout.refresh){this.timeout.refresh()}}}resume(){if(this.socket.destroyed||!this.paused){return}i(this.ptr!=null);i(Me==null);this.llhttp.llhttp_resume(this.ptr);i(this.timeoutType===Ye);if(this.timeout){if(this.timeout.refresh){this.timeout.refresh()}}this.paused=false;this.execute(this.socket.read()||Ue);this.readMore()}readMore(){while(!this.paused&&this.ptr){const e=this.socket.read();if(e===null){break}this.execute(e)}}execute(e){i(this.ptr!=null);i(Me==null);i(!this.paused);const{socket:t,llhttp:s}=this;if(e.length>Oe){if(Pe){s.free(Pe)}Oe=Math.ceil(e.length/4096)*4096;Pe=s.malloc(Oe)}new Uint8Array(s.memory.buffer,Pe,Oe).set(e);try{let i;try{_e=e;Me=this;i=s.llhttp_execute(this.ptr,Pe,e.length)}catch(e){throw e}finally{Me=null;_e=null}const A=s.llhttp_get_error_pos(this.ptr)-Pe;if(i===Te.ERROR.PAUSED_UPGRADE){this.onUpgrade(e.slice(A))}else if(i===Te.ERROR.PAUSED){this.paused=true;t.unshift(e.slice(A))}else if(i!==Te.ERROR.OK){const t=s.llhttp_get_error_reason(this.ptr);let o="";if(t){const e=new Uint8Array(s.memory.buffer,t).indexOf(0);o="Response does not match the HTTP/1.1 protocol ("+Buffer.from(s.memory.buffer,t,e).toString()+")"}throw new I(o,Te.ERROR[i],e.slice(A))}}catch(e){n.destroy(t,e)}}destroy(){i(this.ptr!=null);i(Me==null);this.llhttp.llhttp_free(this.ptr);this.ptr=null;a.clearTimeout(this.timeout);this.timeout=null;this.timeoutValue=null;this.timeoutType=null;this.paused=false}onStatus(e){this.statusText=e.toString()}onMessageBegin(){const{socket:e,client:t}=this;if(e.destroyed){return-1}const s=t[_][t[W]];if(!s){return-1}}onHeaderField(e){const t=this.headers.length;if((t&1)===0){this.headers.push(e)}else{this.headers[t-1]=Buffer.concat([this.headers[t-1],e])}this.trackHeader(e.length)}onHeaderValue(e){let t=this.headers.length;if((t&1)===1){this.headers.push(e);t+=1}else{this.headers[t-1]=Buffer.concat([this.headers[t-1],e])}const s=this.headers[t-2];if(s.length===10&&s.toString().toLowerCase()==="keep-alive"){this.keepAlive+=e.toString()}else if(s.length===10&&s.toString().toLowerCase()==="connection"){this.connection+=e.toString()}else if(s.length===14&&s.toString().toLowerCase()==="content-length"){this.contentLength+=e.toString()}this.trackHeader(e.length)}trackHeader(e){this.headersSize+=e;if(this.headersSize>=this.headersMaxSize){n.destroy(this.socket,new E)}}onUpgrade(e){const{upgrade:t,client:s,socket:A,headers:o,statusCode:r}=this;i(t);const a=s[_][s[W]];i(a);i(!A.destroyed);i(A===s[Z]);i(!this.paused);i(a.upgrade||a.method==="CONNECT");this.statusCode=null;this.statusText="";this.shouldKeepAlive=null;i(this.headers.length%2===0);this.headers=[];this.headersSize=0;A.unshift(e);A[S].destroy();A[S]=null;A[x]=null;A[j]=null;A.removeListener("error",onSocketError).removeListener("readable",onSocketReadable).removeListener("end",onSocketEnd).removeListener("close",onSocketClose);s[Z]=null;s[_][s[W]++]=null;s.emit("disconnect",s[v],[s],new C("upgrade"));try{a.onUpgrade(r,o,A)}catch(e){n.destroy(A,e)}resume(s)}onHeadersComplete(e,t,s){const{client:A,socket:o,headers:r,statusText:a}=this;if(o.destroyed){return-1}const c=A[_][A[W]];if(!c){return-1}i(!this.upgrade);i(this.statusCode<200);if(e===100){n.destroy(o,new Q("bad response",n.getSocketInfo(o)));return-1}if(t&&!c.upgrade){n.destroy(o,new Q("bad upgrade",n.getSocketInfo(o)));return-1}i.strictEqual(this.timeoutType,He);this.statusCode=e;this.shouldKeepAlive=s||c.method==="HEAD"&&!o[k]&&this.connection.toLowerCase()==="keep-alive";if(this.statusCode>=200){const e=c.bodyTimeout!=null?c.bodyTimeout:A[se];this.setTimeout(e,Ye)}else if(this.timeout){if(this.timeout.refresh){this.timeout.refresh()}}if(c.method==="CONNECT"){i(A[U]===1);this.upgrade=true;return 2}if(t){i(A[U]===1);this.upgrade=true;return 2}i(this.headers.length%2===0);this.headers=[];this.headersSize=0;if(this.shouldKeepAlive&&A[z]){const e=this.keepAlive?n.parseKeepAliveTimeout(this.keepAlive):null;if(e!=null){const t=Math.min(e-A[ee],A[$]);if(t<=0){o[k]=true}else{A[X]=t}}else{A[X]=A[J]}}else{o[k]=true}const l=c.onHeaders(e,r,this.resume,a)===false;if(c.aborted){return-1}if(c.method==="HEAD"){return 1}if(e<200){return 1}if(o[T]){o[T]=false;resume(A)}return l?Te.ERROR.PAUSED:0}onBody(e){const{client:t,socket:s,statusCode:A,maxResponseSize:o}=this;if(s.destroyed){return-1}const r=t[_][t[W]];i(r);i.strictEqual(this.timeoutType,Ye);if(this.timeout){if(this.timeout.refresh){this.timeout.refresh()}}i(A>=200);if(o>-1&&this.bytesRead+e.length>o){n.destroy(s,new b);return-1}this.bytesRead+=e.length;if(r.onData(e)===false){return Te.ERROR.PAUSED}}onMessageComplete(){const{client:e,socket:t,statusCode:s,upgrade:A,headers:o,contentLength:r,bytesRead:a,shouldKeepAlive:c}=this;if(t.destroyed&&(!s||c)){return-1}if(A){return}const l=e[_][e[W]];i(l);i(s>=100);this.statusCode=null;this.statusText="";this.bytesRead=0;this.contentLength="";this.keepAlive="";this.connection="";i(this.headers.length%2===0);this.headers=[];this.headersSize=0;if(s<200){return}if(l.method!=="HEAD"&&r&&a!==parseInt(r,10)){n.destroy(t,new p);return-1}l.onComplete(o);e[_][e[W]++]=null;if(t[M]){i.strictEqual(e[U],0);n.destroy(t,new C("reset"));return Te.ERROR.PAUSED}else if(!c){n.destroy(t,new C("reset"));return Te.ERROR.PAUSED}else if(t[k]&&e[U]===0){n.destroy(t,new C("reset"));return Te.ERROR.PAUSED}else if(e[z]===1){setImmediate(resume,e)}else{resume(e)}}}function onParserTimeout(e){const{socket:t,timeoutType:s,client:A}=e;if(s===He){if(!t[M]||t.writableNeedDrain||A[U]>1){i(!e.paused,"cannot be paused while waiting for headers");n.destroy(t,new d)}}else if(s===Ye){if(!e.paused){n.destroy(t,new B)}}else if(s===Je){i(A[U]===0&&A[X]);n.destroy(t,new C("socket idle timeout"))}}function onSocketReadable(){const{[S]:e}=this;if(e){e.readMore()}}function onSocketError(e){const{[x]:t,[S]:s}=this;i(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID");if(t[he]!=="h2"){if(e.code==="ECONNRESET"&&s.statusCode&&!s.shouldKeepAlive){s.onMessageComplete();return}}this[j]=e;onError(this[x],e)}function onError(e,t){if(e[U]===0&&t.code!=="UND_ERR_INFO"&&t.code!=="UND_ERR_SOCKET"){i(e[q]===e[W]);const s=e[_].splice(e[W]);for(let i=0;i0&&s.code!=="UND_ERR_INFO"){const t=e[_][e[W]];e[_][e[W]++]=null;errorRequest(e,t,s)}e[q]=e[W];i(e[U]===0);e.emit("disconnect",e[v],[e],s);resume(e)}async function connect(e){i(!e[P]);i(!e[Z]);let{host:t,hostname:s,protocol:o,port:r}=e[v];if(s[0]==="["){const e=s.indexOf("]");i(e!==-1);const t=s.substring(1,e);i(A.isIP(t));s=t}e[P]=true;if(Fe.beforeConnect.hasSubscribers){Fe.beforeConnect.publish({connectParams:{host:t,hostname:s,protocol:o,port:r,servername:e[R],localAddress:e[pe]},connector:e[Ae]})}try{const A=await new Promise(((i,A)=>{e[Ae]({host:t,hostname:s,protocol:o,port:r,servername:e[R],localAddress:e[pe]},((e,t)=>{if(e){A(e)}else{i(t)}}))}));if(e.destroyed){n.destroy(A.on("error",(()=>{})),new y);return}e[P]=false;i(A);const a=A.alpnProtocol==="h2";if(a){if(!xe){xe=true;process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"})}const t=Be.connect(e[v],{createConnection:()=>A,peerMaxConcurrentStreams:e[fe].maxConcurrentStreams});e[he]="h2";t[x]=e;t[Z]=A;t.on("error",onHttp2SessionError);t.on("frameError",onHttp2FrameError);t.on("end",onHttp2SessionEnd);t.on("goaway",onHTTP2GoAway);t.on("close",onSocketClose);t.unref();e[Ee]=t;A[Ee]=t}else{if(!Le){Le=await Ge;Ge=null}A[Y]=false;A[M]=false;A[k]=false;A[T]=false;A[S]=new Parser(e,A,Le)}A[ne]=0;A[re]=e[re];A[x]=e;A[j]=null;A.on("error",onSocketError).on("readable",onSocketReadable).on("end",onSocketEnd).on("close",onSocketClose);e[Z]=A;if(Fe.connected.hasSubscribers){Fe.connected.publish({connectParams:{host:t,hostname:s,protocol:o,port:r,servername:e[R],localAddress:e[pe]},connector:e[Ae],socket:A})}e.emit("connect",e[v],[e])}catch(A){if(e.destroyed){return}e[P]=false;if(Fe.connectError.hasSubscribers){Fe.connectError.publish({connectParams:{host:t,hostname:s,protocol:o,port:r,servername:e[R],localAddress:e[pe]},connector:e[Ae],error:A})}if(A.code==="ERR_TLS_CERT_ALTNAME_INVALID"){i(e[U]===0);while(e[L]>0&&e[_][e[q]].servername===e[R]){const t=e[_][e[q]++];errorRequest(e,t,A)}}else{onError(e,A)}e.emit("connectionError",e[v],[e],A)}resume(e)}function emitDrain(e){e[H]=0;e.emit("drain",e[v],[e])}function resume(e,t){if(e[N]===2){return}e[N]=2;_resume(e,t);e[N]=0;if(e[W]>256){e[_].splice(0,e[W]);e[q]-=e[W];e[W]=0}}function _resume(e,t){while(true){if(e.destroyed){i(e[L]===0);return}if(e[Se]&&!e[G]){e[Se]();e[Se]=null;return}const s=e[Z];if(s&&!s.destroyed&&s.alpnProtocol!=="h2"){if(e[G]===0){if(!s[Y]&&s.unref){s.unref();s[Y]=true}}else if(s[Y]&&s.ref){s.ref();s[Y]=false}if(e[G]===0){if(s[S].timeoutType!==Je){s[S].setTimeout(e[X],Je)}}else if(e[U]>0&&s[S].statusCode<200){if(s[S].timeoutType!==He){const t=e[_][e[W]];const i=t.headersTimeout!=null?t.headersTimeout:e[te];s[S].setTimeout(i,He)}}}if(e[D]){e[H]=2}else if(e[H]===2){if(t){e[H]=1;process.nextTick(emitDrain,e)}else{emitDrain(e)}continue}if(e[L]===0){return}if(e[U]>=(e[z]||1)){return}const A=e[_][e[q]];if(e[v].protocol==="https:"&&e[R]!==A.servername){if(e[U]>0){return}e[R]=A.servername;if(s&&s.servername!==A.servername){n.destroy(s,new C("servername changed"));return}}if(e[P]){return}if(!s&&!e[Ee]){connect(e);return}if(s.destroyed||s[M]||s[k]||s[T]){return}if(e[U]>0&&!A.idempotent){return}if(e[U]>0&&(A.upgrade||A.method==="CONNECT")){return}if(e[U]>0&&n.bodyLength(A.body)!==0&&(n.isStream(A.body)||n.isAsyncIterable(A.body))){return}if(!A.aborted&&write(e,A)){e[q]++}else{e[_].splice(e[q],1)}}}function shouldSendContentLength(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function write(e,t){if(e[he]==="h2"){writeH2(e,e[Ee],t);return}const{body:s,method:A,path:o,host:r,upgrade:a,headers:c,blocking:l,reset:p}=t;const g=A==="PUT"||A==="POST"||A==="PATCH";if(s&&typeof s.read==="function"){s.read(0)}const d=n.bodyLength(s);let E=d;if(E===null){E=t.contentLength}if(E===0&&!g){E=null}if(shouldSendContentLength(A)&&E>0&&t.contentLength!==null&&t.contentLength!==E){if(e[ie]){errorRequest(e,t,new u);return false}process.emitWarning(new u)}const Q=e[Z];try{t.onConnect((s=>{if(t.aborted||t.completed){return}errorRequest(e,t,s||new h);n.destroy(Q,new C("aborted"))}))}catch(s){errorRequest(e,t,s)}if(t.aborted){return false}if(A==="HEAD"){Q[k]=true}if(a||A==="CONNECT"){Q[k]=true}if(p!=null){Q[k]=p}if(e[re]&&Q[ne]++>=e[re]){Q[k]=true}if(l){Q[T]=true}let B=`${A} ${o} HTTP/1.1\r\n`;if(typeof r==="string"){B+=`host: ${r}\r\n`}else{B+=e[V]}if(a){B+=`connection: upgrade\r\nupgrade: ${a}\r\n`}else if(e[z]&&!Q[k]){B+="connection: keep-alive\r\n"}else{B+="connection: close\r\n"}if(c){B+=c}if(Fe.sendHeaders.hasSubscribers){Fe.sendHeaders.publish({request:t,headers:B,socket:Q})}if(!s||d===0){if(E===0){Q.write(`${B}content-length: 0\r\n\r\n`,"latin1")}else{i(E===null,"no body must not have content length");Q.write(`${B}\r\n`,"latin1")}t.onRequestSent()}else if(n.isBuffer(s)){i(E===s.byteLength,"buffer body must have content length");Q.cork();Q.write(`${B}content-length: ${E}\r\n\r\n`,"latin1");Q.write(s);Q.uncork();t.onBodySent(s);t.onRequestSent();if(!g){Q[k]=true}}else if(n.isBlobLike(s)){if(typeof s.stream==="function"){writeIterable({body:s.stream(),client:e,request:t,socket:Q,contentLength:E,header:B,expectsPayload:g})}else{writeBlob({body:s,client:e,request:t,socket:Q,contentLength:E,header:B,expectsPayload:g})}}else if(n.isStream(s)){writeStream({body:s,client:e,request:t,socket:Q,contentLength:E,header:B,expectsPayload:g})}else if(n.isIterable(s)){writeIterable({body:s,client:e,request:t,socket:Q,contentLength:E,header:B,expectsPayload:g})}else{i(false)}return true}function writeH2(e,t,s){const{body:A,method:o,path:r,host:a,upgrade:l,expectContinue:p,signal:g,headers:d}=s;let E;if(typeof d==="string")E=c[Ce](d.trim());else E=d;if(l){errorRequest(e,s,new Error("Upgrade not supported for H2"));return false}try{s.onConnect((t=>{if(s.aborted||s.completed){return}errorRequest(e,s,t||new h)}))}catch(t){errorRequest(e,s,t)}if(s.aborted){return false}let Q;const B=e[fe];E[Ie]=a||e[de];E[be]=o;if(o==="CONNECT"){t.ref();Q=t.request(E,{endStream:false,signal:g});if(Q.id&&!Q.pending){s.onUpgrade(null,null,Q);++B.openStreams}else{Q.once("ready",(()=>{s.onUpgrade(null,null,Q);++B.openStreams}))}Q.once("close",(()=>{B.openStreams-=1;if(B.openStreams===0)t.unref()}));return true}E[ye]=r;E[we]="https";const I=o==="PUT"||o==="POST"||o==="PATCH";if(A&&typeof A.read==="function"){A.read(0)}let b=n.bodyLength(A);if(b==null){b=s.contentLength}if(b===0||!I){b=null}if(shouldSendContentLength(o)&&b>0&&s.contentLength!=null&&s.contentLength!==b){if(e[ie]){errorRequest(e,s,new u);return false}process.emitWarning(new u)}if(b!=null){i(A,"no body must not have content length");E[ve]=`${b}`}t.ref();const y=o==="GET"||o==="HEAD";if(p){E[ke]="100-continue";Q=t.request(E,{endStream:y,signal:g});Q.once("continue",writeBodyH2)}else{Q=t.request(E,{endStream:y,signal:g});writeBodyH2()}++B.openStreams;Q.once("response",(e=>{const{[Re]:t,...i}=e;if(s.onHeaders(Number(t),i,Q.resume.bind(Q),"")===false){Q.pause()}}));Q.once("end",(()=>{s.onComplete([])}));Q.on("data",(e=>{if(s.onData(e)===false){Q.pause()}}));Q.once("close",(()=>{B.openStreams-=1;if(B.openStreams===0){t.unref()}}));Q.once("error",(function(t){if(e[Ee]&&!e[Ee].destroyed&&!this.closed&&!this.destroyed){B.streams-=1;n.destroy(Q,t)}}));Q.once("frameError",((t,i)=>{const A=new C(`HTTP/2: "frameError" received - type ${t}, code ${i}`);errorRequest(e,s,A);if(e[Ee]&&!e[Ee].destroyed&&!this.closed&&!this.destroyed){B.streams-=1;n.destroy(Q,A)}}));return true;function writeBodyH2(){if(!A){s.onRequestSent()}else if(n.isBuffer(A)){i(b===A.byteLength,"buffer body must have content length");Q.cork();Q.write(A);Q.uncork();Q.end();s.onBodySent(A);s.onRequestSent()}else if(n.isBlobLike(A)){if(typeof A.stream==="function"){writeIterable({client:e,request:s,contentLength:b,h2stream:Q,expectsPayload:I,body:A.stream(),socket:e[Z],header:""})}else{writeBlob({body:A,client:e,request:s,contentLength:b,expectsPayload:I,h2stream:Q,header:"",socket:e[Z]})}}else if(n.isStream(A)){writeStream({body:A,client:e,request:s,contentLength:b,expectsPayload:I,socket:e[Z],h2stream:Q,header:""})}else if(n.isIterable(A)){writeIterable({body:A,client:e,request:s,contentLength:b,expectsPayload:I,header:"",h2stream:Q,socket:e[Z]})}else{i(false)}}}function writeStream({h2stream:e,body:t,client:s,request:A,socket:o,contentLength:a,header:c,expectsPayload:l}){i(a!==0||s[U]===0,"stream body cannot be pipelined");if(s[he]==="h2"){const g=r(t,e,(s=>{if(s){n.destroy(t,s);n.destroy(e,s)}else{A.onRequestSent()}}));g.on("data",onPipeData);g.once("end",(()=>{g.removeListener("data",onPipeData);n.destroy(g)}));function onPipeData(e){A.onBodySent(e)}return}let u=false;const p=new AsyncWriter({socket:o,request:A,contentLength:a,client:s,expectsPayload:l,header:c});const onData=function(e){if(u){return}try{if(!p.write(e)&&this.pause){this.pause()}}catch(e){n.destroy(this,e)}};const onDrain=function(){if(u){return}if(t.resume){t.resume()}};const onAbort=function(){if(u){return}const e=new h;queueMicrotask((()=>onFinished(e)))};const onFinished=function(e){if(u){return}u=true;i(o.destroyed||o[M]&&s[U]<=1);o.off("drain",onDrain).off("error",onFinished);t.removeListener("data",onData).removeListener("end",onFinished).removeListener("error",onFinished).removeListener("close",onAbort);if(!e){try{p.end()}catch(t){e=t}}p.destroy(e);if(e&&(e.code!=="UND_ERR_INFO"||e.message!=="reset")){n.destroy(t,e)}else{n.destroy(t)}};t.on("data",onData).on("end",onFinished).on("error",onFinished).on("close",onAbort);if(t.resume){t.resume()}o.on("drain",onDrain).on("error",onFinished)}async function writeBlob({h2stream:e,body:t,client:s,request:A,socket:o,contentLength:r,header:a,expectsPayload:c}){i(r===t.size,"blob body must have content length");const l=s[he]==="h2";try{if(r!=null&&r!==t.size){throw new u}const i=Buffer.from(await t.arrayBuffer());if(l){e.cork();e.write(i);e.uncork()}else{o.cork();o.write(`${a}content-length: ${r}\r\n\r\n`,"latin1");o.write(i);o.uncork()}A.onBodySent(i);A.onRequestSent();if(!c){o[k]=true}resume(s)}catch(t){n.destroy(l?e:o,t)}}async function writeIterable({h2stream:e,body:t,client:s,request:A,socket:o,contentLength:r,header:n,expectsPayload:a}){i(r!==0||s[U]===0,"iterator body cannot be pipelined");let c=null;function onDrain(){if(c){const e=c;c=null;e()}}const waitForDrain=()=>new Promise(((e,t)=>{i(c===null);if(o[j]){t(o[j])}else{c=e}}));if(s[he]==="h2"){e.on("close",onDrain).on("drain",onDrain);try{for await(const s of t){if(o[j]){throw o[j]}const t=e.write(s);A.onBodySent(s);if(!t){await waitForDrain()}}}catch(t){e.destroy(t)}finally{A.onRequestSent();e.end();e.off("close",onDrain).off("drain",onDrain)}return}o.on("close",onDrain).on("drain",onDrain);const l=new AsyncWriter({socket:o,request:A,contentLength:r,client:s,expectsPayload:a,header:n});try{for await(const e of t){if(o[j]){throw o[j]}if(!l.write(e)){await waitForDrain()}}l.end()}catch(e){l.destroy(e)}finally{o.off("close",onDrain).off("drain",onDrain)}}class AsyncWriter{constructor({socket:e,request:t,contentLength:s,client:i,expectsPayload:A,header:o}){this.socket=e;this.request=t;this.contentLength=s;this.client=i;this.bytesWritten=0;this.expectsPayload=A;this.header=o;e[M]=true}write(e){const{socket:t,request:s,contentLength:i,client:A,bytesWritten:o,expectsPayload:r,header:n}=this;if(t[j]){throw t[j]}if(t.destroyed){return false}const a=Buffer.byteLength(e);if(!a){return true}if(i!==null&&o+a>i){if(A[ie]){throw new u}process.emitWarning(new u)}t.cork();if(o===0){if(!r){t[k]=true}if(i===null){t.write(`${n}transfer-encoding: chunked\r\n`,"latin1")}else{t.write(`${n}content-length: ${i}\r\n\r\n`,"latin1")}}if(i===null){t.write(`\r\n${a.toString(16)}\r\n`,"latin1")}this.bytesWritten+=a;const c=t.write(e);t.uncork();s.onBodySent(e);if(!c){if(t[S].timeout&&t[S].timeoutType===He){if(t[S].timeout.refresh){t[S].timeout.refresh()}}}return c}end(){const{socket:e,contentLength:t,client:s,bytesWritten:i,expectsPayload:A,header:o,request:r}=this;r.onRequestSent();e[M]=false;if(e[j]){throw e[j]}if(e.destroyed){return}if(i===0){if(A){e.write(`${o}content-length: 0\r\n\r\n`,"latin1")}else{e.write(`${o}\r\n`,"latin1")}}else if(t===null){e.write("\r\n0\r\n\r\n","latin1")}if(t!==null&&i!==t){if(s[ie]){throw new u}else{process.emitWarning(new u)}}if(e[S].timeout&&e[S].timeoutType===He){if(e[S].timeout.refresh){e[S].timeout.refresh()}}resume(s)}destroy(e){const{socket:t,client:s}=this;t[M]=false;if(e){i(s[U]<=1,"pipeline should only contain this request");n.destroy(t,e)}}}function errorRequest(e,t,s){try{t.onError(s);i(t.aborted)}catch(s){e.emit("error",s)}}e.exports=Client},3194:(e,t,s)=>{"use strict";const{kConnected:i,kSize:A}=s(6443);class CompatWeakRef{constructor(e){this.value=e}deref(){return this.value[i]===0&&this.value[A]===0?undefined:this.value}}class CompatFinalizer{constructor(e){this.finalizer=e}register(e,t){if(e.on){e.on("disconnect",(()=>{if(e[i]===0&&e[A]===0){this.finalizer(t)}}))}}}e.exports=function(){if(process.env.NODE_V8_COVERAGE){return{WeakRef:CompatWeakRef,FinalizationRegistry:CompatFinalizer}}return{WeakRef:global.WeakRef||CompatWeakRef,FinalizationRegistry:global.FinalizationRegistry||CompatFinalizer}}},9237:e=>{"use strict";const t=1024;const s=4096;e.exports={maxAttributeValueSize:t,maxNameValuePairSize:s}},3168:(e,t,s)=>{"use strict";const{parseSetCookie:i}=s(8915);const{stringify:A}=s(3834);const{webidl:o}=s(4222);const{Headers:r}=s(6349);function getCookies(e){o.argumentLengthCheck(arguments,1,{header:"getCookies"});o.brandCheck(e,r,{strict:false});const t=e.get("cookie");const s={};if(!t){return s}for(const e of t.split(";")){const[t,...i]=e.split("=");s[t.trim()]=i.join("=")}return s}function deleteCookie(e,t,s){o.argumentLengthCheck(arguments,2,{header:"deleteCookie"});o.brandCheck(e,r,{strict:false});t=o.converters.DOMString(t);s=o.converters.DeleteCookieAttributes(s);setCookie(e,{name:t,value:"",expires:new Date(0),...s})}function getSetCookies(e){o.argumentLengthCheck(arguments,1,{header:"getSetCookies"});o.brandCheck(e,r,{strict:false});const t=e.getSetCookie();if(!t){return[]}return t.map((e=>i(e)))}function setCookie(e,t){o.argumentLengthCheck(arguments,2,{header:"setCookie"});o.brandCheck(e,r,{strict:false});t=o.converters.Cookie(t);const s=A(t);if(s){e.append("Set-Cookie",A(t))}}o.converters.DeleteCookieAttributes=o.dictionaryConverter([{converter:o.nullableConverter(o.converters.DOMString),key:"path",defaultValue:null},{converter:o.nullableConverter(o.converters.DOMString),key:"domain",defaultValue:null}]);o.converters.Cookie=o.dictionaryConverter([{converter:o.converters.DOMString,key:"name"},{converter:o.converters.DOMString,key:"value"},{converter:o.nullableConverter((e=>{if(typeof e==="number"){return o.converters["unsigned long long"](e)}return new Date(e)})),key:"expires",defaultValue:null},{converter:o.nullableConverter(o.converters["long long"]),key:"maxAge",defaultValue:null},{converter:o.nullableConverter(o.converters.DOMString),key:"domain",defaultValue:null},{converter:o.nullableConverter(o.converters.DOMString),key:"path",defaultValue:null},{converter:o.nullableConverter(o.converters.boolean),key:"secure",defaultValue:null},{converter:o.nullableConverter(o.converters.boolean),key:"httpOnly",defaultValue:null},{converter:o.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:o.sequenceConverter(o.converters.DOMString),key:"unparsed",defaultValue:[]}]);e.exports={getCookies:getCookies,deleteCookie:deleteCookie,getSetCookies:getSetCookies,setCookie:setCookie}},8915:(e,t,s)=>{"use strict";const{maxNameValuePairSize:i,maxAttributeValueSize:A}=s(9237);const{isCTLExcludingHtab:o}=s(3834);const{collectASequenceOfCodePointsFast:r}=s(4322);const n=s(2613);function parseSetCookie(e){if(o(e)){return null}let t="";let s="";let A="";let n="";if(e.includes(";")){const i={position:0};t=r(";",e,i);s=e.slice(i.position)}else{t=e}if(!t.includes("=")){n=t}else{const e={position:0};A=r("=",t,e);n=t.slice(e.position+1)}A=A.trim();n=n.trim();if(A.length+n.length>i){return null}return{name:A,value:n,...parseUnparsedAttributes(s)}}function parseUnparsedAttributes(e,t={}){if(e.length===0){return t}n(e[0]===";");e=e.slice(1);let s="";if(e.includes(";")){s=r(";",e,{position:0});e=e.slice(s.length)}else{s=e;e=""}let i="";let o="";if(s.includes("=")){const e={position:0};i=r("=",s,e);o=s.slice(e.position+1)}else{i=s}i=i.trim();o=o.trim();if(o.length>A){return parseUnparsedAttributes(e,t)}const a=i.toLowerCase();if(a==="expires"){const e=new Date(o);t.expires=e}else if(a==="max-age"){const s=o.charCodeAt(0);if((s<48||s>57)&&o[0]!=="-"){return parseUnparsedAttributes(e,t)}if(!/^\d+$/.test(o)){return parseUnparsedAttributes(e,t)}const i=Number(o);t.maxAge=i}else if(a==="domain"){let e=o;if(e[0]==="."){e=e.slice(1)}e=e.toLowerCase();t.domain=e}else if(a==="path"){let e="";if(o.length===0||o[0]!=="/"){e="/"}else{e=o}t.path=e}else if(a==="secure"){t.secure=true}else if(a==="httponly"){t.httpOnly=true}else if(a==="samesite"){let e="Default";const s=o.toLowerCase();if(s.includes("none")){e="None"}if(s.includes("strict")){e="Strict"}if(s.includes("lax")){e="Lax"}t.sameSite=e}else{t.unparsed??=[];t.unparsed.push(`${i}=${o}`)}return parseUnparsedAttributes(e,t)}e.exports={parseSetCookie:parseSetCookie,parseUnparsedAttributes:parseUnparsedAttributes}},3834:e=>{"use strict";function isCTLExcludingHtab(e){if(e.length===0){return false}for(const t of e){const e=t.charCodeAt(0);if(e>=0||e<=8||(e>=10||e<=31)||e===127){return false}}}function validateCookieName(e){for(const t of e){const e=t.charCodeAt(0);if(e<=32||e>127||t==="("||t===")"||t===">"||t==="<"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}"){throw new Error("Invalid cookie name")}}}function validateCookieValue(e){for(const t of e){const e=t.charCodeAt(0);if(e<33||e===34||e===44||e===59||e===92||e>126){throw new Error("Invalid header value")}}}function validateCookiePath(e){for(const t of e){const e=t.charCodeAt(0);if(e<33||t===";"){throw new Error("Invalid cookie path")}}}function validateCookieDomain(e){if(e.startsWith("-")||e.endsWith(".")||e.endsWith("-")){throw new Error("Invalid cookie domain")}}function toIMFDate(e){if(typeof e==="number"){e=new Date(e)}const t=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];const s=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];const i=t[e.getUTCDay()];const A=e.getUTCDate().toString().padStart(2,"0");const o=s[e.getUTCMonth()];const r=e.getUTCFullYear();const n=e.getUTCHours().toString().padStart(2,"0");const a=e.getUTCMinutes().toString().padStart(2,"0");const c=e.getUTCSeconds().toString().padStart(2,"0");return`${i}, ${A} ${o} ${r} ${n}:${a}:${c} GMT`}function validateCookieMaxAge(e){if(e<0){throw new Error("Invalid cookie max-age")}}function stringify(e){if(e.name.length===0){return null}validateCookieName(e.name);validateCookieValue(e.value);const t=[`${e.name}=${e.value}`];if(e.name.startsWith("__Secure-")){e.secure=true}if(e.name.startsWith("__Host-")){e.secure=true;e.domain=null;e.path="/"}if(e.secure){t.push("Secure")}if(e.httpOnly){t.push("HttpOnly")}if(typeof e.maxAge==="number"){validateCookieMaxAge(e.maxAge);t.push(`Max-Age=${e.maxAge}`)}if(e.domain){validateCookieDomain(e.domain);t.push(`Domain=${e.domain}`)}if(e.path){validateCookiePath(e.path);t.push(`Path=${e.path}`)}if(e.expires&&e.expires.toString()!=="Invalid Date"){t.push(`Expires=${toIMFDate(e.expires)}`)}if(e.sameSite){t.push(`SameSite=${e.sameSite}`)}for(const s of e.unparsed){if(!s.includes("=")){throw new Error("Invalid unparsed")}const[e,...i]=s.split("=");t.push(`${e.trim()}=${i.join("=")}`)}return t.join("; ")}e.exports={isCTLExcludingHtab:isCTLExcludingHtab,validateCookieName:validateCookieName,validateCookiePath:validateCookiePath,validateCookieValue:validateCookieValue,toIMFDate:toIMFDate,stringify:stringify}},9136:(e,t,s)=>{"use strict";const i=s(9278);const A=s(2613);const o=s(3440);const{InvalidArgumentError:r,ConnectTimeoutError:n}=s(8707);let a;let c;if(global.FinalizationRegistry&&!process.env.NODE_V8_COVERAGE){c=class WeakSessionCache{constructor(e){this._maxCachedSessions=e;this._sessionCache=new Map;this._sessionRegistry=new global.FinalizationRegistry((e=>{if(this._sessionCache.size=this._maxCachedSessions){const{value:e}=this._sessionCache.keys().next();this._sessionCache.delete(e)}this._sessionCache.set(e,t)}}}function buildConnector({allowH2:e,maxCachedSessions:t,socketPath:n,timeout:l,...u}){if(t!=null&&(!Number.isInteger(t)||t<0)){throw new r("maxCachedSessions must be a positive integer or zero")}const p={path:n,...u};const g=new c(t==null?100:t);l=l==null?1e4:l;e=e!=null?e:false;return function connect({hostname:t,host:r,protocol:n,port:c,servername:u,localAddress:h,httpSocket:d},E){let Q;if(n==="https:"){if(!a){a=s(4756)}u=u||p.servername||o.getServerName(r)||null;const i=u||t;const n=g.get(i)||null;A(i);Q=a.connect({highWaterMark:16384,...p,servername:u,session:n,localAddress:h,ALPNProtocols:e?["http/1.1","h2"]:["http/1.1"],socket:d,port:c||443,host:t});Q.on("session",(function(e){g.set(i,e)}))}else{A(!d,"httpSocket can only be sent on TLS update");Q=i.connect({highWaterMark:64*1024,...p,localAddress:h,port:c||80,host:t})}if(p.keepAlive==null||p.keepAlive){const e=p.keepAliveInitialDelay===undefined?6e4:p.keepAliveInitialDelay;Q.setKeepAlive(true,e)}const C=setupTimeout((()=>onConnectTimeout(Q)),l);Q.setNoDelay(true).once(n==="https:"?"secureConnect":"connect",(function(){C();if(E){const e=E;E=null;e(null,this)}})).on("error",(function(e){C();if(E){const t=E;E=null;t(e)}}));return Q}}function setupTimeout(e,t){if(!t){return()=>{}}let s=null;let i=null;const A=setTimeout((()=>{s=setImmediate((()=>{if(process.platform==="win32"){i=setImmediate((()=>e()))}else{e()}}))}),t);return()=>{clearTimeout(A);clearImmediate(s);clearImmediate(i)}}function onConnectTimeout(e){o.destroy(e,new n)}e.exports=buildConnector},735:e=>{"use strict";const t={};const s=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"];for(let e=0;e{"use strict";class UndiciError extends Error{constructor(e){super(e);this.name="UndiciError";this.code="UND_ERR"}}class ConnectTimeoutError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,ConnectTimeoutError);this.name="ConnectTimeoutError";this.message=e||"Connect Timeout Error";this.code="UND_ERR_CONNECT_TIMEOUT"}}class HeadersTimeoutError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,HeadersTimeoutError);this.name="HeadersTimeoutError";this.message=e||"Headers Timeout Error";this.code="UND_ERR_HEADERS_TIMEOUT"}}class HeadersOverflowError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,HeadersOverflowError);this.name="HeadersOverflowError";this.message=e||"Headers Overflow Error";this.code="UND_ERR_HEADERS_OVERFLOW"}}class BodyTimeoutError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,BodyTimeoutError);this.name="BodyTimeoutError";this.message=e||"Body Timeout Error";this.code="UND_ERR_BODY_TIMEOUT"}}class ResponseStatusCodeError extends UndiciError{constructor(e,t,s,i){super(e);Error.captureStackTrace(this,ResponseStatusCodeError);this.name="ResponseStatusCodeError";this.message=e||"Response Status Code Error";this.code="UND_ERR_RESPONSE_STATUS_CODE";this.body=i;this.status=t;this.statusCode=t;this.headers=s}}class InvalidArgumentError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,InvalidArgumentError);this.name="InvalidArgumentError";this.message=e||"Invalid Argument Error";this.code="UND_ERR_INVALID_ARG"}}class InvalidReturnValueError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,InvalidReturnValueError);this.name="InvalidReturnValueError";this.message=e||"Invalid Return Value Error";this.code="UND_ERR_INVALID_RETURN_VALUE"}}class RequestAbortedError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,RequestAbortedError);this.name="AbortError";this.message=e||"Request aborted";this.code="UND_ERR_ABORTED"}}class InformationalError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,InformationalError);this.name="InformationalError";this.message=e||"Request information";this.code="UND_ERR_INFO"}}class RequestContentLengthMismatchError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,RequestContentLengthMismatchError);this.name="RequestContentLengthMismatchError";this.message=e||"Request body length does not match content-length header";this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}}class ResponseContentLengthMismatchError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,ResponseContentLengthMismatchError);this.name="ResponseContentLengthMismatchError";this.message=e||"Response body length does not match content-length header";this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}}class ClientDestroyedError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,ClientDestroyedError);this.name="ClientDestroyedError";this.message=e||"The client is destroyed";this.code="UND_ERR_DESTROYED"}}class ClientClosedError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,ClientClosedError);this.name="ClientClosedError";this.message=e||"The client is closed";this.code="UND_ERR_CLOSED"}}class SocketError extends UndiciError{constructor(e,t){super(e);Error.captureStackTrace(this,SocketError);this.name="SocketError";this.message=e||"Socket error";this.code="UND_ERR_SOCKET";this.socket=t}}class NotSupportedError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,NotSupportedError);this.name="NotSupportedError";this.message=e||"Not supported error";this.code="UND_ERR_NOT_SUPPORTED"}}class BalancedPoolMissingUpstreamError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,NotSupportedError);this.name="MissingUpstreamError";this.message=e||"No upstream has been added to the BalancedPool";this.code="UND_ERR_BPL_MISSING_UPSTREAM"}}class HTTPParserError extends Error{constructor(e,t,s){super(e);Error.captureStackTrace(this,HTTPParserError);this.name="HTTPParserError";this.code=t?`HPE_${t}`:undefined;this.data=s?s.toString():undefined}}class ResponseExceededMaxSizeError extends UndiciError{constructor(e){super(e);Error.captureStackTrace(this,ResponseExceededMaxSizeError);this.name="ResponseExceededMaxSizeError";this.message=e||"Response content exceeded max size";this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}}class RequestRetryError extends UndiciError{constructor(e,t,{headers:s,data:i}){super(e);Error.captureStackTrace(this,RequestRetryError);this.name="RequestRetryError";this.message=e||"Request retry error";this.code="UND_ERR_REQ_RETRY";this.statusCode=t;this.data=i;this.headers=s}}e.exports={HTTPParserError:HTTPParserError,UndiciError:UndiciError,HeadersTimeoutError:HeadersTimeoutError,HeadersOverflowError:HeadersOverflowError,BodyTimeoutError:BodyTimeoutError,RequestContentLengthMismatchError:RequestContentLengthMismatchError,ConnectTimeoutError:ConnectTimeoutError,ResponseStatusCodeError:ResponseStatusCodeError,InvalidArgumentError:InvalidArgumentError,InvalidReturnValueError:InvalidReturnValueError,RequestAbortedError:RequestAbortedError,ClientDestroyedError:ClientDestroyedError,ClientClosedError:ClientClosedError,InformationalError:InformationalError,SocketError:SocketError,NotSupportedError:NotSupportedError,ResponseContentLengthMismatchError:ResponseContentLengthMismatchError,BalancedPoolMissingUpstreamError:BalancedPoolMissingUpstreamError,ResponseExceededMaxSizeError:ResponseExceededMaxSizeError,RequestRetryError:RequestRetryError}},4655:(e,t,s)=>{"use strict";const{InvalidArgumentError:i,NotSupportedError:A}=s(8707);const o=s(2613);const{kHTTP2BuildRequest:r,kHTTP2CopyHeaders:n,kHTTP1BuildRequest:a}=s(6443);const c=s(3440);const l=/^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/;const u=/[^\t\x20-\x7e\x80-\xff]/;const p=/[^\u0021-\u00ff]/;const g=Symbol("handler");const h={};let d;try{const e=s(1637);h.create=e.channel("undici:request:create");h.bodySent=e.channel("undici:request:bodySent");h.headers=e.channel("undici:request:headers");h.trailers=e.channel("undici:request:trailers");h.error=e.channel("undici:request:error")}catch{h.create={hasSubscribers:false};h.bodySent={hasSubscribers:false};h.headers={hasSubscribers:false};h.trailers={hasSubscribers:false};h.error={hasSubscribers:false}}class Request{constructor(e,{path:t,method:A,body:o,headers:r,query:n,idempotent:a,blocking:u,upgrade:E,headersTimeout:Q,bodyTimeout:C,reset:B,throwOnError:I,expectContinue:b},y){if(typeof t!=="string"){throw new i("path must be a string")}else if(t[0]!=="/"&&!(t.startsWith("http://")||t.startsWith("https://"))&&A!=="CONNECT"){throw new i("path must be an absolute URL or start with a slash")}else if(p.exec(t)!==null){throw new i("invalid request path")}if(typeof A!=="string"){throw new i("method must be a string")}else if(l.exec(A)===null){throw new i("invalid request method")}if(E&&typeof E!=="string"){throw new i("upgrade must be a string")}if(Q!=null&&(!Number.isFinite(Q)||Q<0)){throw new i("invalid headersTimeout")}if(C!=null&&(!Number.isFinite(C)||C<0)){throw new i("invalid bodyTimeout")}if(B!=null&&typeof B!=="boolean"){throw new i("invalid reset")}if(b!=null&&typeof b!=="boolean"){throw new i("invalid expectContinue")}this.headersTimeout=Q;this.bodyTimeout=C;this.throwOnError=I===true;this.method=A;this.abort=null;if(o==null){this.body=null}else if(c.isStream(o)){this.body=o;const e=this.body._readableState;if(!e||!e.autoDestroy){this.endHandler=function autoDestroy(){c.destroy(this)};this.body.on("end",this.endHandler)}this.errorHandler=e=>{if(this.abort){this.abort(e)}else{this.error=e}};this.body.on("error",this.errorHandler)}else if(c.isBuffer(o)){this.body=o.byteLength?o:null}else if(ArrayBuffer.isView(o)){this.body=o.buffer.byteLength?Buffer.from(o.buffer,o.byteOffset,o.byteLength):null}else if(o instanceof ArrayBuffer){this.body=o.byteLength?Buffer.from(o):null}else if(typeof o==="string"){this.body=o.length?Buffer.from(o):null}else if(c.isFormDataLike(o)||c.isIterable(o)||c.isBlobLike(o)){this.body=o}else{throw new i("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable")}this.completed=false;this.aborted=false;this.upgrade=E||null;this.path=n?c.buildURL(t,n):t;this.origin=e;this.idempotent=a==null?A==="HEAD"||A==="GET":a;this.blocking=u==null?false:u;this.reset=B==null?null:B;this.host=null;this.contentLength=null;this.contentType=null;this.headers="";this.expectContinue=b!=null?b:false;if(Array.isArray(r)){if(r.length%2!==0){throw new i("headers array must be even")}for(let e=0;e{e.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kHeadersList:Symbol("headers list"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kHTTP2BuildRequest:Symbol("http2 build request"),kHTTP1BuildRequest:Symbol("http1 build request"),kHTTP2CopyHeaders:Symbol("http2 copy headers"),kHTTPConnVersion:Symbol("http connection version"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable")}},3440:(e,t,s)=>{"use strict";const i=s(2613);const{kDestroyed:A,kBodyUsed:o}=s(6443);const{IncomingMessage:r}=s(8611);const n=s(2203);const a=s(9278);const{InvalidArgumentError:c}=s(8707);const{Blob:l}=s(181);const u=s(9023);const{stringify:p}=s(3480);const{headerNameLowerCasedRecord:g}=s(735);const[h,d]=process.versions.node.split(".").map((e=>Number(e)));function nop(){}function isStream(e){return e&&typeof e==="object"&&typeof e.pipe==="function"&&typeof e.on==="function"}function isBlobLike(e){return l&&e instanceof l||e&&typeof e==="object"&&(typeof e.stream==="function"||typeof e.arrayBuffer==="function")&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}function buildURL(e,t){if(e.includes("?")||e.includes("#")){throw new Error('Query params cannot be passed when url already contains "?" or "#".')}const s=p(t);if(s){e+="?"+s}return e}function parseURL(e){if(typeof e==="string"){e=new URL(e);if(!/^https?:/.test(e.origin||e.protocol)){throw new c("Invalid URL protocol: the URL must start with `http:` or `https:`.")}return e}if(!e||typeof e!=="object"){throw new c("Invalid URL: The URL argument must be a non-null object.")}if(!/^https?:/.test(e.origin||e.protocol)){throw new c("Invalid URL protocol: the URL must start with `http:` or `https:`.")}if(!(e instanceof URL)){if(e.port!=null&&e.port!==""&&!Number.isFinite(parseInt(e.port))){throw new c("Invalid URL: port must be a valid integer or a string representation of an integer.")}if(e.path!=null&&typeof e.path!=="string"){throw new c("Invalid URL path: the path must be a string or null/undefined.")}if(e.pathname!=null&&typeof e.pathname!=="string"){throw new c("Invalid URL pathname: the pathname must be a string or null/undefined.")}if(e.hostname!=null&&typeof e.hostname!=="string"){throw new c("Invalid URL hostname: the hostname must be a string or null/undefined.")}if(e.origin!=null&&typeof e.origin!=="string"){throw new c("Invalid URL origin: the origin must be a string or null/undefined.")}const t=e.port!=null?e.port:e.protocol==="https:"?443:80;let s=e.origin!=null?e.origin:`${e.protocol}//${e.hostname}:${t}`;let i=e.path!=null?e.path:`${e.pathname||""}${e.search||""}`;if(s.endsWith("/")){s=s.substring(0,s.length-1)}if(i&&!i.startsWith("/")){i=`/${i}`}e=new URL(s+i)}return e}function parseOrigin(e){e=parseURL(e);if(e.pathname!=="/"||e.search||e.hash){throw new c("invalid url")}return e}function getHostname(e){if(e[0]==="["){const t=e.indexOf("]");i(t!==-1);return e.substring(1,t)}const t=e.indexOf(":");if(t===-1)return e;return e.substring(0,t)}function getServerName(e){if(!e){return null}i.strictEqual(typeof e,"string");const t=getHostname(e);if(a.isIP(t)){return""}return t}function deepClone(e){return JSON.parse(JSON.stringify(e))}function isAsyncIterable(e){return!!(e!=null&&typeof e[Symbol.asyncIterator]==="function")}function isIterable(e){return!!(e!=null&&(typeof e[Symbol.iterator]==="function"||typeof e[Symbol.asyncIterator]==="function"))}function bodyLength(e){if(e==null){return 0}else if(isStream(e)){const t=e._readableState;return t&&t.objectMode===false&&t.ended===true&&Number.isFinite(t.length)?t.length:null}else if(isBlobLike(e)){return e.size!=null?e.size:null}else if(isBuffer(e)){return e.byteLength}return null}function isDestroyed(e){return!e||!!(e.destroyed||e[A])}function isReadableAborted(e){const t=e&&e._readableState;return isDestroyed(e)&&t&&!t.endEmitted}function destroy(e,t){if(e==null||!isStream(e)||isDestroyed(e)){return}if(typeof e.destroy==="function"){if(Object.getPrototypeOf(e).constructor===r){e.socket=null}e.destroy(t)}else if(t){process.nextTick(((e,t)=>{e.emit("error",t)}),e,t)}if(e.destroyed!==true){e[A]=true}}const E=/timeout=(\d+)/;function parseKeepAliveTimeout(e){const t=e.toString().match(E);return t?parseInt(t[1],10)*1e3:null}function headerNameToString(e){return g[e]||e.toLowerCase()}function parseHeaders(e,t={}){if(!Array.isArray(e))return e;for(let s=0;se.toString("utf8")))}else{t[i]=e[s+1].toString("utf8")}}else{if(!Array.isArray(A)){A=[A];t[i]=A}A.push(e[s+1].toString("utf8"))}}if("content-length"in t&&"content-disposition"in t){t["content-disposition"]=Buffer.from(t["content-disposition"]).toString("latin1")}return t}function parseRawHeaders(e){const t=[];let s=false;let i=-1;for(let A=0;A{e.close()}))}else{const t=Buffer.isBuffer(i)?i:Buffer.from(i);e.enqueue(new Uint8Array(t))}return e.desiredSize>0},async cancel(e){await t.return()}},0)}function isFormDataLike(e){return e&&typeof e==="object"&&typeof e.append==="function"&&typeof e.delete==="function"&&typeof e.get==="function"&&typeof e.getAll==="function"&&typeof e.has==="function"&&typeof e.set==="function"&&e[Symbol.toStringTag]==="FormData"}function throwIfAborted(e){if(!e){return}if(typeof e.throwIfAborted==="function"){e.throwIfAborted()}else{if(e.aborted){const e=new Error("The operation was aborted");e.name="AbortError";throw e}}}function addAbortListener(e,t){if("addEventListener"in e){e.addEventListener("abort",t,{once:true});return()=>e.removeEventListener("abort",t)}e.addListener("abort",t);return()=>e.removeListener("abort",t)}const C=!!String.prototype.toWellFormed;function toUSVString(e){if(C){return`${e}`.toWellFormed()}else if(u.toUSVString){return u.toUSVString(e)}return`${e}`}function parseRangeHeader(e){if(e==null||e==="")return{start:0,end:null,size:null};const t=e?e.match(/^bytes (\d+)-(\d+)\/(\d+)?$/):null;return t?{start:parseInt(t[1]),end:t[2]?parseInt(t[2]):null,size:t[3]?parseInt(t[3]):null}:null}const B=Object.create(null);B.enumerable=true;e.exports={kEnumerableProperty:B,nop:nop,isDisturbed:isDisturbed,isErrored:isErrored,isReadable:isReadable,toUSVString:toUSVString,isReadableAborted:isReadableAborted,isBlobLike:isBlobLike,parseOrigin:parseOrigin,parseURL:parseURL,getServerName:getServerName,isStream:isStream,isIterable:isIterable,isAsyncIterable:isAsyncIterable,isDestroyed:isDestroyed,headerNameToString:headerNameToString,parseRawHeaders:parseRawHeaders,parseHeaders:parseHeaders,parseKeepAliveTimeout:parseKeepAliveTimeout,destroy:destroy,bodyLength:bodyLength,deepClone:deepClone,ReadableStreamFrom:ReadableStreamFrom,isBuffer:isBuffer,validateHandler:validateHandler,getSocketInfo:getSocketInfo,isFormDataLike:isFormDataLike,buildURL:buildURL,throwIfAborted:throwIfAborted,addAbortListener:addAbortListener,parseRangeHeader:parseRangeHeader,nodeMajor:h,nodeMinor:d,nodeHasAutoSelectFamily:h>18||h===18&&d>=13,safeHTTPMethods:["GET","HEAD","OPTIONS","TRACE"]}},1:(e,t,s)=>{"use strict";const i=s(992);const{ClientDestroyedError:A,ClientClosedError:o,InvalidArgumentError:r}=s(8707);const{kDestroy:n,kClose:a,kDispatch:c,kInterceptors:l}=s(6443);const u=Symbol("destroyed");const p=Symbol("closed");const g=Symbol("onDestroyed");const h=Symbol("onClosed");const d=Symbol("Intercepted Dispatch");class DispatcherBase extends i{constructor(){super();this[u]=false;this[g]=null;this[p]=false;this[h]=[]}get destroyed(){return this[u]}get closed(){return this[p]}get interceptors(){return this[l]}set interceptors(e){if(e){for(let t=e.length-1;t>=0;t--){const e=this[l][t];if(typeof e!=="function"){throw new r("interceptor must be an function")}}}this[l]=e}close(e){if(e===undefined){return new Promise(((e,t)=>{this.close(((s,i)=>s?t(s):e(i)))}))}if(typeof e!=="function"){throw new r("invalid callback")}if(this[u]){queueMicrotask((()=>e(new A,null)));return}if(this[p]){if(this[h]){this[h].push(e)}else{queueMicrotask((()=>e(null,null)))}return}this[p]=true;this[h].push(e);const onClosed=()=>{const e=this[h];this[h]=null;for(let t=0;tthis.destroy())).then((()=>{queueMicrotask(onClosed)}))}destroy(e,t){if(typeof e==="function"){t=e;e=null}if(t===undefined){return new Promise(((t,s)=>{this.destroy(e,((e,i)=>e?s(e):t(i)))}))}if(typeof t!=="function"){throw new r("invalid callback")}if(this[u]){if(this[g]){this[g].push(t)}else{queueMicrotask((()=>t(null,null)))}return}if(!e){e=new A}this[u]=true;this[g]=this[g]||[];this[g].push(t);const onDestroyed=()=>{const e=this[g];this[g]=null;for(let t=0;t{queueMicrotask(onDestroyed)}))}[d](e,t){if(!this[l]||this[l].length===0){this[d]=this[c];return this[c](e,t)}let s=this[c].bind(this);for(let e=this[l].length-1;e>=0;e--){s=this[l][e](s)}this[d]=s;return s(e,t)}dispatch(e,t){if(!t||typeof t!=="object"){throw new r("handler must be an object")}try{if(!e||typeof e!=="object"){throw new r("opts must be an object.")}if(this[u]||this[g]){throw new A}if(this[p]){throw new o}return this[d](e,t)}catch(e){if(typeof t.onError!=="function"){throw new r("invalid onError method")}t.onError(e);return false}}}e.exports=DispatcherBase},992:(e,t,s)=>{"use strict";const i=s(4434);class Dispatcher extends i{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}}e.exports=Dispatcher},8923:(e,t,s)=>{"use strict";const i=s(9581);const A=s(3440);const{ReadableStreamFrom:o,isBlobLike:r,isReadableStreamLike:n,readableStreamClose:a,createDeferredPromise:c,fullyReadBody:l}=s(5523);const{FormData:u}=s(3073);const{kState:p}=s(9710);const{webidl:g}=s(4222);const{DOMException:h,structuredClone:d}=s(7326);const{Blob:E,File:Q}=s(181);const{kBodyUsed:C}=s(6443);const B=s(2613);const{isErrored:I}=s(3440);const{isUint8Array:b,isArrayBuffer:y}=s(8253);const{File:w}=s(3041);const{parseMIMEType:v,serializeAMimeType:k}=s(4322);let R;try{const e=s(7598);R=t=>e.randomInt(0,t)}catch{R=e=>Math.floor(Math.random(e))}let x=globalThis.ReadableStream;const D=Q??w;const S=new TextEncoder;const F=new TextDecoder;function extractBody(e,t=false){if(!x){x=s(3774).ReadableStream}let i=null;if(e instanceof x){i=e}else if(r(e)){i=e.stream()}else{i=new x({async pull(e){e.enqueue(typeof l==="string"?S.encode(l):l);queueMicrotask((()=>a(e)))},start(){},type:undefined})}B(n(i));let c=null;let l=null;let u=null;let p=null;if(typeof e==="string"){l=e;p="text/plain;charset=UTF-8"}else if(e instanceof URLSearchParams){l=e.toString();p="application/x-www-form-urlencoded;charset=UTF-8"}else if(y(e)){l=new Uint8Array(e.slice())}else if(ArrayBuffer.isView(e)){l=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength))}else if(A.isFormDataLike(e)){const t=`----formdata-undici-0${`${R(1e11)}`.padStart(11,"0")}`;const s=`--${t}\r\nContent-Disposition: form-data`
-/*! formdata-polyfill. MIT License. Jimmy Wärting */;const escape=e=>e.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22");const normalizeLinefeeds=e=>e.replace(/\r?\n|\r/g,"\r\n");const i=[];const A=new Uint8Array([13,10]);u=0;let o=false;for(const[t,r]of e){if(typeof r==="string"){const e=S.encode(s+`; name="${escape(normalizeLinefeeds(t))}"`+`\r\n\r\n${normalizeLinefeeds(r)}\r\n`);i.push(e);u+=e.byteLength}else{const e=S.encode(`${s}; name="${escape(normalizeLinefeeds(t))}"`+(r.name?`; filename="${escape(r.name)}"`:"")+"\r\n"+`Content-Type: ${r.type||"application/octet-stream"}\r\n\r\n`);i.push(e,r,A);if(typeof r.size==="number"){u+=e.byteLength+r.size+A.byteLength}else{o=true}}}const r=S.encode(`--${t}--`);i.push(r);u+=r.byteLength;if(o){u=null}l=e;c=async function*(){for(const e of i){if(e.stream){yield*e.stream()}else{yield e}}};p="multipart/form-data; boundary="+t}else if(r(e)){l=e;u=e.size;if(e.type){p=e.type}}else if(typeof e[Symbol.asyncIterator]==="function"){if(t){throw new TypeError("keepalive")}if(A.isDisturbed(e)||e.locked){throw new TypeError("Response body object should not be disturbed or locked")}i=e instanceof x?e:o(e)}if(typeof l==="string"||A.isBuffer(l)){u=Buffer.byteLength(l)}if(c!=null){let t;i=new x({async start(){t=c(e)[Symbol.asyncIterator]()},async pull(e){const{value:s,done:A}=await t.next();if(A){queueMicrotask((()=>{e.close()}))}else{if(!I(i)){e.enqueue(new Uint8Array(s))}}return e.desiredSize>0},async cancel(e){await t.return()},type:undefined})}const g={stream:i,source:l,length:u};return[g,p]}function safelyExtractBody(e,t=false){if(!x){x=s(3774).ReadableStream}if(e instanceof x){B(!A.isDisturbed(e),"The body has already been consumed.");B(!e.locked,"The stream is locked.")}return extractBody(e,t)}function cloneBody(e){const[t,s]=e.stream.tee();const i=d(s,{transfer:[s]});const[,A]=i.tee();e.stream=t;return{stream:A,length:e.length,source:e.source}}async function*consumeBody(e){if(e){if(b(e)){yield e}else{const t=e.stream;if(A.isDisturbed(t)){throw new TypeError("The body has already been consumed.")}if(t.locked){throw new TypeError("The stream is locked.")}t[C]=true;yield*t}}}function throwIfAborted(e){if(e.aborted){throw new h("The operation was aborted.","AbortError")}}function bodyMixinMethods(e){const t={blob(){return specConsumeBody(this,(e=>{let t=bodyMimeType(this);if(t==="failure"){t=""}else if(t){t=k(t)}return new E([e],{type:t})}),e)},arrayBuffer(){return specConsumeBody(this,(e=>new Uint8Array(e).buffer),e)},text(){return specConsumeBody(this,utf8DecodeBytes,e)},json(){return specConsumeBody(this,parseJSONFromBytes,e)},async formData(){g.brandCheck(this,e);throwIfAborted(this[p]);const t=this.headers.get("Content-Type");if(/multipart\/form-data/.test(t)){const e={};for(const[t,s]of this.headers)e[t.toLowerCase()]=s;const t=new u;let s;try{s=new i({headers:e,preservePath:true})}catch(e){throw new h(`${e}`,"AbortError")}s.on("field",((e,s)=>{t.append(e,s)}));s.on("file",((e,s,i,A,o)=>{const r=[];if(A==="base64"||A.toLowerCase()==="base64"){let A="";s.on("data",(e=>{A+=e.toString().replace(/[\r\n]/gm,"");const t=A.length-A.length%4;r.push(Buffer.from(A.slice(0,t),"base64"));A=A.slice(t)}));s.on("end",(()=>{r.push(Buffer.from(A,"base64"));t.append(e,new D(r,i,{type:o}))}))}else{s.on("data",(e=>{r.push(e)}));s.on("end",(()=>{t.append(e,new D(r,i,{type:o}))}))}}));const A=new Promise(((e,t)=>{s.on("finish",e);s.on("error",(e=>t(new TypeError(e))))}));if(this.body!==null)for await(const e of consumeBody(this[p].body))s.write(e);s.end();await A;return t}else if(/application\/x-www-form-urlencoded/.test(t)){let e;try{let t="";const s=new TextDecoder("utf-8",{ignoreBOM:true});for await(const e of consumeBody(this[p].body)){if(!b(e)){throw new TypeError("Expected Uint8Array chunk")}t+=s.decode(e,{stream:true})}t+=s.decode();e=new URLSearchParams(t)}catch(e){throw Object.assign(new TypeError,{cause:e})}const t=new u;for(const[s,i]of e){t.append(s,i)}return t}else{await Promise.resolve();throwIfAborted(this[p]);throw g.errors.exception({header:`${e.name}.formData`,message:"Could not parse content as FormData."})}}};return t}function mixinBody(e){Object.assign(e.prototype,bodyMixinMethods(e))}async function specConsumeBody(e,t,s){g.brandCheck(e,s);throwIfAborted(e[p]);if(bodyUnusable(e[p].body)){throw new TypeError("Body is unusable")}const i=c();const errorSteps=e=>i.reject(e);const successSteps=e=>{try{i.resolve(t(e))}catch(e){errorSteps(e)}};if(e[p].body==null){successSteps(new Uint8Array);return i.promise}await l(e[p].body,successSteps,errorSteps);return i.promise}function bodyUnusable(e){return e!=null&&(e.stream.locked||A.isDisturbed(e.stream))}function utf8DecodeBytes(e){if(e.length===0){return""}if(e[0]===239&&e[1]===187&&e[2]===191){e=e.subarray(3)}const t=F.decode(e);return t}function parseJSONFromBytes(e){return JSON.parse(utf8DecodeBytes(e))}function bodyMimeType(e){const{headersList:t}=e[p];const s=t.get("content-type");if(s===null){return"failure"}return v(s)}e.exports={extractBody:extractBody,safelyExtractBody:safelyExtractBody,cloneBody:cloneBody,mixinBody:mixinBody}},7326:(e,t,s)=>{"use strict";const{MessageChannel:i,receiveMessageOnPort:A}=s(8167);const o=["GET","HEAD","POST"];const r=new Set(o);const n=[101,204,205,304];const a=[301,302,303,307,308];const c=new Set(a);const l=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","5060","5061","6000","6566","6665","6666","6667","6668","6669","6697","10080"];const u=new Set(l);const p=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"];const g=new Set(p);const h=["follow","manual","error"];const d=["GET","HEAD","OPTIONS","TRACE"];const E=new Set(d);const Q=["navigate","same-origin","no-cors","cors"];const C=["omit","same-origin","include"];const B=["default","no-store","reload","no-cache","force-cache","only-if-cached"];const I=["content-encoding","content-language","content-location","content-type","content-length"];const b=["half"];const y=["CONNECT","TRACE","TRACK"];const w=new Set(y);const v=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""];const k=new Set(v);const R=globalThis.DOMException??(()=>{try{atob("~")}catch(e){return Object.getPrototypeOf(e).constructor}})();let x;const D=globalThis.structuredClone??function structuredClone(e,t=undefined){if(arguments.length===0){throw new TypeError("missing argument")}if(!x){x=new i}x.port1.unref();x.port2.unref();x.port1.postMessage(e,t?.transfer);return A(x.port2).message};e.exports={DOMException:R,structuredClone:D,subresource:v,forbiddenMethods:y,requestBodyHeader:I,referrerPolicy:p,requestRedirect:h,requestMode:Q,requestCredentials:C,requestCache:B,redirectStatus:a,corsSafeListedMethods:o,nullBodyStatus:n,safeMethods:d,badPorts:l,requestDuplex:b,subresourceSet:k,badPortsSet:u,redirectStatusSet:c,corsSafeListedMethodsSet:r,safeMethodsSet:E,forbiddenMethodsSet:w,referrerPolicySet:g}},4322:(e,t,s)=>{const i=s(2613);const{atob:A}=s(181);const{isomorphicDecode:o}=s(5523);const r=new TextEncoder;const n=/^[!#$%&'*+-.^_|~A-Za-z0-9]+$/;const a=/(\u000A|\u000D|\u0009|\u0020)/;const c=/[\u0009|\u0020-\u007E|\u0080-\u00FF]/;function dataURLProcessor(e){i(e.protocol==="data:");let t=URLSerializer(e,true);t=t.slice(5);const s={position:0};let A=collectASequenceOfCodePointsFast(",",t,s);const r=A.length;A=removeASCIIWhitespace(A,true,true);if(s.position>=t.length){return"failure"}s.position++;const n=t.slice(r+1);let a=stringPercentDecode(n);if(/;(\u0020){0,}base64$/i.test(A)){const e=o(a);a=forgivingBase64(e);if(a==="failure"){return"failure"}A=A.slice(0,-6);A=A.replace(/(\u0020)+$/,"");A=A.slice(0,-1)}if(A.startsWith(";")){A="text/plain"+A}let c=parseMIMEType(A);if(c==="failure"){c=parseMIMEType("text/plain;charset=US-ASCII")}return{mimeType:c,body:a}}function URLSerializer(e,t=false){if(!t){return e.href}const s=e.href;const i=e.hash.length;return i===0?s:s.substring(0,s.length-i)}function collectASequenceOfCodePoints(e,t,s){let i="";while(s.positione.length){return"failure"}t.position++;let i=collectASequenceOfCodePointsFast(";",e,t);i=removeHTTPWhitespace(i,false,true);if(i.length===0||!n.test(i)){return"failure"}const A=s.toLowerCase();const o=i.toLowerCase();const r={type:A,subtype:o,parameters:new Map,essence:`${A}/${o}`};while(t.positiona.test(e)),e,t);let s=collectASequenceOfCodePoints((e=>e!==";"&&e!=="="),e,t);s=s.toLowerCase();if(t.positione.length){break}let i=null;if(e[t.position]==='"'){i=collectAnHTTPQuotedString(e,t,true);collectASequenceOfCodePointsFast(";",e,t)}else{i=collectASequenceOfCodePointsFast(";",e,t);i=removeHTTPWhitespace(i,false,true);if(i.length===0){continue}}if(s.length!==0&&n.test(s)&&(i.length===0||c.test(i))&&!r.parameters.has(s)){r.parameters.set(s,i)}}return r}function forgivingBase64(e){e=e.replace(/[\u0009\u000A\u000C\u000D\u0020]/g,"");if(e.length%4===0){e=e.replace(/=?=$/,"")}if(e.length%4===1){return"failure"}if(/[^+/0-9A-Za-z]/.test(e)){return"failure"}const t=A(e);const s=new Uint8Array(t.length);for(let e=0;ee!=='"'&&e!=="\\"),e,t);if(t.position>=e.length){break}const s=e[t.position];t.position++;if(s==="\\"){if(t.position>=e.length){o+="\\";break}o+=e[t.position];t.position++}else{i(s==='"');break}}if(s){return o}return e.slice(A,t.position)}function serializeAMimeType(e){i(e!=="failure");const{parameters:t,essence:s}=e;let A=s;for(let[e,s]of t.entries()){A+=";";A+=e;A+="=";if(!n.test(s)){s=s.replace(/(\\|")/g,"\\$1");s='"'+s;s+='"'}A+=s}return A}function isHTTPWhiteSpace(e){return e==="\r"||e==="\n"||e==="\t"||e===" "}function removeHTTPWhitespace(e,t=true,s=true){let i=0;let A=e.length-1;if(t){for(;i0&&isHTTPWhiteSpace(e[A]);A--);}return e.slice(i,A+1)}function isASCIIWhitespace(e){return e==="\r"||e==="\n"||e==="\t"||e==="\f"||e===" "}function removeASCIIWhitespace(e,t=true,s=true){let i=0;let A=e.length-1;if(t){for(;i0&&isASCIIWhitespace(e[A]);A--);}return e.slice(i,A+1)}e.exports={dataURLProcessor:dataURLProcessor,URLSerializer:URLSerializer,collectASequenceOfCodePoints:collectASequenceOfCodePoints,collectASequenceOfCodePointsFast:collectASequenceOfCodePointsFast,stringPercentDecode:stringPercentDecode,parseMIMEType:parseMIMEType,collectAnHTTPQuotedString:collectAnHTTPQuotedString,serializeAMimeType:serializeAMimeType}},3041:(e,t,s)=>{"use strict";const{Blob:i,File:A}=s(181);const{types:o}=s(9023);const{kState:r}=s(9710);const{isBlobLike:n}=s(5523);const{webidl:a}=s(4222);const{parseMIMEType:c,serializeAMimeType:l}=s(4322);const{kEnumerableProperty:u}=s(3440);const p=new TextEncoder;class File extends i{constructor(e,t,s={}){a.argumentLengthCheck(arguments,2,{header:"File constructor"});e=a.converters["sequence"](e);t=a.converters.USVString(t);s=a.converters.FilePropertyBag(s);const i=t;let A=s.type;let o;e:{if(A){A=c(A);if(A==="failure"){A="";break e}A=l(A).toLowerCase()}o=s.lastModified}super(processBlobParts(e,s),{type:A});this[r]={name:i,lastModified:o,type:A}}get name(){a.brandCheck(this,File);return this[r].name}get lastModified(){a.brandCheck(this,File);return this[r].lastModified}get type(){a.brandCheck(this,File);return this[r].type}}class FileLike{constructor(e,t,s={}){const i=t;const A=s.type;const o=s.lastModified??Date.now();this[r]={blobLike:e,name:i,type:A,lastModified:o}}stream(...e){a.brandCheck(this,FileLike);return this[r].blobLike.stream(...e)}arrayBuffer(...e){a.brandCheck(this,FileLike);return this[r].blobLike.arrayBuffer(...e)}slice(...e){a.brandCheck(this,FileLike);return this[r].blobLike.slice(...e)}text(...e){a.brandCheck(this,FileLike);return this[r].blobLike.text(...e)}get size(){a.brandCheck(this,FileLike);return this[r].blobLike.size}get type(){a.brandCheck(this,FileLike);return this[r].blobLike.type}get name(){a.brandCheck(this,FileLike);return this[r].name}get lastModified(){a.brandCheck(this,FileLike);return this[r].lastModified}get[Symbol.toStringTag](){return"File"}}Object.defineProperties(File.prototype,{[Symbol.toStringTag]:{value:"File",configurable:true},name:u,lastModified:u});a.converters.Blob=a.interfaceConverter(i);a.converters.BlobPart=function(e,t){if(a.util.Type(e)==="Object"){if(n(e)){return a.converters.Blob(e,{strict:false})}if(ArrayBuffer.isView(e)||o.isAnyArrayBuffer(e)){return a.converters.BufferSource(e,t)}}return a.converters.USVString(e,t)};a.converters["sequence"]=a.sequenceConverter(a.converters.BlobPart);a.converters.FilePropertyBag=a.dictionaryConverter([{key:"lastModified",converter:a.converters["long long"],get defaultValue(){return Date.now()}},{key:"type",converter:a.converters.DOMString,defaultValue:""},{key:"endings",converter:e=>{e=a.converters.DOMString(e);e=e.toLowerCase();if(e!=="native"){e="transparent"}return e},defaultValue:"transparent"}]);function processBlobParts(e,t){const s=[];for(const i of e){if(typeof i==="string"){let e=i;if(t.endings==="native"){e=convertLineEndingsNative(e)}s.push(p.encode(e))}else if(o.isAnyArrayBuffer(i)||o.isTypedArray(i)){if(!i.buffer){s.push(new Uint8Array(i))}else{s.push(new Uint8Array(i.buffer,i.byteOffset,i.byteLength))}}else if(n(i)){s.push(i)}}return s}function convertLineEndingsNative(e){let t="\n";if(process.platform==="win32"){t="\r\n"}return e.replace(/\r?\n/g,t)}function isFileLike(e){return A&&e instanceof A||e instanceof File||e&&(typeof e.stream==="function"||typeof e.arrayBuffer==="function")&&e[Symbol.toStringTag]==="File"}e.exports={File:File,FileLike:FileLike,isFileLike:isFileLike}},3073:(e,t,s)=>{"use strict";const{isBlobLike:i,toUSVString:A,makeIterator:o}=s(5523);const{kState:r}=s(9710);const{File:n,FileLike:a,isFileLike:c}=s(3041);const{webidl:l}=s(4222);const{Blob:u,File:p}=s(181);const g=p??n;class FormData{constructor(e){if(e!==undefined){throw l.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]})}this[r]=[]}append(e,t,s=undefined){l.brandCheck(this,FormData);l.argumentLengthCheck(arguments,2,{header:"FormData.append"});if(arguments.length===3&&!i(t)){throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'")}e=l.converters.USVString(e);t=i(t)?l.converters.Blob(t,{strict:false}):l.converters.USVString(t);s=arguments.length===3?l.converters.USVString(s):undefined;const A=makeEntry(e,t,s);this[r].push(A)}delete(e){l.brandCheck(this,FormData);l.argumentLengthCheck(arguments,1,{header:"FormData.delete"});e=l.converters.USVString(e);this[r]=this[r].filter((t=>t.name!==e))}get(e){l.brandCheck(this,FormData);l.argumentLengthCheck(arguments,1,{header:"FormData.get"});e=l.converters.USVString(e);const t=this[r].findIndex((t=>t.name===e));if(t===-1){return null}return this[r][t].value}getAll(e){l.brandCheck(this,FormData);l.argumentLengthCheck(arguments,1,{header:"FormData.getAll"});e=l.converters.USVString(e);return this[r].filter((t=>t.name===e)).map((e=>e.value))}has(e){l.brandCheck(this,FormData);l.argumentLengthCheck(arguments,1,{header:"FormData.has"});e=l.converters.USVString(e);return this[r].findIndex((t=>t.name===e))!==-1}set(e,t,s=undefined){l.brandCheck(this,FormData);l.argumentLengthCheck(arguments,2,{header:"FormData.set"});if(arguments.length===3&&!i(t)){throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'")}e=l.converters.USVString(e);t=i(t)?l.converters.Blob(t,{strict:false}):l.converters.USVString(t);s=arguments.length===3?A(s):undefined;const o=makeEntry(e,t,s);const n=this[r].findIndex((t=>t.name===e));if(n!==-1){this[r]=[...this[r].slice(0,n),o,...this[r].slice(n+1).filter((t=>t.name!==e))]}else{this[r].push(o)}}entries(){l.brandCheck(this,FormData);return o((()=>this[r].map((e=>[e.name,e.value]))),"FormData","key+value")}keys(){l.brandCheck(this,FormData);return o((()=>this[r].map((e=>[e.name,e.value]))),"FormData","key")}values(){l.brandCheck(this,FormData);return o((()=>this[r].map((e=>[e.name,e.value]))),"FormData","value")}forEach(e,t=globalThis){l.brandCheck(this,FormData);l.argumentLengthCheck(arguments,1,{header:"FormData.forEach"});if(typeof e!=="function"){throw new TypeError("Failed to execute 'forEach' on 'FormData': parameter 1 is not of type 'Function'.")}for(const[s,i]of this){e.apply(t,[i,s,this])}}}FormData.prototype[Symbol.iterator]=FormData.prototype.entries;Object.defineProperties(FormData.prototype,{[Symbol.toStringTag]:{value:"FormData",configurable:true}});function makeEntry(e,t,s){e=Buffer.from(e).toString("utf8");if(typeof t==="string"){t=Buffer.from(t).toString("utf8")}else{if(!c(t)){t=t instanceof u?new g([t],"blob",{type:t.type}):new a(t,"blob",{type:t.type})}if(s!==undefined){const e={type:t.type,lastModified:t.lastModified};t=p&&t instanceof p||t instanceof n?new g([t],s,e):new a(t,s,e)}}return{name:e,value:t}}e.exports={FormData:FormData}},5628:e=>{"use strict";const t=Symbol.for("undici.globalOrigin.1");function getGlobalOrigin(){return globalThis[t]}function setGlobalOrigin(e){if(e===undefined){Object.defineProperty(globalThis,t,{value:undefined,writable:true,enumerable:false,configurable:false});return}const s=new URL(e);if(s.protocol!=="http:"&&s.protocol!=="https:"){throw new TypeError(`Only http & https urls are allowed, received ${s.protocol}`)}Object.defineProperty(globalThis,t,{value:s,writable:true,enumerable:false,configurable:false})}e.exports={getGlobalOrigin:getGlobalOrigin,setGlobalOrigin:setGlobalOrigin}},6349:(e,t,s)=>{"use strict";const{kHeadersList:i,kConstruct:A}=s(6443);const{kGuard:o}=s(9710);const{kEnumerableProperty:r}=s(3440);const{makeIterator:n,isValidHeaderName:a,isValidHeaderValue:c}=s(5523);const l=s(9023);const{webidl:u}=s(4222);const p=s(2613);const g=Symbol("headers map");const h=Symbol("headers map sorted");function isHTTPWhiteSpaceCharCode(e){return e===10||e===13||e===9||e===32}function headerValueNormalize(e){let t=0;let s=e.length;while(s>t&&isHTTPWhiteSpaceCharCode(e.charCodeAt(s-1)))--s;while(s>t&&isHTTPWhiteSpaceCharCode(e.charCodeAt(t)))++t;return t===0&&s===e.length?e:e.substring(t,s)}function fill(e,t){if(Array.isArray(t)){for(let s=0;s>","record"]})}}function appendHeader(e,t,s){s=headerValueNormalize(s);if(!a(t)){throw u.errors.invalidArgument({prefix:"Headers.append",value:t,type:"header name"})}else if(!c(s)){throw u.errors.invalidArgument({prefix:"Headers.append",value:s,type:"header value"})}if(e[o]==="immutable"){throw new TypeError("immutable")}else if(e[o]==="request-no-cors"){}return e[i].append(t,s)}class HeadersList{cookies=null;constructor(e){if(e instanceof HeadersList){this[g]=new Map(e[g]);this[h]=e[h];this.cookies=e.cookies===null?null:[...e.cookies]}else{this[g]=new Map(e);this[h]=null}}contains(e){e=e.toLowerCase();return this[g].has(e)}clear(){this[g].clear();this[h]=null;this.cookies=null}append(e,t){this[h]=null;const s=e.toLowerCase();const i=this[g].get(s);if(i){const e=s==="cookie"?"; ":", ";this[g].set(s,{name:i.name,value:`${i.value}${e}${t}`})}else{this[g].set(s,{name:e,value:t})}if(s==="set-cookie"){this.cookies??=[];this.cookies.push(t)}}set(e,t){this[h]=null;const s=e.toLowerCase();if(s==="set-cookie"){this.cookies=[t]}this[g].set(s,{name:e,value:t})}delete(e){this[h]=null;e=e.toLowerCase();if(e==="set-cookie"){this.cookies=null}this[g].delete(e)}get(e){const t=this[g].get(e.toLowerCase());return t===undefined?null:t.value}*[Symbol.iterator](){for(const[e,{value:t}]of this[g]){yield[e,t]}}get entries(){const e={};if(this[g].size){for(const{name:t,value:s}of this[g].values()){e[t]=s}}return e}}class Headers{constructor(e=undefined){if(e===A){return}this[i]=new HeadersList;this[o]="none";if(e!==undefined){e=u.converters.HeadersInit(e);fill(this,e)}}append(e,t){u.brandCheck(this,Headers);u.argumentLengthCheck(arguments,2,{header:"Headers.append"});e=u.converters.ByteString(e);t=u.converters.ByteString(t);return appendHeader(this,e,t)}delete(e){u.brandCheck(this,Headers);u.argumentLengthCheck(arguments,1,{header:"Headers.delete"});e=u.converters.ByteString(e);if(!a(e)){throw u.errors.invalidArgument({prefix:"Headers.delete",value:e,type:"header name"})}if(this[o]==="immutable"){throw new TypeError("immutable")}else if(this[o]==="request-no-cors"){}if(!this[i].contains(e)){return}this[i].delete(e)}get(e){u.brandCheck(this,Headers);u.argumentLengthCheck(arguments,1,{header:"Headers.get"});e=u.converters.ByteString(e);if(!a(e)){throw u.errors.invalidArgument({prefix:"Headers.get",value:e,type:"header name"})}return this[i].get(e)}has(e){u.brandCheck(this,Headers);u.argumentLengthCheck(arguments,1,{header:"Headers.has"});e=u.converters.ByteString(e);if(!a(e)){throw u.errors.invalidArgument({prefix:"Headers.has",value:e,type:"header name"})}return this[i].contains(e)}set(e,t){u.brandCheck(this,Headers);u.argumentLengthCheck(arguments,2,{header:"Headers.set"});e=u.converters.ByteString(e);t=u.converters.ByteString(t);t=headerValueNormalize(t);if(!a(e)){throw u.errors.invalidArgument({prefix:"Headers.set",value:e,type:"header name"})}else if(!c(t)){throw u.errors.invalidArgument({prefix:"Headers.set",value:t,type:"header value"})}if(this[o]==="immutable"){throw new TypeError("immutable")}else if(this[o]==="request-no-cors"){}this[i].set(e,t)}getSetCookie(){u.brandCheck(this,Headers);const e=this[i].cookies;if(e){return[...e]}return[]}get[h](){if(this[i][h]){return this[i][h]}const e=[];const t=[...this[i]].sort(((e,t)=>e[0]e),"Headers","key")}return n((()=>[...this[h].values()]),"Headers","key")}values(){u.brandCheck(this,Headers);if(this[o]==="immutable"){const e=this[h];return n((()=>e),"Headers","value")}return n((()=>[...this[h].values()]),"Headers","value")}entries(){u.brandCheck(this,Headers);if(this[o]==="immutable"){const e=this[h];return n((()=>e),"Headers","key+value")}return n((()=>[...this[h].values()]),"Headers","key+value")}forEach(e,t=globalThis){u.brandCheck(this,Headers);u.argumentLengthCheck(arguments,1,{header:"Headers.forEach"});if(typeof e!=="function"){throw new TypeError("Failed to execute 'forEach' on 'Headers': parameter 1 is not of type 'Function'.")}for(const[s,i]of this){e.apply(t,[i,s,this])}}[Symbol.for("nodejs.util.inspect.custom")](){u.brandCheck(this,Headers);return this[i]}}Headers.prototype[Symbol.iterator]=Headers.prototype.entries;Object.defineProperties(Headers.prototype,{append:r,delete:r,get:r,has:r,set:r,getSetCookie:r,keys:r,values:r,entries:r,forEach:r,[Symbol.iterator]:{enumerable:false},[Symbol.toStringTag]:{value:"Headers",configurable:true},[l.inspect.custom]:{enumerable:false}});u.converters.HeadersInit=function(e){if(u.util.Type(e)==="Object"){if(e[Symbol.iterator]){return u.converters["sequence>"](e)}return u.converters["record"](e)}throw u.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};e.exports={fill:fill,Headers:Headers,HeadersList:HeadersList}},2315:(e,t,s)=>{"use strict";const{Response:i,makeNetworkError:A,makeAppropriateNetworkError:o,filterResponse:r,makeResponse:n}=s(8676);const{Headers:a}=s(6349);const{Request:c,makeRequest:l}=s(5194);const u=s(3106);const{bytesMatch:p,makePolicyContainer:g,clonePolicyContainer:h,requestBadPort:d,TAOCheck:E,appendRequestOriginHeader:Q,responseLocationURL:C,requestCurrentURL:B,setRequestReferrerPolicyOnRedirect:I,tryUpgradeRequestToAPotentiallyTrustworthyURL:b,createOpaqueTimingInfo:y,appendFetchMetadata:w,corsCheck:v,crossOriginResourcePolicyCheck:k,determineRequestsReferrer:R,coarsenedSharedCurrentTime:x,createDeferredPromise:D,isBlobLike:S,sameOrigin:F,isCancelled:T,isAborted:N,isErrorLike:U,fullyReadBody:L,readableStreamClose:G,isomorphicEncode:M,urlIsLocal:_,urlIsHttpHttpsScheme:O,urlHasHttpsScheme:P}=s(5523);const{kState:H,kHeaders:Y,kGuard:J,kRealm:V}=s(9710);const q=s(2613);const{safelyExtractBody:W}=s(8923);const{redirectStatusSet:j,nullBodyStatus:z,safeMethodsSet:Z,requestBodyHeader:X,subresourceSet:K,DOMException:$}=s(7326);const{kHeadersList:ee}=s(6443);const te=s(4434);const{Readable:se,pipeline:ie}=s(2203);const{addAbortListener:Ae,isErrored:oe,isReadable:re,nodeMajor:ne,nodeMinor:ae}=s(3440);const{dataURLProcessor:ce,serializeAMimeType:le}=s(4322);const{TransformStream:ue}=s(3774);const{getGlobalDispatcher:pe}=s(2581);const{webidl:ge}=s(4222);const{STATUS_CODES:he}=s(8611);const de=["GET","HEAD"];let Ee;let fe=globalThis.ReadableStream;class Fetch extends te{constructor(e){super();this.dispatcher=e;this.connection=null;this.dump=false;this.state="ongoing";this.setMaxListeners(21)}terminate(e){if(this.state!=="ongoing"){return}this.state="terminated";this.connection?.destroy(e);this.emit("terminated",e)}abort(e){if(this.state!=="ongoing"){return}this.state="aborted";if(!e){e=new $("The operation was aborted.","AbortError")}this.serializedAbortReason=e;this.connection?.destroy(e);this.emit("terminated",e)}}function fetch(e,t={}){ge.argumentLengthCheck(arguments,1,{header:"globalThis.fetch"});const s=D();let A;try{A=new c(e,t)}catch(e){s.reject(e);return s.promise}const o=A[H];if(A.signal.aborted){abortFetch(s,o,null,A.signal.reason);return s.promise}const r=o.client.globalObject;if(r?.constructor?.name==="ServiceWorkerGlobalScope"){o.serviceWorkers="none"}let n=null;const a=null;let l=false;let u=null;Ae(A.signal,(()=>{l=true;q(u!=null);u.abort(A.signal.reason);abortFetch(s,o,n,A.signal.reason)}));const handleFetchDone=e=>finalizeAndReportTiming(e,"fetch");const processResponse=e=>{if(l){return Promise.resolve()}if(e.aborted){abortFetch(s,o,n,u.serializedAbortReason);return Promise.resolve()}if(e.type==="error"){s.reject(Object.assign(new TypeError("fetch failed"),{cause:e.error}));return Promise.resolve()}n=new i;n[H]=e;n[V]=a;n[Y][ee]=e.headersList;n[Y][J]="immutable";n[Y][V]=a;s.resolve(n)};u=fetching({request:o,processResponseEndOfBody:handleFetchDone,processResponse:processResponse,dispatcher:t.dispatcher??pe()});return s.promise}function finalizeAndReportTiming(e,t="other"){if(e.type==="error"&&e.aborted){return}if(!e.urlList?.length){return}const s=e.urlList[0];let i=e.timingInfo;let A=e.cacheState;if(!O(s)){return}if(i===null){return}if(!e.timingAllowPassed){i=y({startTime:i.startTime});A=""}i.endTime=x();e.timingInfo=i;markResourceTiming(i,s,t,globalThis,A)}function markResourceTiming(e,t,s,i,A){if(ne>18||ne===18&&ae>=2){performance.markResourceTiming(e,t.href,s,i,A)}}function abortFetch(e,t,s,i){if(!i){i=new $("The operation was aborted.","AbortError")}e.reject(i);if(t.body!=null&&re(t.body?.stream)){t.body.stream.cancel(i).catch((e=>{if(e.code==="ERR_INVALID_STATE"){return}throw e}))}if(s==null){return}const A=s[H];if(A.body!=null&&re(A.body?.stream)){A.body.stream.cancel(i).catch((e=>{if(e.code==="ERR_INVALID_STATE"){return}throw e}))}}function fetching({request:e,processRequestBodyChunkLength:t,processRequestEndOfBody:s,processResponse:i,processResponseEndOfBody:A,processResponseConsumeBody:o,useParallelQueue:r=false,dispatcher:n}){let a=null;let c=false;if(e.client!=null){a=e.client.globalObject;c=e.client.crossOriginIsolatedCapability}const l=x(c);const u=y({startTime:l});const p={controller:new Fetch(n),request:e,timingInfo:u,processRequestBodyChunkLength:t,processRequestEndOfBody:s,processResponse:i,processResponseConsumeBody:o,processResponseEndOfBody:A,taskDestination:a,crossOriginIsolatedCapability:c};q(!e.body||e.body.stream);if(e.window==="client"){e.window=e.client?.globalObject?.constructor?.name==="Window"?e.client:"no-window"}if(e.origin==="client"){e.origin=e.client?.origin}if(e.policyContainer==="client"){if(e.client!=null){e.policyContainer=h(e.client.policyContainer)}else{e.policyContainer=g()}}if(!e.headersList.contains("accept")){const t="*/*";e.headersList.append("accept",t)}if(!e.headersList.contains("accept-language")){e.headersList.append("accept-language","*")}if(e.priority===null){}if(K.has(e.destination)){}mainFetch(p).catch((e=>{p.controller.terminate(e)}));return p.controller}async function mainFetch(e,t=false){const s=e.request;let i=null;if(s.localURLsOnly&&!_(B(s))){i=A("local URLs only")}b(s);if(d(s)==="blocked"){i=A("bad port")}if(s.referrerPolicy===""){s.referrerPolicy=s.policyContainer.referrerPolicy}if(s.referrer!=="no-referrer"){s.referrer=R(s)}if(i===null){i=await(async()=>{const t=B(s);if(F(t,s.url)&&s.responseTainting==="basic"||t.protocol==="data:"||(s.mode==="navigate"||s.mode==="websocket")){s.responseTainting="basic";return await schemeFetch(e)}if(s.mode==="same-origin"){return A('request mode cannot be "same-origin"')}if(s.mode==="no-cors"){if(s.redirect!=="follow"){return A('redirect mode cannot be "follow" for "no-cors" request')}s.responseTainting="opaque";return await schemeFetch(e)}if(!O(B(s))){return A("URL scheme must be a HTTP(S) scheme")}s.responseTainting="cors";return await httpFetch(e)})()}if(t){return i}if(i.status!==0&&!i.internalResponse){if(s.responseTainting==="cors"){}if(s.responseTainting==="basic"){i=r(i,"basic")}else if(s.responseTainting==="cors"){i=r(i,"cors")}else if(s.responseTainting==="opaque"){i=r(i,"opaque")}else{q(false)}}let o=i.status===0?i:i.internalResponse;if(o.urlList.length===0){o.urlList.push(...s.urlList)}if(!s.timingAllowFailed){i.timingAllowPassed=true}if(i.type==="opaque"&&o.status===206&&o.rangeRequested&&!s.headers.contains("range")){i=o=A()}if(i.status!==0&&(s.method==="HEAD"||s.method==="CONNECT"||z.includes(o.status))){o.body=null;e.controller.dump=true}if(s.integrity){const processBodyError=t=>fetchFinale(e,A(t));if(s.responseTainting==="opaque"||i.body==null){processBodyError(i.error);return}const processBody=t=>{if(!p(t,s.integrity)){processBodyError("integrity mismatch");return}i.body=W(t)[0];fetchFinale(e,i)};await L(i.body,processBody,processBodyError)}else{fetchFinale(e,i)}}function schemeFetch(e){if(T(e)&&e.request.redirectCount===0){return Promise.resolve(o(e))}const{request:t}=e;const{protocol:i}=B(t);switch(i){case"about:":{return Promise.resolve(A("about scheme is not supported"))}case"blob:":{if(!Ee){Ee=s(181).resolveObjectURL}const e=B(t);if(e.search.length!==0){return Promise.resolve(A("NetworkError when attempting to fetch resource."))}const i=Ee(e.toString());if(t.method!=="GET"||!S(i)){return Promise.resolve(A("invalid method"))}const o=W(i);const r=o[0];const a=M(`${r.length}`);const c=o[1]??"";const l=n({statusText:"OK",headersList:[["content-length",{name:"Content-Length",value:a}],["content-type",{name:"Content-Type",value:c}]]});l.body=r;return Promise.resolve(l)}case"data:":{const e=B(t);const s=ce(e);if(s==="failure"){return Promise.resolve(A("failed to fetch the data URL"))}const i=le(s.mimeType);return Promise.resolve(n({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:i}]],body:W(s.body)[0]}))}case"file:":{return Promise.resolve(A("not implemented... yet..."))}case"http:":case"https:":{return httpFetch(e).catch((e=>A(e)))}default:{return Promise.resolve(A("unknown scheme"))}}}function finalizeResponse(e,t){e.request.done=true;if(e.processResponseDone!=null){queueMicrotask((()=>e.processResponseDone(t)))}}function fetchFinale(e,t){if(t.type==="error"){t.urlList=[e.request.urlList[0]];t.timingInfo=y({startTime:e.timingInfo.startTime})}const processResponseEndOfBody=()=>{e.request.done=true;if(e.processResponseEndOfBody!=null){queueMicrotask((()=>e.processResponseEndOfBody(t)))}};if(e.processResponse!=null){queueMicrotask((()=>e.processResponse(t)))}if(t.body==null){processResponseEndOfBody()}else{const identityTransformAlgorithm=(e,t)=>{t.enqueue(e)};const e=new ue({start(){},transform:identityTransformAlgorithm,flush:processResponseEndOfBody},{size(){return 1}},{size(){return 1}});t.body={stream:t.body.stream.pipeThrough(e)}}if(e.processResponseConsumeBody!=null){const processBody=s=>e.processResponseConsumeBody(t,s);const processBodyError=s=>e.processResponseConsumeBody(t,s);if(t.body==null){queueMicrotask((()=>processBody(null)))}else{return L(t.body,processBody,processBodyError)}return Promise.resolve()}}async function httpFetch(e){const t=e.request;let s=null;let i=null;const o=e.timingInfo;if(t.serviceWorkers==="all"){}if(s===null){if(t.redirect==="follow"){t.serviceWorkers="none"}i=s=await httpNetworkOrCacheFetch(e);if(t.responseTainting==="cors"&&v(t,s)==="failure"){return A("cors failure")}if(E(t,s)==="failure"){t.timingAllowFailed=true}}if((t.responseTainting==="opaque"||s.type==="opaque")&&k(t.origin,t.client,t.destination,i)==="blocked"){return A("blocked")}if(j.has(i.status)){if(t.redirect!=="manual"){e.controller.connection.destroy()}if(t.redirect==="error"){s=A("unexpected redirect")}else if(t.redirect==="manual"){s=i}else if(t.redirect==="follow"){s=await httpRedirectFetch(e,s)}else{q(false)}}s.timingInfo=o;return s}function httpRedirectFetch(e,t){const s=e.request;const i=t.internalResponse?t.internalResponse:t;let o;try{o=C(i,B(s).hash);if(o==null){return t}}catch(e){return Promise.resolve(A(e))}if(!O(o)){return Promise.resolve(A("URL scheme must be a HTTP(S) scheme"))}if(s.redirectCount===20){return Promise.resolve(A("redirect count exceeded"))}s.redirectCount+=1;if(s.mode==="cors"&&(o.username||o.password)&&!F(s,o)){return Promise.resolve(A('cross origin not allowed for request mode "cors"'))}if(s.responseTainting==="cors"&&(o.username||o.password)){return Promise.resolve(A('URL cannot contain credentials for request mode "cors"'))}if(i.status!==303&&s.body!=null&&s.body.source==null){return Promise.resolve(A())}if([301,302].includes(i.status)&&s.method==="POST"||i.status===303&&!de.includes(s.method)){s.method="GET";s.body=null;for(const e of X){s.headersList.delete(e)}}if(!F(B(s),o)){s.headersList.delete("authorization");s.headersList.delete("proxy-authorization",true);s.headersList.delete("cookie");s.headersList.delete("host")}if(s.body!=null){q(s.body.source!=null);s.body=W(s.body.source)[0]}const r=e.timingInfo;r.redirectEndTime=r.postRedirectStartTime=x(e.crossOriginIsolatedCapability);if(r.redirectStartTime===0){r.redirectStartTime=r.startTime}s.urlList.push(o);I(s,i);return mainFetch(e,true)}async function httpNetworkOrCacheFetch(e,t=false,s=false){const i=e.request;let r=null;let n=null;let a=null;const c=null;const u=false;if(i.window==="no-window"&&i.redirect==="error"){r=e;n=i}else{n=l(i);r={...e};r.request=n}const p=i.credentials==="include"||i.credentials==="same-origin"&&i.responseTainting==="basic";const g=n.body?n.body.length:null;let h=null;if(n.body==null&&["POST","PUT"].includes(n.method)){h="0"}if(g!=null){h=M(`${g}`)}if(h!=null){n.headersList.append("content-length",h)}if(g!=null&&n.keepalive){}if(n.referrer instanceof URL){n.headersList.append("referer",M(n.referrer.href))}Q(n);w(n);if(!n.headersList.contains("user-agent")){n.headersList.append("user-agent",typeof esbuildDetection==="undefined"?"undici":"node")}if(n.cache==="default"&&(n.headersList.contains("if-modified-since")||n.headersList.contains("if-none-match")||n.headersList.contains("if-unmodified-since")||n.headersList.contains("if-match")||n.headersList.contains("if-range"))){n.cache="no-store"}if(n.cache==="no-cache"&&!n.preventNoCacheCacheControlHeaderModification&&!n.headersList.contains("cache-control")){n.headersList.append("cache-control","max-age=0")}if(n.cache==="no-store"||n.cache==="reload"){if(!n.headersList.contains("pragma")){n.headersList.append("pragma","no-cache")}if(!n.headersList.contains("cache-control")){n.headersList.append("cache-control","no-cache")}}if(n.headersList.contains("range")){n.headersList.append("accept-encoding","identity")}if(!n.headersList.contains("accept-encoding")){if(P(B(n))){n.headersList.append("accept-encoding","br, gzip, deflate")}else{n.headersList.append("accept-encoding","gzip, deflate")}}n.headersList.delete("host");if(p){}if(c==null){n.cache="no-store"}if(n.mode!=="no-store"&&n.mode!=="reload"){}if(a==null){if(n.mode==="only-if-cached"){return A("only if cached")}const e=await httpNetworkFetch(r,p,s);if(!Z.has(n.method)&&e.status>=200&&e.status<=399){}if(u&&e.status===304){}if(a==null){a=e}}a.urlList=[...n.urlList];if(n.headersList.contains("range")){a.rangeRequested=true}a.requestIncludesCredentials=p;if(a.status===407){if(i.window==="no-window"){return A()}if(T(e)){return o(e)}return A("proxy authentication required")}if(a.status===421&&!s&&(i.body==null||i.body.source!=null)){if(T(e)){return o(e)}e.controller.connection.destroy();a=await httpNetworkOrCacheFetch(e,t,true)}if(t){}return a}async function httpNetworkFetch(e,t=false,i=false){q(!e.controller.connection||e.controller.connection.destroyed);e.controller.connection={abort:null,destroyed:false,destroy(e){if(!this.destroyed){this.destroyed=true;this.abort?.(e??new $("The operation was aborted.","AbortError"))}}};const r=e.request;let c=null;const l=e.timingInfo;const p=null;if(p==null){r.cache="no-store"}const g=i?"yes":"no";if(r.mode==="websocket"){}else{}let h=null;if(r.body==null&&e.processRequestEndOfBody){queueMicrotask((()=>e.processRequestEndOfBody()))}else if(r.body!=null){const processBodyChunk=async function*(t){if(T(e)){return}yield t;e.processRequestBodyChunkLength?.(t.byteLength)};const processEndOfBody=()=>{if(T(e)){return}if(e.processRequestEndOfBody){e.processRequestEndOfBody()}};const processBodyError=t=>{if(T(e)){return}if(t.name==="AbortError"){e.controller.abort()}else{e.controller.terminate(t)}};h=async function*(){try{for await(const e of r.body.stream){yield*processBodyChunk(e)}processEndOfBody()}catch(e){processBodyError(e)}}()}try{const{body:t,status:s,statusText:i,headersList:A,socket:o}=await dispatch({body:h});if(o){c=n({status:s,statusText:i,headersList:A,socket:o})}else{const o=t[Symbol.asyncIterator]();e.controller.next=()=>o.next();c=n({status:s,statusText:i,headersList:A})}}catch(t){if(t.name==="AbortError"){e.controller.connection.destroy();return o(e,t)}return A(t)}const pullAlgorithm=()=>{e.controller.resume()};const cancelAlgorithm=t=>{e.controller.abort(t)};if(!fe){fe=s(3774).ReadableStream}const d=new fe({async start(t){e.controller.controller=t},async pull(e){await pullAlgorithm(e)},async cancel(e){await cancelAlgorithm(e)}},{highWaterMark:0,size(){return 1}});c.body={stream:d};e.controller.on("terminated",onAborted);e.controller.resume=async()=>{while(true){let t;let s;try{const{done:s,value:i}=await e.controller.next();if(N(e)){break}t=s?undefined:i}catch(i){if(e.controller.ended&&!l.encodedBodySize){t=undefined}else{t=i;s=true}}if(t===undefined){G(e.controller.controller);finalizeResponse(e,c);return}l.decodedBodySize+=t?.byteLength??0;if(s){e.controller.terminate(t);return}e.controller.controller.enqueue(new Uint8Array(t));if(oe(d)){e.controller.terminate();return}if(!e.controller.controller.desiredSize){return}}};function onAborted(t){if(N(e)){c.aborted=true;if(re(d)){e.controller.controller.error(e.controller.serializedAbortReason)}}else{if(re(d)){e.controller.controller.error(new TypeError("terminated",{cause:U(t)?t:undefined}))}}e.controller.connection.destroy()}return c;async function dispatch({body:t}){const s=B(r);const i=e.controller.dispatcher;return new Promise(((A,o)=>i.dispatch({path:s.pathname+s.search,origin:s.origin,method:r.method,body:e.controller.dispatcher.isMockActive?r.body&&(r.body.source||r.body.stream):t,headers:r.headersList.entries,maxRedirections:0,upgrade:r.mode==="websocket"?"websocket":undefined},{body:null,abort:null,onConnect(t){const{connection:s}=e.controller;if(s.destroyed){t(new $("The operation was aborted.","AbortError"))}else{e.controller.on("terminated",t);this.abort=s.abort=t}},onHeaders(e,t,s,i){if(e<200){return}let o=[];let n="";const c=new a;if(Array.isArray(t)){for(let e=0;ee.trim()))}else if(s.toLowerCase()==="location"){n=i}c[ee].append(s,i)}}else{const e=Object.keys(t);for(const s of e){const e=t[s];if(s.toLowerCase()==="content-encoding"){o=e.toLowerCase().split(",").map((e=>e.trim())).reverse()}else if(s.toLowerCase()==="location"){n=e}c[ee].append(s,e)}}this.body=new se({read:s});const l=[];const p=r.redirect==="follow"&&n&&j.has(e);if(r.method!=="HEAD"&&r.method!=="CONNECT"&&!z.includes(e)&&!p){for(const e of o){if(e==="x-gzip"||e==="gzip"){l.push(u.createGunzip({flush:u.constants.Z_SYNC_FLUSH,finishFlush:u.constants.Z_SYNC_FLUSH}))}else if(e==="deflate"){l.push(u.createInflate())}else if(e==="br"){l.push(u.createBrotliDecompress())}else{l.length=0;break}}}A({status:e,statusText:i,headersList:c[ee],body:l.length?ie(this.body,...l,(()=>{})):this.body.on("error",(()=>{}))});return true},onData(t){if(e.controller.dump){return}const s=t;l.encodedBodySize+=s.byteLength;return this.body.push(s)},onComplete(){if(this.abort){e.controller.off("terminated",this.abort)}e.controller.ended=true;this.body.push(null)},onError(t){if(this.abort){e.controller.off("terminated",this.abort)}this.body?.destroy(t);e.controller.terminate(t);o(t)},onUpgrade(e,t,s){if(e!==101){return}const i=new a;for(let e=0;e{"use strict";const{extractBody:i,mixinBody:A,cloneBody:o}=s(8923);const{Headers:r,fill:n,HeadersList:a}=s(6349);const{FinalizationRegistry:c}=s(3194)();const l=s(3440);const{isValidHTTPToken:u,sameOrigin:p,normalizeMethod:g,makePolicyContainer:h,normalizeMethodRecord:d}=s(5523);const{forbiddenMethodsSet:E,corsSafeListedMethodsSet:Q,referrerPolicy:C,requestRedirect:B,requestMode:I,requestCredentials:b,requestCache:y,requestDuplex:w}=s(7326);const{kEnumerableProperty:v}=l;const{kHeaders:k,kSignal:R,kState:x,kGuard:D,kRealm:S}=s(9710);const{webidl:F}=s(4222);const{getGlobalOrigin:T}=s(5628);const{URLSerializer:N}=s(4322);const{kHeadersList:U,kConstruct:L}=s(6443);const G=s(2613);const{getMaxListeners:M,setMaxListeners:_,getEventListeners:O,defaultMaxListeners:P}=s(4434);let H=globalThis.TransformStream;const Y=Symbol("abortController");const J=new c((({signal:e,abort:t})=>{e.removeEventListener("abort",t)}));class Request{constructor(e,t={}){if(e===L){return}F.argumentLengthCheck(arguments,1,{header:"Request constructor"});e=F.converters.RequestInfo(e);t=F.converters.RequestInit(t);this[S]={settingsObject:{baseUrl:T(),get origin(){return this.baseUrl?.origin},policyContainer:h()}};let A=null;let o=null;const c=this[S].settingsObject.baseUrl;let C=null;if(typeof e==="string"){let t;try{t=new URL(e,c)}catch(t){throw new TypeError("Failed to parse URL from "+e,{cause:t})}if(t.username||t.password){throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+e)}A=makeRequest({urlList:[t]});o="cors"}else{G(e instanceof Request);A=e[x];C=e[R]}const B=this[S].settingsObject.origin;let I="client";if(A.window?.constructor?.name==="EnvironmentSettingsObject"&&p(A.window,B)){I=A.window}if(t.window!=null){throw new TypeError(`'window' option '${I}' must be null`)}if("window"in t){I="no-window"}A=makeRequest({method:A.method,headersList:A.headersList,unsafeRequest:A.unsafeRequest,client:this[S].settingsObject,window:I,priority:A.priority,origin:A.origin,referrer:A.referrer,referrerPolicy:A.referrerPolicy,mode:A.mode,credentials:A.credentials,cache:A.cache,redirect:A.redirect,integrity:A.integrity,keepalive:A.keepalive,reloadNavigation:A.reloadNavigation,historyNavigation:A.historyNavigation,urlList:[...A.urlList]});const b=Object.keys(t).length!==0;if(b){if(A.mode==="navigate"){A.mode="same-origin"}A.reloadNavigation=false;A.historyNavigation=false;A.origin="client";A.referrer="client";A.referrerPolicy="";A.url=A.urlList[A.urlList.length-1];A.urlList=[A.url]}if(t.referrer!==undefined){const e=t.referrer;if(e===""){A.referrer="no-referrer"}else{let t;try{t=new URL(e,c)}catch(t){throw new TypeError(`Referrer "${e}" is not a valid URL.`,{cause:t})}if(t.protocol==="about:"&&t.hostname==="client"||B&&!p(t,this[S].settingsObject.baseUrl)){A.referrer="client"}else{A.referrer=t}}}if(t.referrerPolicy!==undefined){A.referrerPolicy=t.referrerPolicy}let y;if(t.mode!==undefined){y=t.mode}else{y=o}if(y==="navigate"){throw F.errors.exception({header:"Request constructor",message:"invalid request mode navigate."})}if(y!=null){A.mode=y}if(t.credentials!==undefined){A.credentials=t.credentials}if(t.cache!==undefined){A.cache=t.cache}if(A.cache==="only-if-cached"&&A.mode!=="same-origin"){throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode")}if(t.redirect!==undefined){A.redirect=t.redirect}if(t.integrity!=null){A.integrity=String(t.integrity)}if(t.keepalive!==undefined){A.keepalive=Boolean(t.keepalive)}if(t.method!==undefined){let e=t.method;if(!u(e)){throw new TypeError(`'${e}' is not a valid HTTP method.`)}if(E.has(e.toUpperCase())){throw new TypeError(`'${e}' HTTP method is unsupported.`)}e=d[e]??g(e);A.method=e}if(t.signal!==undefined){C=t.signal}this[x]=A;const w=new AbortController;this[R]=w.signal;this[R][S]=this[S];if(C!=null){if(!C||typeof C.aborted!=="boolean"||typeof C.addEventListener!=="function"){throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.")}if(C.aborted){w.abort(C.reason)}else{this[Y]=w;const e=new WeakRef(w);const abort=function(){const t=e.deref();if(t!==undefined){t.abort(this.reason)}};try{if(typeof M==="function"&&M(C)===P){_(100,C)}else if(O(C,"abort").length>=P){_(100,C)}}catch{}l.addAbortListener(C,abort);J.register(w,{signal:C,abort:abort})}}this[k]=new r(L);this[k][U]=A.headersList;this[k][D]="request";this[k][S]=this[S];if(y==="no-cors"){if(!Q.has(A.method)){throw new TypeError(`'${A.method} is unsupported in no-cors mode.`)}this[k][D]="request-no-cors"}if(b){const e=this[k][U];const s=t.headers!==undefined?t.headers:new a(e);e.clear();if(s instanceof a){for(const[t,i]of s){e.append(t,i)}e.cookies=s.cookies}else{n(this[k],s)}}const v=e instanceof Request?e[x].body:null;if((t.body!=null||v!=null)&&(A.method==="GET"||A.method==="HEAD")){throw new TypeError("Request with GET/HEAD method cannot have body.")}let N=null;if(t.body!=null){const[e,s]=i(t.body,A.keepalive);N=e;if(s&&!this[k][U].contains("content-type")){this[k].append("content-type",s)}}const V=N??v;if(V!=null&&V.source==null){if(N!=null&&t.duplex==null){throw new TypeError("RequestInit: duplex option is required when sending a body.")}if(A.mode!=="same-origin"&&A.mode!=="cors"){throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"')}A.useCORSPreflightFlag=true}let q=V;if(N==null&&v!=null){if(l.isDisturbed(v.stream)||v.stream.locked){throw new TypeError("Cannot construct a Request with a Request object that has already been used.")}if(!H){H=s(3774).TransformStream}const e=new H;v.stream.pipeThrough(e);q={source:v.source,length:v.length,stream:e.readable}}this[x].body=q}get method(){F.brandCheck(this,Request);return this[x].method}get url(){F.brandCheck(this,Request);return N(this[x].url)}get headers(){F.brandCheck(this,Request);return this[k]}get destination(){F.brandCheck(this,Request);return this[x].destination}get referrer(){F.brandCheck(this,Request);if(this[x].referrer==="no-referrer"){return""}if(this[x].referrer==="client"){return"about:client"}return this[x].referrer.toString()}get referrerPolicy(){F.brandCheck(this,Request);return this[x].referrerPolicy}get mode(){F.brandCheck(this,Request);return this[x].mode}get credentials(){return this[x].credentials}get cache(){F.brandCheck(this,Request);return this[x].cache}get redirect(){F.brandCheck(this,Request);return this[x].redirect}get integrity(){F.brandCheck(this,Request);return this[x].integrity}get keepalive(){F.brandCheck(this,Request);return this[x].keepalive}get isReloadNavigation(){F.brandCheck(this,Request);return this[x].reloadNavigation}get isHistoryNavigation(){F.brandCheck(this,Request);return this[x].historyNavigation}get signal(){F.brandCheck(this,Request);return this[R]}get body(){F.brandCheck(this,Request);return this[x].body?this[x].body.stream:null}get bodyUsed(){F.brandCheck(this,Request);return!!this[x].body&&l.isDisturbed(this[x].body.stream)}get duplex(){F.brandCheck(this,Request);return"half"}clone(){F.brandCheck(this,Request);if(this.bodyUsed||this.body?.locked){throw new TypeError("unusable")}const e=cloneRequest(this[x]);const t=new Request(L);t[x]=e;t[S]=this[S];t[k]=new r(L);t[k][U]=e.headersList;t[k][D]=this[k][D];t[k][S]=this[k][S];const s=new AbortController;if(this.signal.aborted){s.abort(this.signal.reason)}else{l.addAbortListener(this.signal,(()=>{s.abort(this.signal.reason)}))}t[R]=s.signal;return t}}A(Request);function makeRequest(e){const t={method:"GET",localURLsOnly:false,unsafeRequest:false,body:null,client:null,reservedClient:null,replacesClientId:"",window:"client",keepalive:false,serviceWorkers:"all",initiator:"",destination:"",priority:null,origin:"client",policyContainer:"client",referrer:"client",referrerPolicy:"",mode:"no-cors",useCORSPreflightFlag:false,credentials:"same-origin",useCredentials:false,cache:"default",redirect:"follow",integrity:"",cryptoGraphicsNonceMetadata:"",parserMetadata:"",reloadNavigation:false,historyNavigation:false,userActivation:false,taintedOrigin:false,redirectCount:0,responseTainting:"basic",preventNoCacheCacheControlHeaderModification:false,done:false,timingAllowFailed:false,...e,headersList:e.headersList?new a(e.headersList):new a};t.url=t.urlList[0];return t}function cloneRequest(e){const t=makeRequest({...e,body:null});if(e.body!=null){t.body=o(e.body)}return t}Object.defineProperties(Request.prototype,{method:v,url:v,headers:v,redirect:v,clone:v,signal:v,duplex:v,destination:v,body:v,bodyUsed:v,isHistoryNavigation:v,isReloadNavigation:v,keepalive:v,integrity:v,cache:v,credentials:v,attribute:v,referrerPolicy:v,referrer:v,mode:v,[Symbol.toStringTag]:{value:"Request",configurable:true}});F.converters.Request=F.interfaceConverter(Request);F.converters.RequestInfo=function(e){if(typeof e==="string"){return F.converters.USVString(e)}if(e instanceof Request){return F.converters.Request(e)}return F.converters.USVString(e)};F.converters.AbortSignal=F.interfaceConverter(AbortSignal);F.converters.RequestInit=F.dictionaryConverter([{key:"method",converter:F.converters.ByteString},{key:"headers",converter:F.converters.HeadersInit},{key:"body",converter:F.nullableConverter(F.converters.BodyInit)},{key:"referrer",converter:F.converters.USVString},{key:"referrerPolicy",converter:F.converters.DOMString,allowedValues:C},{key:"mode",converter:F.converters.DOMString,allowedValues:I},{key:"credentials",converter:F.converters.DOMString,allowedValues:b},{key:"cache",converter:F.converters.DOMString,allowedValues:y},{key:"redirect",converter:F.converters.DOMString,allowedValues:B},{key:"integrity",converter:F.converters.DOMString},{key:"keepalive",converter:F.converters.boolean},{key:"signal",converter:F.nullableConverter((e=>F.converters.AbortSignal(e,{strict:false})))},{key:"window",converter:F.converters.any},{key:"duplex",converter:F.converters.DOMString,allowedValues:w}]);e.exports={Request:Request,makeRequest:makeRequest}},8676:(e,t,s)=>{"use strict";const{Headers:i,HeadersList:A,fill:o}=s(6349);const{extractBody:r,cloneBody:n,mixinBody:a}=s(8923);const c=s(3440);const{kEnumerableProperty:l}=c;const{isValidReasonPhrase:u,isCancelled:p,isAborted:g,isBlobLike:h,serializeJavascriptValueToJSONString:d,isErrorLike:E,isomorphicEncode:Q}=s(5523);const{redirectStatusSet:C,nullBodyStatus:B,DOMException:I}=s(7326);const{kState:b,kHeaders:y,kGuard:w,kRealm:v}=s(9710);const{webidl:k}=s(4222);const{FormData:R}=s(3073);const{getGlobalOrigin:x}=s(5628);const{URLSerializer:D}=s(4322);const{kHeadersList:S,kConstruct:F}=s(6443);const T=s(2613);const{types:N}=s(9023);const U=globalThis.ReadableStream||s(3774).ReadableStream;const L=new TextEncoder("utf-8");class Response{static error(){const e={settingsObject:{}};const t=new Response;t[b]=makeNetworkError();t[v]=e;t[y][S]=t[b].headersList;t[y][w]="immutable";t[y][v]=e;return t}static json(e,t={}){k.argumentLengthCheck(arguments,1,{header:"Response.json"});if(t!==null){t=k.converters.ResponseInit(t)}const s=L.encode(d(e));const i=r(s);const A={settingsObject:{}};const o=new Response;o[v]=A;o[y][w]="response";o[y][v]=A;initializeResponse(o,t,{body:i[0],type:"application/json"});return o}static redirect(e,t=302){const s={settingsObject:{}};k.argumentLengthCheck(arguments,1,{header:"Response.redirect"});e=k.converters.USVString(e);t=k.converters["unsigned short"](t);let i;try{i=new URL(e,x())}catch(t){throw Object.assign(new TypeError("Failed to parse URL from "+e),{cause:t})}if(!C.has(t)){throw new RangeError("Invalid status code "+t)}const A=new Response;A[v]=s;A[y][w]="immutable";A[y][v]=s;A[b].status=t;const o=Q(D(i));A[b].headersList.append("location",o);return A}constructor(e=null,t={}){if(e!==null){e=k.converters.BodyInit(e)}t=k.converters.ResponseInit(t);this[v]={settingsObject:{}};this[b]=makeResponse({});this[y]=new i(F);this[y][w]="response";this[y][S]=this[b].headersList;this[y][v]=this[v];let s=null;if(e!=null){const[t,i]=r(e);s={body:t,type:i}}initializeResponse(this,t,s)}get type(){k.brandCheck(this,Response);return this[b].type}get url(){k.brandCheck(this,Response);const e=this[b].urlList;const t=e[e.length-1]??null;if(t===null){return""}return D(t,true)}get redirected(){k.brandCheck(this,Response);return this[b].urlList.length>1}get status(){k.brandCheck(this,Response);return this[b].status}get ok(){k.brandCheck(this,Response);return this[b].status>=200&&this[b].status<=299}get statusText(){k.brandCheck(this,Response);return this[b].statusText}get headers(){k.brandCheck(this,Response);return this[y]}get body(){k.brandCheck(this,Response);return this[b].body?this[b].body.stream:null}get bodyUsed(){k.brandCheck(this,Response);return!!this[b].body&&c.isDisturbed(this[b].body.stream)}clone(){k.brandCheck(this,Response);if(this.bodyUsed||this.body&&this.body.locked){throw k.errors.exception({header:"Response.clone",message:"Body has already been consumed."})}const e=cloneResponse(this[b]);const t=new Response;t[b]=e;t[v]=this[v];t[y][S]=e.headersList;t[y][w]=this[y][w];t[y][v]=this[y][v];return t}}a(Response);Object.defineProperties(Response.prototype,{type:l,url:l,status:l,ok:l,redirected:l,statusText:l,headers:l,clone:l,body:l,bodyUsed:l,[Symbol.toStringTag]:{value:"Response",configurable:true}});Object.defineProperties(Response,{json:l,redirect:l,error:l});function cloneResponse(e){if(e.internalResponse){return filterResponse(cloneResponse(e.internalResponse),e.type)}const t=makeResponse({...e,body:null});if(e.body!=null){t.body=n(e.body)}return t}function makeResponse(e){return{aborted:false,rangeRequested:false,timingAllowPassed:false,requestIncludesCredentials:false,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...e,headersList:e.headersList?new A(e.headersList):new A,urlList:e.urlList?[...e.urlList]:[]}}function makeNetworkError(e){const t=E(e);return makeResponse({type:"error",status:0,error:t?e:new Error(e?String(e):e),aborted:e&&e.name==="AbortError"})}function makeFilteredResponse(e,t){t={internalResponse:e,...t};return new Proxy(e,{get(e,s){return s in t?t[s]:e[s]},set(e,s,i){T(!(s in t));e[s]=i;return true}})}function filterResponse(e,t){if(t==="basic"){return makeFilteredResponse(e,{type:"basic",headersList:e.headersList})}else if(t==="cors"){return makeFilteredResponse(e,{type:"cors",headersList:e.headersList})}else if(t==="opaque"){return makeFilteredResponse(e,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null})}else if(t==="opaqueredirect"){return makeFilteredResponse(e,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null})}else{T(false)}}function makeAppropriateNetworkError(e,t=null){T(p(e));return g(e)?makeNetworkError(Object.assign(new I("The operation was aborted.","AbortError"),{cause:t})):makeNetworkError(Object.assign(new I("Request was cancelled."),{cause:t}))}function initializeResponse(e,t,s){if(t.status!==null&&(t.status<200||t.status>599)){throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.')}if("statusText"in t&&t.statusText!=null){if(!u(String(t.statusText))){throw new TypeError("Invalid statusText")}}if("status"in t&&t.status!=null){e[b].status=t.status}if("statusText"in t&&t.statusText!=null){e[b].statusText=t.statusText}if("headers"in t&&t.headers!=null){o(e[y],t.headers)}if(s){if(B.includes(e.status)){throw k.errors.exception({header:"Response constructor",message:"Invalid response status code "+e.status})}e[b].body=s.body;if(s.type!=null&&!e[b].headersList.contains("Content-Type")){e[b].headersList.append("content-type",s.type)}}}k.converters.ReadableStream=k.interfaceConverter(U);k.converters.FormData=k.interfaceConverter(R);k.converters.URLSearchParams=k.interfaceConverter(URLSearchParams);k.converters.XMLHttpRequestBodyInit=function(e){if(typeof e==="string"){return k.converters.USVString(e)}if(h(e)){return k.converters.Blob(e,{strict:false})}if(N.isArrayBuffer(e)||N.isTypedArray(e)||N.isDataView(e)){return k.converters.BufferSource(e)}if(c.isFormDataLike(e)){return k.converters.FormData(e,{strict:false})}if(e instanceof URLSearchParams){return k.converters.URLSearchParams(e)}return k.converters.DOMString(e)};k.converters.BodyInit=function(e){if(e instanceof U){return k.converters.ReadableStream(e)}if(e?.[Symbol.asyncIterator]){return e}return k.converters.XMLHttpRequestBodyInit(e)};k.converters.ResponseInit=k.dictionaryConverter([{key:"status",converter:k.converters["unsigned short"],defaultValue:200},{key:"statusText",converter:k.converters.ByteString,defaultValue:""},{key:"headers",converter:k.converters.HeadersInit}]);e.exports={makeNetworkError:makeNetworkError,makeResponse:makeResponse,makeAppropriateNetworkError:makeAppropriateNetworkError,filterResponse:filterResponse,Response:Response,cloneResponse:cloneResponse}},9710:e=>{"use strict";e.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kGuard:Symbol("guard"),kRealm:Symbol("realm")}},5523:(e,t,s)=>{"use strict";const{redirectStatusSet:i,referrerPolicySet:A,badPortsSet:o}=s(7326);const{getGlobalOrigin:r}=s(5628);const{performance:n}=s(2987);const{isBlobLike:a,toUSVString:c,ReadableStreamFrom:l}=s(3440);const u=s(2613);const{isUint8Array:p}=s(8253);let g=[];let h;try{h=s(6982);const e=["sha256","sha384","sha512"];g=h.getHashes().filter((t=>e.includes(t)))}catch{}function responseURL(e){const t=e.urlList;const s=t.length;return s===0?null:t[s-1].toString()}function responseLocationURL(e,t){if(!i.has(e.status)){return null}let s=e.headersList.get("location");if(s!==null&&isValidHeaderValue(s)){s=new URL(s,responseURL(e))}if(s&&!s.hash){s.hash=t}return s}function requestCurrentURL(e){return e.urlList[e.urlList.length-1]}function requestBadPort(e){const t=requestCurrentURL(e);if(urlIsHttpHttpsScheme(t)&&o.has(t.port)){return"blocked"}return"allowed"}function isErrorLike(e){return e instanceof Error||(e?.constructor?.name==="Error"||e?.constructor?.name==="DOMException")}function isValidReasonPhrase(e){for(let t=0;t=32&&s<=126||s>=128&&s<=255)){return false}}return true}function isTokenCharCode(e){switch(e){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return false;default:return e>=33&&e<=126}}function isValidHTTPToken(e){if(e.length===0){return false}for(let t=0;t0){for(let e=i.length;e!==0;e--){const t=i[e-1].trim();if(A.has(t)){o=t;break}}}if(o!==""){e.referrerPolicy=o}}function crossOriginResourcePolicyCheck(){return"allowed"}function corsCheck(){return"success"}function TAOCheck(){return"success"}function appendFetchMetadata(e){let t=null;t=e.mode;e.headersList.set("sec-fetch-mode",t)}function appendRequestOriginHeader(e){let t=e.origin;if(e.responseTainting==="cors"||e.mode==="websocket"){if(t){e.headersList.append("origin",t)}}else if(e.method!=="GET"&&e.method!=="HEAD"){switch(e.referrerPolicy){case"no-referrer":t=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":if(e.origin&&urlHasHttpsScheme(e.origin)&&!urlHasHttpsScheme(requestCurrentURL(e))){t=null}break;case"same-origin":if(!sameOrigin(e,requestCurrentURL(e))){t=null}break;default:}if(t){e.headersList.append("origin",t)}}}function coarsenedSharedCurrentTime(e){return n.now()}function createOpaqueTimingInfo(e){return{startTime:e.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:e.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}}function makePolicyContainer(){return{referrerPolicy:"strict-origin-when-cross-origin"}}function clonePolicyContainer(e){return{referrerPolicy:e.referrerPolicy}}function determineRequestsReferrer(e){const t=e.referrerPolicy;u(t);let s=null;if(e.referrer==="client"){const e=r();if(!e||e.origin==="null"){return"no-referrer"}s=new URL(e)}else if(e.referrer instanceof URL){s=e.referrer}let i=stripURLForReferrer(s);const A=stripURLForReferrer(s,true);if(i.toString().length>4096){i=A}const o=sameOrigin(e,i);const n=isURLPotentiallyTrustworthy(i)&&!isURLPotentiallyTrustworthy(e.url);switch(t){case"origin":return A!=null?A:stripURLForReferrer(s,true);case"unsafe-url":return i;case"same-origin":return o?A:"no-referrer";case"origin-when-cross-origin":return o?i:A;case"strict-origin-when-cross-origin":{const t=requestCurrentURL(e);if(sameOrigin(i,t)){return i}if(isURLPotentiallyTrustworthy(i)&&!isURLPotentiallyTrustworthy(t)){return"no-referrer"}return A}case"strict-origin":case"no-referrer-when-downgrade":default:return n?"no-referrer":A}}function stripURLForReferrer(e,t){u(e instanceof URL);if(e.protocol==="file:"||e.protocol==="about:"||e.protocol==="blank:"){return"no-referrer"}e.username="";e.password="";e.hash="";if(t){e.pathname="";e.search=""}return e}function isURLPotentiallyTrustworthy(e){if(!(e instanceof URL)){return false}if(e.href==="about:blank"||e.href==="about:srcdoc"){return true}if(e.protocol==="data:")return true;if(e.protocol==="file:")return true;return isOriginPotentiallyTrustworthy(e.origin);function isOriginPotentiallyTrustworthy(e){if(e==null||e==="null")return false;const t=new URL(e);if(t.protocol==="https:"||t.protocol==="wss:"){return true}if(/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(t.hostname)||(t.hostname==="localhost"||t.hostname.includes("localhost."))||t.hostname.endsWith(".localhost")){return true}return false}}function bytesMatch(e,t){if(h===undefined){return true}const s=parseMetadata(t);if(s==="no metadata"){return true}if(s.length===0){return true}const i=getStrongestMetadata(s);const A=filterMetadataListByAlgorithm(s,i);for(const t of A){const s=t.algo;const i=t.hash;let A=h.createHash(s).update(e).digest("base64");if(A[A.length-1]==="="){if(A[A.length-2]==="="){A=A.slice(0,-2)}else{A=A.slice(0,-1)}}if(compareBase64Mixed(A,i)){return true}}return false}const d=/(?sha256|sha384|sha512)-((?[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function parseMetadata(e){const t=[];let s=true;for(const i of e.split(" ")){s=false;const e=d.exec(i);if(e===null||e.groups===undefined||e.groups.algo===undefined){continue}const A=e.groups.algo.toLowerCase();if(g.includes(A)){t.push(e.groups)}}if(s===true){return"no metadata"}return t}function getStrongestMetadata(e){let t=e[0].algo;if(t[3]==="5"){return t}for(let s=1;s{e=s;t=i}));return{promise:s,resolve:e,reject:t}}function isAborted(e){return e.controller.state==="aborted"}function isCancelled(e){return e.controller.state==="aborted"||e.controller.state==="terminated"}const E={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"};Object.setPrototypeOf(E,null);function normalizeMethod(e){return E[e.toLowerCase()]??e}function serializeJavascriptValueToJSONString(e){const t=JSON.stringify(e);if(t===undefined){throw new TypeError("Value is not JSON serializable")}u(typeof t==="string");return t}const Q=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function makeIterator(e,t,s){const i={index:0,kind:s,target:e};const A={next(){if(Object.getPrototypeOf(this)!==A){throw new TypeError(`'next' called on an object that does not implement interface ${t} Iterator.`)}const{index:e,kind:s,target:o}=i;const r=o();const n=r.length;if(e>=n){return{value:undefined,done:true}}const a=r[e];i.index=e+1;return iteratorResult(a,s)},[Symbol.toStringTag]:`${t} Iterator`};Object.setPrototypeOf(A,Q);return Object.setPrototypeOf({},A)}function iteratorResult(e,t){let s;switch(t){case"key":{s=e[0];break}case"value":{s=e[1];break}case"key+value":{s=e;break}}return{value:s,done:false}}async function fullyReadBody(e,t,s){const i=t;const A=s;let o;try{o=e.stream.getReader()}catch(e){A(e);return}try{const e=await readAllBytes(o);i(e)}catch(e){A(e)}}let C=globalThis.ReadableStream;function isReadableStreamLike(e){if(!C){C=s(3774).ReadableStream}return e instanceof C||e[Symbol.toStringTag]==="ReadableStream"&&typeof e.tee==="function"}const B=65535;function isomorphicDecode(e){if(e.lengthe+String.fromCharCode(t)),"")}function readableStreamClose(e){try{e.close()}catch(e){if(!e.message.includes("Controller is already closed")){throw e}}}function isomorphicEncode(e){for(let t=0;tObject.prototype.hasOwnProperty.call(e,t));e.exports={isAborted:isAborted,isCancelled:isCancelled,createDeferredPromise:createDeferredPromise,ReadableStreamFrom:l,toUSVString:c,tryUpgradeRequestToAPotentiallyTrustworthyURL:tryUpgradeRequestToAPotentiallyTrustworthyURL,coarsenedSharedCurrentTime:coarsenedSharedCurrentTime,determineRequestsReferrer:determineRequestsReferrer,makePolicyContainer:makePolicyContainer,clonePolicyContainer:clonePolicyContainer,appendFetchMetadata:appendFetchMetadata,appendRequestOriginHeader:appendRequestOriginHeader,TAOCheck:TAOCheck,corsCheck:corsCheck,crossOriginResourcePolicyCheck:crossOriginResourcePolicyCheck,createOpaqueTimingInfo:createOpaqueTimingInfo,setRequestReferrerPolicyOnRedirect:setRequestReferrerPolicyOnRedirect,isValidHTTPToken:isValidHTTPToken,requestBadPort:requestBadPort,requestCurrentURL:requestCurrentURL,responseURL:responseURL,responseLocationURL:responseLocationURL,isBlobLike:a,isURLPotentiallyTrustworthy:isURLPotentiallyTrustworthy,isValidReasonPhrase:isValidReasonPhrase,sameOrigin:sameOrigin,normalizeMethod:normalizeMethod,serializeJavascriptValueToJSONString:serializeJavascriptValueToJSONString,makeIterator:makeIterator,isValidHeaderName:isValidHeaderName,isValidHeaderValue:isValidHeaderValue,hasOwn:I,isErrorLike:isErrorLike,fullyReadBody:fullyReadBody,bytesMatch:bytesMatch,isReadableStreamLike:isReadableStreamLike,readableStreamClose:readableStreamClose,isomorphicEncode:isomorphicEncode,isomorphicDecode:isomorphicDecode,urlIsLocal:urlIsLocal,urlHasHttpsScheme:urlHasHttpsScheme,urlIsHttpHttpsScheme:urlIsHttpHttpsScheme,readAllBytes:readAllBytes,normalizeMethodRecord:E,parseMetadata:parseMetadata}},4222:(e,t,s)=>{"use strict";const{types:i}=s(9023);const{hasOwn:A,toUSVString:o}=s(5523);const r={};r.converters={};r.util={};r.errors={};r.errors.exception=function(e){return new TypeError(`${e.header}: ${e.message}`)};r.errors.conversionFailed=function(e){const t=e.types.length===1?"":" one of";const s=`${e.argument} could not be converted to`+`${t}: ${e.types.join(", ")}.`;return r.errors.exception({header:e.prefix,message:s})};r.errors.invalidArgument=function(e){return r.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})};r.brandCheck=function(e,t,s=undefined){if(s?.strict!==false&&!(e instanceof t)){throw new TypeError("Illegal invocation")}else{return e?.[Symbol.toStringTag]===t.prototype[Symbol.toStringTag]}};r.argumentLengthCheck=function({length:e},t,s){if(eA){throw r.errors.exception({header:"Integer conversion",message:`Value must be between ${o}-${A}, got ${n}.`})}return n}if(!Number.isNaN(n)&&i.clamp===true){n=Math.min(Math.max(n,o),A);if(Math.floor(n)%2===0){n=Math.floor(n)}else{n=Math.ceil(n)}return n}if(Number.isNaN(n)||n===0&&Object.is(0,n)||n===Number.POSITIVE_INFINITY||n===Number.NEGATIVE_INFINITY){return 0}n=r.util.IntegerPart(n);n=n%Math.pow(2,t);if(s==="signed"&&n>=Math.pow(2,t)-1){return n-Math.pow(2,t)}return n};r.util.IntegerPart=function(e){const t=Math.floor(Math.abs(e));if(e<0){return-1*t}return t};r.sequenceConverter=function(e){return t=>{if(r.util.Type(t)!=="Object"){throw r.errors.exception({header:"Sequence",message:`Value of type ${r.util.Type(t)} is not an Object.`})}const s=t?.[Symbol.iterator]?.();const i=[];if(s===undefined||typeof s.next!=="function"){throw r.errors.exception({header:"Sequence",message:"Object is not an iterator."})}while(true){const{done:t,value:A}=s.next();if(t){break}i.push(e(A))}return i}};r.recordConverter=function(e,t){return s=>{if(r.util.Type(s)!=="Object"){throw r.errors.exception({header:"Record",message:`Value of type ${r.util.Type(s)} is not an Object.`})}const A={};if(!i.isProxy(s)){const i=Object.keys(s);for(const o of i){const i=e(o);const r=t(s[o]);A[i]=r}return A}const o=Reflect.ownKeys(s);for(const i of o){const o=Reflect.getOwnPropertyDescriptor(s,i);if(o?.enumerable){const o=e(i);const r=t(s[i]);A[o]=r}}return A}};r.interfaceConverter=function(e){return(t,s={})=>{if(s.strict!==false&&!(t instanceof e)){throw r.errors.exception({header:e.name,message:`Expected ${t} to be an instance of ${e.name}.`})}return t}};r.dictionaryConverter=function(e){return t=>{const s=r.util.Type(t);const i={};if(s==="Null"||s==="Undefined"){return i}else if(s!=="Object"){throw r.errors.exception({header:"Dictionary",message:`Expected ${t} to be one of: Null, Undefined, Object.`})}for(const s of e){const{key:e,defaultValue:o,required:n,converter:a}=s;if(n===true){if(!A(t,e)){throw r.errors.exception({header:"Dictionary",message:`Missing required key "${e}".`})}}let c=t[e];const l=A(s,"defaultValue");if(l&&c!==null){c=c??o}if(n||l||c!==undefined){c=a(c);if(s.allowedValues&&!s.allowedValues.includes(c)){throw r.errors.exception({header:"Dictionary",message:`${c} is not an accepted type. Expected one of ${s.allowedValues.join(", ")}.`})}i[e]=c}}return i}};r.nullableConverter=function(e){return t=>{if(t===null){return t}return e(t)}};r.converters.DOMString=function(e,t={}){if(e===null&&t.legacyNullToEmptyString){return""}if(typeof e==="symbol"){throw new TypeError("Could not convert argument of type symbol to string.")}return String(e)};r.converters.ByteString=function(e){const t=r.converters.DOMString(e);for(let e=0;e255){throw new TypeError("Cannot convert argument to a ByteString because the character at "+`index ${e} has a value of ${t.charCodeAt(e)} which is greater than 255.`)}}return t};r.converters.USVString=o;r.converters.boolean=function(e){const t=Boolean(e);return t};r.converters.any=function(e){return e};r.converters["long long"]=function(e){const t=r.util.ConvertToInt(e,64,"signed");return t};r.converters["unsigned long long"]=function(e){const t=r.util.ConvertToInt(e,64,"unsigned");return t};r.converters["unsigned long"]=function(e){const t=r.util.ConvertToInt(e,32,"unsigned");return t};r.converters["unsigned short"]=function(e,t){const s=r.util.ConvertToInt(e,16,"unsigned",t);return s};r.converters.ArrayBuffer=function(e,t={}){if(r.util.Type(e)!=="Object"||!i.isAnyArrayBuffer(e)){throw r.errors.conversionFailed({prefix:`${e}`,argument:`${e}`,types:["ArrayBuffer"]})}if(t.allowShared===false&&i.isSharedArrayBuffer(e)){throw r.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."})}return e};r.converters.TypedArray=function(e,t,s={}){if(r.util.Type(e)!=="Object"||!i.isTypedArray(e)||e.constructor.name!==t.name){throw r.errors.conversionFailed({prefix:`${t.name}`,argument:`${e}`,types:[t.name]})}if(s.allowShared===false&&i.isSharedArrayBuffer(e.buffer)){throw r.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."})}return e};r.converters.DataView=function(e,t={}){if(r.util.Type(e)!=="Object"||!i.isDataView(e)){throw r.errors.exception({header:"DataView",message:"Object is not a DataView."})}if(t.allowShared===false&&i.isSharedArrayBuffer(e.buffer)){throw r.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."})}return e};r.converters.BufferSource=function(e,t={}){if(i.isAnyArrayBuffer(e)){return r.converters.ArrayBuffer(e,t)}if(i.isTypedArray(e)){return r.converters.TypedArray(e,e.constructor)}if(i.isDataView(e)){return r.converters.DataView(e,t)}throw new TypeError(`Could not convert ${e} to a BufferSource.`)};r.converters["sequence"]=r.sequenceConverter(r.converters.ByteString);r.converters["sequence>"]=r.sequenceConverter(r.converters["sequence"]);r.converters["record"]=r.recordConverter(r.converters.ByteString,r.converters.ByteString);e.exports={webidl:r}},396:e=>{"use strict";function getEncoding(e){if(!e){return"failure"}switch(e.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}e.exports={getEncoding:getEncoding}},2160:(e,t,s)=>{"use strict";const{staticPropertyDescriptors:i,readOperation:A,fireAProgressEvent:o}=s(165);const{kState:r,kError:n,kResult:a,kEvents:c,kAborted:l}=s(6812);const{webidl:u}=s(4222);const{kEnumerableProperty:p}=s(3440);class FileReader extends EventTarget{constructor(){super();this[r]="empty";this[a]=null;this[n]=null;this[c]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(e){u.brandCheck(this,FileReader);u.argumentLengthCheck(arguments,1,{header:"FileReader.readAsArrayBuffer"});e=u.converters.Blob(e,{strict:false});A(this,e,"ArrayBuffer")}readAsBinaryString(e){u.brandCheck(this,FileReader);u.argumentLengthCheck(arguments,1,{header:"FileReader.readAsBinaryString"});e=u.converters.Blob(e,{strict:false});A(this,e,"BinaryString")}readAsText(e,t=undefined){u.brandCheck(this,FileReader);u.argumentLengthCheck(arguments,1,{header:"FileReader.readAsText"});e=u.converters.Blob(e,{strict:false});if(t!==undefined){t=u.converters.DOMString(t)}A(this,e,"Text",t)}readAsDataURL(e){u.brandCheck(this,FileReader);u.argumentLengthCheck(arguments,1,{header:"FileReader.readAsDataURL"});e=u.converters.Blob(e,{strict:false});A(this,e,"DataURL")}abort(){if(this[r]==="empty"||this[r]==="done"){this[a]=null;return}if(this[r]==="loading"){this[r]="done";this[a]=null}this[l]=true;o("abort",this);if(this[r]!=="loading"){o("loadend",this)}}get readyState(){u.brandCheck(this,FileReader);switch(this[r]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){u.brandCheck(this,FileReader);return this[a]}get error(){u.brandCheck(this,FileReader);return this[n]}get onloadend(){u.brandCheck(this,FileReader);return this[c].loadend}set onloadend(e){u.brandCheck(this,FileReader);if(this[c].loadend){this.removeEventListener("loadend",this[c].loadend)}if(typeof e==="function"){this[c].loadend=e;this.addEventListener("loadend",e)}else{this[c].loadend=null}}get onerror(){u.brandCheck(this,FileReader);return this[c].error}set onerror(e){u.brandCheck(this,FileReader);if(this[c].error){this.removeEventListener("error",this[c].error)}if(typeof e==="function"){this[c].error=e;this.addEventListener("error",e)}else{this[c].error=null}}get onloadstart(){u.brandCheck(this,FileReader);return this[c].loadstart}set onloadstart(e){u.brandCheck(this,FileReader);if(this[c].loadstart){this.removeEventListener("loadstart",this[c].loadstart)}if(typeof e==="function"){this[c].loadstart=e;this.addEventListener("loadstart",e)}else{this[c].loadstart=null}}get onprogress(){u.brandCheck(this,FileReader);return this[c].progress}set onprogress(e){u.brandCheck(this,FileReader);if(this[c].progress){this.removeEventListener("progress",this[c].progress)}if(typeof e==="function"){this[c].progress=e;this.addEventListener("progress",e)}else{this[c].progress=null}}get onload(){u.brandCheck(this,FileReader);return this[c].load}set onload(e){u.brandCheck(this,FileReader);if(this[c].load){this.removeEventListener("load",this[c].load)}if(typeof e==="function"){this[c].load=e;this.addEventListener("load",e)}else{this[c].load=null}}get onabort(){u.brandCheck(this,FileReader);return this[c].abort}set onabort(e){u.brandCheck(this,FileReader);if(this[c].abort){this.removeEventListener("abort",this[c].abort)}if(typeof e==="function"){this[c].abort=e;this.addEventListener("abort",e)}else{this[c].abort=null}}}FileReader.EMPTY=FileReader.prototype.EMPTY=0;FileReader.LOADING=FileReader.prototype.LOADING=1;FileReader.DONE=FileReader.prototype.DONE=2;Object.defineProperties(FileReader.prototype,{EMPTY:i,LOADING:i,DONE:i,readAsArrayBuffer:p,readAsBinaryString:p,readAsText:p,readAsDataURL:p,abort:p,readyState:p,result:p,error:p,onloadstart:p,onprogress:p,onload:p,onabort:p,onerror:p,onloadend:p,[Symbol.toStringTag]:{value:"FileReader",writable:false,enumerable:false,configurable:true}});Object.defineProperties(FileReader,{EMPTY:i,LOADING:i,DONE:i});e.exports={FileReader:FileReader}},5976:(e,t,s)=>{"use strict";const{webidl:i}=s(4222);const A=Symbol("ProgressEvent state");class ProgressEvent extends Event{constructor(e,t={}){e=i.converters.DOMString(e);t=i.converters.ProgressEventInit(t??{});super(e,t);this[A]={lengthComputable:t.lengthComputable,loaded:t.loaded,total:t.total}}get lengthComputable(){i.brandCheck(this,ProgressEvent);return this[A].lengthComputable}get loaded(){i.brandCheck(this,ProgressEvent);return this[A].loaded}get total(){i.brandCheck(this,ProgressEvent);return this[A].total}}i.converters.ProgressEventInit=i.dictionaryConverter([{key:"lengthComputable",converter:i.converters.boolean,defaultValue:false},{key:"loaded",converter:i.converters["unsigned long long"],defaultValue:0},{key:"total",converter:i.converters["unsigned long long"],defaultValue:0},{key:"bubbles",converter:i.converters.boolean,defaultValue:false},{key:"cancelable",converter:i.converters.boolean,defaultValue:false},{key:"composed",converter:i.converters.boolean,defaultValue:false}]);e.exports={ProgressEvent:ProgressEvent}},6812:e=>{"use strict";e.exports={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")}},165:(e,t,s)=>{"use strict";const{kState:i,kError:A,kResult:o,kAborted:r,kLastProgressEventFired:n}=s(6812);const{ProgressEvent:a}=s(5976);const{getEncoding:c}=s(396);const{DOMException:l}=s(7326);const{serializeAMimeType:u,parseMIMEType:p}=s(4322);const{types:g}=s(9023);const{StringDecoder:h}=s(3193);const{btoa:d}=s(181);const E={enumerable:true,writable:false,configurable:false};function readOperation(e,t,s,a){if(e[i]==="loading"){throw new l("Invalid state","InvalidStateError")}e[i]="loading";e[o]=null;e[A]=null;const c=t.stream();const u=c.getReader();const p=[];let h=u.read();let d=true;(async()=>{while(!e[r]){try{const{done:c,value:l}=await h;if(d&&!e[r]){queueMicrotask((()=>{fireAProgressEvent("loadstart",e)}))}d=false;if(!c&&g.isUint8Array(l)){p.push(l);if((e[n]===undefined||Date.now()-e[n]>=50)&&!e[r]){e[n]=Date.now();queueMicrotask((()=>{fireAProgressEvent("progress",e)}))}h=u.read()}else if(c){queueMicrotask((()=>{e[i]="done";try{const i=packageData(p,s,t.type,a);if(e[r]){return}e[o]=i;fireAProgressEvent("load",e)}catch(t){e[A]=t;fireAProgressEvent("error",e)}if(e[i]!=="loading"){fireAProgressEvent("loadend",e)}}));break}}catch(t){if(e[r]){return}queueMicrotask((()=>{e[i]="done";e[A]=t;fireAProgressEvent("error",e);if(e[i]!=="loading"){fireAProgressEvent("loadend",e)}}));break}}})()}function fireAProgressEvent(e,t){const s=new a(e,{bubbles:false,cancelable:false});t.dispatchEvent(s)}function packageData(e,t,s,i){switch(t){case"DataURL":{let t="data:";const i=p(s||"application/octet-stream");if(i!=="failure"){t+=u(i)}t+=";base64,";const A=new h("latin1");for(const s of e){t+=d(A.write(s))}t+=d(A.end());return t}case"Text":{let t="failure";if(i){t=c(i)}if(t==="failure"&&s){const e=p(s);if(e!=="failure"){t=c(e.parameters.get("charset"))}}if(t==="failure"){t="UTF-8"}return decode(e,t)}case"ArrayBuffer":{const t=combineByteSequences(e);return t.buffer}case"BinaryString":{let t="";const s=new h("latin1");for(const i of e){t+=s.write(i)}t+=s.end();return t}}}function decode(e,t){const s=combineByteSequences(e);const i=BOMSniffing(s);let A=0;if(i!==null){t=i;A=i==="UTF-8"?3:2}const o=s.slice(A);return new TextDecoder(t).decode(o)}function BOMSniffing(e){const[t,s,i]=e;if(t===239&&s===187&&i===191){return"UTF-8"}else if(t===254&&s===255){return"UTF-16BE"}else if(t===255&&s===254){return"UTF-16LE"}return null}function combineByteSequences(e){const t=e.reduce(((e,t)=>e+t.byteLength),0);let s=0;return e.reduce(((e,t)=>{e.set(t,s);s+=t.byteLength;return e}),new Uint8Array(t))}e.exports={staticPropertyDescriptors:E,readOperation:readOperation,fireAProgressEvent:fireAProgressEvent}},2581:(e,t,s)=>{"use strict";const i=Symbol.for("undici.globalDispatcher.1");const{InvalidArgumentError:A}=s(8707);const o=s(9965);if(getGlobalDispatcher()===undefined){setGlobalDispatcher(new o)}function setGlobalDispatcher(e){if(!e||typeof e.dispatch!=="function"){throw new A("Argument agent must implement Agent")}Object.defineProperty(globalThis,i,{value:e,writable:true,enumerable:false,configurable:false})}function getGlobalDispatcher(){return globalThis[i]}e.exports={setGlobalDispatcher:setGlobalDispatcher,getGlobalDispatcher:getGlobalDispatcher}},8840:e=>{"use strict";e.exports=class DecoratorHandler{constructor(e){this.handler=e}onConnect(...e){return this.handler.onConnect(...e)}onError(...e){return this.handler.onError(...e)}onUpgrade(...e){return this.handler.onUpgrade(...e)}onHeaders(...e){return this.handler.onHeaders(...e)}onData(...e){return this.handler.onData(...e)}onComplete(...e){return this.handler.onComplete(...e)}onBodySent(...e){return this.handler.onBodySent(...e)}}},8299:(e,t,s)=>{"use strict";const i=s(3440);const{kBodyUsed:A}=s(6443);const o=s(2613);const{InvalidArgumentError:r}=s(8707);const n=s(4434);const a=[300,301,302,303,307,308];const c=Symbol("body");class BodyAsyncIterable{constructor(e){this[c]=e;this[A]=false}async*[Symbol.asyncIterator](){o(!this[A],"disturbed");this[A]=true;yield*this[c]}}class RedirectHandler{constructor(e,t,s,a){if(t!=null&&(!Number.isInteger(t)||t<0)){throw new r("maxRedirections must be a positive number")}i.validateHandler(a,s.method,s.upgrade);this.dispatch=e;this.location=null;this.abort=null;this.opts={...s,maxRedirections:0};this.maxRedirections=t;this.handler=a;this.history=[];if(i.isStream(this.opts.body)){if(i.bodyLength(this.opts.body)===0){this.opts.body.on("data",(function(){o(false)}))}if(typeof this.opts.body.readableDidRead!=="boolean"){this.opts.body[A]=false;n.prototype.on.call(this.opts.body,"data",(function(){this[A]=true}))}}else if(this.opts.body&&typeof this.opts.body.pipeTo==="function"){this.opts.body=new BodyAsyncIterable(this.opts.body)}else if(this.opts.body&&typeof this.opts.body!=="string"&&!ArrayBuffer.isView(this.opts.body)&&i.isIterable(this.opts.body)){this.opts.body=new BodyAsyncIterable(this.opts.body)}}onConnect(e){this.abort=e;this.handler.onConnect(e,{history:this.history})}onUpgrade(e,t,s){this.handler.onUpgrade(e,t,s)}onError(e){this.handler.onError(e)}onHeaders(e,t,s,A){this.location=this.history.length>=this.maxRedirections||i.isDisturbed(this.opts.body)?null:parseLocation(e,t);if(this.opts.origin){this.history.push(new URL(this.opts.path,this.opts.origin))}if(!this.location){return this.handler.onHeaders(e,t,s,A)}const{origin:o,pathname:r,search:n}=i.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin)));const a=n?`${r}${n}`:r;this.opts.headers=cleanRequestHeaders(this.opts.headers,e===303,this.opts.origin!==o);this.opts.path=a;this.opts.origin=o;this.opts.maxRedirections=0;this.opts.query=null;if(e===303&&this.opts.method!=="HEAD"){this.opts.method="GET";this.opts.body=null}}onData(e){if(this.location){}else{return this.handler.onData(e)}}onComplete(e){if(this.location){this.location=null;this.abort=null;this.dispatch(this.opts,this)}else{this.handler.onComplete(e)}}onBodySent(e){if(this.handler.onBodySent){this.handler.onBodySent(e)}}}function parseLocation(e,t){if(a.indexOf(e)===-1){return null}for(let e=0;e{const i=s(2613);const{kRetryHandlerDefaultRetry:A}=s(6443);const{RequestRetryError:o}=s(8707);const{isDisturbed:r,parseHeaders:n,parseRangeHeader:a}=s(3440);function calculateRetryAfterHeader(e){const t=Date.now();const s=new Date(e).getTime()-t;return s}class RetryHandler{constructor(e,t){const{retryOptions:s,...i}=e;const{retry:o,maxRetries:r,maxTimeout:n,minTimeout:a,timeoutFactor:c,methods:l,errorCodes:u,retryAfter:p,statusCodes:g}=s??{};this.dispatch=t.dispatch;this.handler=t.handler;this.opts=i;this.abort=null;this.aborted=false;this.retryOpts={retry:o??RetryHandler[A],retryAfter:p??true,maxTimeout:n??30*1e3,timeout:a??500,timeoutFactor:c??2,maxRetries:r??5,methods:l??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:g??[500,502,503,504,429],errorCodes:u??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE"]};this.retryCount=0;this.start=0;this.end=null;this.etag=null;this.resume=null;this.handler.onConnect((e=>{this.aborted=true;if(this.abort){this.abort(e)}else{this.reason=e}}))}onRequestSent(){if(this.handler.onRequestSent){this.handler.onRequestSent()}}onUpgrade(e,t,s){if(this.handler.onUpgrade){this.handler.onUpgrade(e,t,s)}}onConnect(e){if(this.aborted){e(this.reason)}else{this.abort=e}}onBodySent(e){if(this.handler.onBodySent)return this.handler.onBodySent(e)}static[A](e,{state:t,opts:s},i){const{statusCode:A,code:o,headers:r}=e;const{method:n,retryOptions:a}=s;const{maxRetries:c,timeout:l,maxTimeout:u,timeoutFactor:p,statusCodes:g,errorCodes:h,methods:d}=a;let{counter:E,currentTimeout:Q}=t;Q=Q!=null&&Q>0?Q:l;if(o&&o!=="UND_ERR_REQ_RETRY"&&o!=="UND_ERR_SOCKET"&&!h.includes(o)){i(e);return}if(Array.isArray(d)&&!d.includes(n)){i(e);return}if(A!=null&&Array.isArray(g)&&!g.includes(A)){i(e);return}if(E>c){i(e);return}let C=r!=null&&r["retry-after"];if(C){C=Number(C);C=isNaN(C)?calculateRetryAfterHeader(C):C*1e3}const B=C>0?Math.min(C,u):Math.min(Q*p**E,u);t.currentTimeout=B;setTimeout((()=>i(null)),B)}onHeaders(e,t,s,A){const r=n(t);this.retryCount+=1;if(e>=300){this.abort(new o("Request failed",e,{headers:r,count:this.retryCount}));return false}if(this.resume!=null){this.resume=null;if(e!==206){return true}const t=a(r["content-range"]);if(!t){this.abort(new o("Content-Range mismatch",e,{headers:r,count:this.retryCount}));return false}if(this.etag!=null&&this.etag!==r.etag){this.abort(new o("ETag mismatch",e,{headers:r,count:this.retryCount}));return false}const{start:A,size:n,end:c=n}=t;i(this.start===A,"content-range mismatch");i(this.end==null||this.end===c,"content-range mismatch");this.resume=s;return true}if(this.end==null){if(e===206){const o=a(r["content-range"]);if(o==null){return this.handler.onHeaders(e,t,s,A)}const{start:n,size:c,end:l=c}=o;i(n!=null&&Number.isFinite(n)&&this.start!==n,"content-range mismatch");i(Number.isFinite(n));i(l!=null&&Number.isFinite(l)&&this.end!==l,"invalid content-length");this.start=n;this.end=l}if(this.end==null){const e=r["content-length"];this.end=e!=null?Number(e):null}i(Number.isFinite(this.start));i(this.end==null||Number.isFinite(this.end),"invalid content-length");this.resume=s;this.etag=r.etag!=null?r.etag:null;return this.handler.onHeaders(e,t,s,A)}const c=new o("Request failed",e,{headers:r,count:this.retryCount});this.abort(c);return false}onData(e){this.start+=e.length;return this.handler.onData(e)}onComplete(e){this.retryCount=0;return this.handler.onComplete(e)}onError(e){if(this.aborted||r(this.opts.body)){return this.handler.onError(e)}this.retryOpts.retry(e,{state:{counter:this.retryCount++,currentTimeout:this.retryAfter},opts:{retryOptions:this.retryOpts,...this.opts}},onRetry.bind(this));function onRetry(e){if(e!=null||this.aborted||r(this.opts.body)){return this.handler.onError(e)}if(this.start!==0){this.opts={...this.opts,headers:{...this.opts.headers,range:`bytes=${this.start}-${this.end??""}`}}}try{this.dispatch(this.opts,this)}catch(e){this.handler.onError(e)}}}}e.exports=RetryHandler},4415:(e,t,s)=>{"use strict";const i=s(8299);function createRedirectInterceptor({maxRedirections:e}){return t=>function Intercept(s,A){const{maxRedirections:o=e}=s;if(!o){return t(s,A)}const r=new i(t,o,s,A);s={...s,maxRedirections:0};return t(s,r)}}e.exports=createRedirectInterceptor},2824:(e,t,s)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.SPECIAL_HEADERS=t.HEADER_STATE=t.MINOR=t.MAJOR=t.CONNECTION_TOKEN_CHARS=t.HEADER_CHARS=t.TOKEN=t.STRICT_TOKEN=t.HEX=t.URL_CHAR=t.STRICT_URL_CHAR=t.USERINFO_CHARS=t.MARK=t.ALPHANUM=t.NUM=t.HEX_MAP=t.NUM_MAP=t.ALPHA=t.FINISH=t.H_METHOD_MAP=t.METHOD_MAP=t.METHODS_RTSP=t.METHODS_ICE=t.METHODS_HTTP=t.METHODS=t.LENIENT_FLAGS=t.FLAGS=t.TYPE=t.ERROR=void 0;const i=s(172);var A;(function(e){e[e["OK"]=0]="OK";e[e["INTERNAL"]=1]="INTERNAL";e[e["STRICT"]=2]="STRICT";e[e["LF_EXPECTED"]=3]="LF_EXPECTED";e[e["UNEXPECTED_CONTENT_LENGTH"]=4]="UNEXPECTED_CONTENT_LENGTH";e[e["CLOSED_CONNECTION"]=5]="CLOSED_CONNECTION";e[e["INVALID_METHOD"]=6]="INVALID_METHOD";e[e["INVALID_URL"]=7]="INVALID_URL";e[e["INVALID_CONSTANT"]=8]="INVALID_CONSTANT";e[e["INVALID_VERSION"]=9]="INVALID_VERSION";e[e["INVALID_HEADER_TOKEN"]=10]="INVALID_HEADER_TOKEN";e[e["INVALID_CONTENT_LENGTH"]=11]="INVALID_CONTENT_LENGTH";e[e["INVALID_CHUNK_SIZE"]=12]="INVALID_CHUNK_SIZE";e[e["INVALID_STATUS"]=13]="INVALID_STATUS";e[e["INVALID_EOF_STATE"]=14]="INVALID_EOF_STATE";e[e["INVALID_TRANSFER_ENCODING"]=15]="INVALID_TRANSFER_ENCODING";e[e["CB_MESSAGE_BEGIN"]=16]="CB_MESSAGE_BEGIN";e[e["CB_HEADERS_COMPLETE"]=17]="CB_HEADERS_COMPLETE";e[e["CB_MESSAGE_COMPLETE"]=18]="CB_MESSAGE_COMPLETE";e[e["CB_CHUNK_HEADER"]=19]="CB_CHUNK_HEADER";e[e["CB_CHUNK_COMPLETE"]=20]="CB_CHUNK_COMPLETE";e[e["PAUSED"]=21]="PAUSED";e[e["PAUSED_UPGRADE"]=22]="PAUSED_UPGRADE";e[e["PAUSED_H2_UPGRADE"]=23]="PAUSED_H2_UPGRADE";e[e["USER"]=24]="USER"})(A=t.ERROR||(t.ERROR={}));var o;(function(e){e[e["BOTH"]=0]="BOTH";e[e["REQUEST"]=1]="REQUEST";e[e["RESPONSE"]=2]="RESPONSE"})(o=t.TYPE||(t.TYPE={}));var r;(function(e){e[e["CONNECTION_KEEP_ALIVE"]=1]="CONNECTION_KEEP_ALIVE";e[e["CONNECTION_CLOSE"]=2]="CONNECTION_CLOSE";e[e["CONNECTION_UPGRADE"]=4]="CONNECTION_UPGRADE";e[e["CHUNKED"]=8]="CHUNKED";e[e["UPGRADE"]=16]="UPGRADE";e[e["CONTENT_LENGTH"]=32]="CONTENT_LENGTH";e[e["SKIPBODY"]=64]="SKIPBODY";e[e["TRAILING"]=128]="TRAILING";e[e["TRANSFER_ENCODING"]=512]="TRANSFER_ENCODING"})(r=t.FLAGS||(t.FLAGS={}));var n;(function(e){e[e["HEADERS"]=1]="HEADERS";e[e["CHUNKED_LENGTH"]=2]="CHUNKED_LENGTH";e[e["KEEP_ALIVE"]=4]="KEEP_ALIVE"})(n=t.LENIENT_FLAGS||(t.LENIENT_FLAGS={}));var a;(function(e){e[e["DELETE"]=0]="DELETE";e[e["GET"]=1]="GET";e[e["HEAD"]=2]="HEAD";e[e["POST"]=3]="POST";e[e["PUT"]=4]="PUT";e[e["CONNECT"]=5]="CONNECT";e[e["OPTIONS"]=6]="OPTIONS";e[e["TRACE"]=7]="TRACE";e[e["COPY"]=8]="COPY";e[e["LOCK"]=9]="LOCK";e[e["MKCOL"]=10]="MKCOL";e[e["MOVE"]=11]="MOVE";e[e["PROPFIND"]=12]="PROPFIND";e[e["PROPPATCH"]=13]="PROPPATCH";e[e["SEARCH"]=14]="SEARCH";e[e["UNLOCK"]=15]="UNLOCK";e[e["BIND"]=16]="BIND";e[e["REBIND"]=17]="REBIND";e[e["UNBIND"]=18]="UNBIND";e[e["ACL"]=19]="ACL";e[e["REPORT"]=20]="REPORT";e[e["MKACTIVITY"]=21]="MKACTIVITY";e[e["CHECKOUT"]=22]="CHECKOUT";e[e["MERGE"]=23]="MERGE";e[e["M-SEARCH"]=24]="M-SEARCH";e[e["NOTIFY"]=25]="NOTIFY";e[e["SUBSCRIBE"]=26]="SUBSCRIBE";e[e["UNSUBSCRIBE"]=27]="UNSUBSCRIBE";e[e["PATCH"]=28]="PATCH";e[e["PURGE"]=29]="PURGE";e[e["MKCALENDAR"]=30]="MKCALENDAR";e[e["LINK"]=31]="LINK";e[e["UNLINK"]=32]="UNLINK";e[e["SOURCE"]=33]="SOURCE";e[e["PRI"]=34]="PRI";e[e["DESCRIBE"]=35]="DESCRIBE";e[e["ANNOUNCE"]=36]="ANNOUNCE";e[e["SETUP"]=37]="SETUP";e[e["PLAY"]=38]="PLAY";e[e["PAUSE"]=39]="PAUSE";e[e["TEARDOWN"]=40]="TEARDOWN";e[e["GET_PARAMETER"]=41]="GET_PARAMETER";e[e["SET_PARAMETER"]=42]="SET_PARAMETER";e[e["REDIRECT"]=43]="REDIRECT";e[e["RECORD"]=44]="RECORD";e[e["FLUSH"]=45]="FLUSH"})(a=t.METHODS||(t.METHODS={}));t.METHODS_HTTP=[a.DELETE,a.GET,a.HEAD,a.POST,a.PUT,a.CONNECT,a.OPTIONS,a.TRACE,a.COPY,a.LOCK,a.MKCOL,a.MOVE,a.PROPFIND,a.PROPPATCH,a.SEARCH,a.UNLOCK,a.BIND,a.REBIND,a.UNBIND,a.ACL,a.REPORT,a.MKACTIVITY,a.CHECKOUT,a.MERGE,a["M-SEARCH"],a.NOTIFY,a.SUBSCRIBE,a.UNSUBSCRIBE,a.PATCH,a.PURGE,a.MKCALENDAR,a.LINK,a.UNLINK,a.PRI,a.SOURCE];t.METHODS_ICE=[a.SOURCE];t.METHODS_RTSP=[a.OPTIONS,a.DESCRIBE,a.ANNOUNCE,a.SETUP,a.PLAY,a.PAUSE,a.TEARDOWN,a.GET_PARAMETER,a.SET_PARAMETER,a.REDIRECT,a.RECORD,a.FLUSH,a.GET,a.POST];t.METHOD_MAP=i.enumToMap(a);t.H_METHOD_MAP={};Object.keys(t.METHOD_MAP).forEach((e=>{if(/^H/.test(e)){t.H_METHOD_MAP[e]=t.METHOD_MAP[e]}}));var c;(function(e){e[e["SAFE"]=0]="SAFE";e[e["SAFE_WITH_CB"]=1]="SAFE_WITH_CB";e[e["UNSAFE"]=2]="UNSAFE"})(c=t.FINISH||(t.FINISH={}));t.ALPHA=[];for(let e="A".charCodeAt(0);e<="Z".charCodeAt(0);e++){t.ALPHA.push(String.fromCharCode(e));t.ALPHA.push(String.fromCharCode(e+32))}t.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};t.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};t.NUM=["0","1","2","3","4","5","6","7","8","9"];t.ALPHANUM=t.ALPHA.concat(t.NUM);t.MARK=["-","_",".","!","~","*","'","(",")"];t.USERINFO_CHARS=t.ALPHANUM.concat(t.MARK).concat(["%",";",":","&","=","+","$",","]);t.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(t.ALPHANUM);t.URL_CHAR=t.STRICT_URL_CHAR.concat(["\t","\f"]);for(let e=128;e<=255;e++){t.URL_CHAR.push(e)}t.HEX=t.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);t.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(t.ALPHANUM);t.TOKEN=t.STRICT_TOKEN.concat([" "]);t.HEADER_CHARS=["\t"];for(let e=32;e<=255;e++){if(e!==127){t.HEADER_CHARS.push(e)}}t.CONNECTION_TOKEN_CHARS=t.HEADER_CHARS.filter((e=>e!==44));t.MAJOR=t.NUM_MAP;t.MINOR=t.MAJOR;var l;(function(e){e[e["GENERAL"]=0]="GENERAL";e[e["CONNECTION"]=1]="CONNECTION";e[e["CONTENT_LENGTH"]=2]="CONTENT_LENGTH";e[e["TRANSFER_ENCODING"]=3]="TRANSFER_ENCODING";e[e["UPGRADE"]=4]="UPGRADE";e[e["CONNECTION_KEEP_ALIVE"]=5]="CONNECTION_KEEP_ALIVE";e[e["CONNECTION_CLOSE"]=6]="CONNECTION_CLOSE";e[e["CONNECTION_UPGRADE"]=7]="CONNECTION_UPGRADE";e[e["TRANSFER_ENCODING_CHUNKED"]=8]="TRANSFER_ENCODING_CHUNKED"})(l=t.HEADER_STATE||(t.HEADER_STATE={}));t.SPECIAL_HEADERS={connection:l.CONNECTION,"content-length":l.CONTENT_LENGTH,"proxy-connection":l.CONNECTION,"transfer-encoding":l.TRANSFER_ENCODING,upgrade:l.UPGRADE}},3870:e=>{e.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJs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ADcDACAAQShqQgA3AwAgAEEgakIANwMAIABBEGpCADcDACAAQQhqQgA3AwAgAEHdATYCHEEAC3sBAX8CQCAAKAIMIgMNAAJAIAAoAgRFDQAgACABNgIECwJAIAAgASACEMSAgIAAIgMNACAAKAIMDwsgACADNgIcQQAhAyAAKAIEIgFFDQAgACABIAIgACgCCBGBgICAAAAiAUUNACAAIAI2AhQgACABNgIMIAEhAwsgAwvk8wEDDn8DfgR/I4CAgIAAQRBrIgMkgICAgAAgASEEIAEhBSABIQYgASEHIAEhCCABIQkgASEKIAEhCyABIQwgASENIAEhDiABIQ8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgACgCHCIQQX9qDt0B2gEB2QECAwQFBgcICQoLDA0O2AEPENcBERLWARMUFRYXGBkaG+AB3wEcHR7VAR8gISIjJCXUASYnKCkqKyzTAdIBLS7RAdABLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVG2wFHSElKzwHOAUvNAUzMAU1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4ABgQGCAYMBhAGFAYYBhwGIAYkB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QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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FCAAIBA2AgxBACEQDLIBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxNCyAAQdMANgIcIAAgATYCFCAAIBA2AgxBACEQDLEBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxRCyAAQeUANgIcIAAgATYCFCAAIBA2AgxBACEQDLABCyAAQQA2AhwgACABNgIUIABBxoqAgAA2AhAgAEEHNgIMQQAhEAyvAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHSADYCHCAAIAE2AhQgACAQNgIMQQAhEAyuAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHTADYCHCAAIAE2AhQgACAQNgIMQQAhEAytAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMTQsgAEHlADYCHCAAIAE2AhQgACAQNgIMQQAhEAysAQsgAEEANgIcIAAgATYCFCAAQdyIgIAANgIQIABBBzYCDEEAIRAMqwELIBBBP0cNASABQQFqIQELQQUhEAyQAQtBACEQIABBADYCHCAAIAE2AhQgAEH9koCAADYCECAAQQc2AgwMqAELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0gA2AhwgACABNgIUIAAgEDYCDEEAIRAMpwELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0wA2AhwgACABNgIUIAAgEDYCDEEAIRAMpgELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEYLIABB5QA2AhwgACABNgIUIAAgEDYCDEEAIRAMpQELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0gA2AhwgACAUNgIUIAAgATYCDEEAIRAMpAELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0wA2AhwgACAUNgIUIAAgATYCDEEAIRAMowELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDEMLIABB5QA2AhwgACAU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YWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21ldGhvZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lYCBjYWxsYmFjayBlcnJvcgBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNlcnZlcgBJbnZhbGlkIGhlYWRlciB2YWx1ZSBjaGFyAEludmFsaWQgaGVhZGVyIGZpZWxkIGNoYXIAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl92ZXJzaW9uAEludmFsaWQgbWlub3IgdmVyc2lvbgBJbnZhbGlkIG1ham9yIHZlcnNpb24ARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgdmVyc2lvbgBFeHBlY3RlZCBDUkxGIGFmdGVyIHZlcnNpb24ASW52YWxpZCBIVFRQIHZlcnNpb24ASW52YWxpZCBoZWFkZXIgdG9rZW4AU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl91cmwASW52YWxpZCBjaGFyYWN0ZXJzIGluIHVybABVbmV4cGVjdGVkIHN0YXJ0IGNoYXIgaW4gdXJsAERvdWJsZSBAIGluIHVybABFbXB0eSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXJhY3RlciBpbiBDb250ZW50LUxlbmd0aABEdXBsaWNhdGUgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyIGluIHVybCBwYXRoAENvbnRlbnQtTGVuZ3RoIGNhbid0IGJlIHByZXNlbnQgd2l0aCBUcmFuc2Zlci1FbmNvZGluZwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBzaXplAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX3ZhbHVlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgdmFsdWUATWlzc2luZyBleHBlY3RlZCBMRiBhZnRlciBoZWFkZXIgdmFsdWUASW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fbmFtZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIG5hbWUAUGF1c2Ugb24gQ09OTkVDVC9VcGdyYWRlAFBhdXNlIG9uIFBSSS9VcGdyYWRlAEV4cGVjdGVkIEhUVFAvMiBDb25uZWN0aW9uIFByZWZhY2UAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9tZXRob2QARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgbWV0aG9kAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX2ZpZWxkAFBhdXNlZABJbnZhbGlkIHdvcmQgZW5jb3VudGVyZWQASW52YWxpZCBtZXRob2QgZW5jb3VudGVyZWQAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzY2hlbWEAUmVxdWVzdCBoYXMgaW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX0NIVU5LX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX05BTUVfQ09NUExFVEUASFBFX0NCX01FU1NBR0VfQ09NUExFVEUASFBFX0NCX01FVEhPRF9DT01QTEVURQBIUEVfQ0JfSEVBREVSX0ZJRUxEX0NPTVBMRVRFAERFTEVURQBIUEVfSU5WQUxJRF9FT0ZfU1RBVEUASU5WQUxJRF9TU0xfQ0VSVElGSUNBVEUAUEFVU0UATk9fUkVTUE9OU0UAVU5TVVBQT1JURURfTUVESUFfVFlQRQBHT05FAE5PVF9BQ0NFUFRBQkxFAFNFUlZJQ0VfVU5BVkFJTEFCTEUAUkFOR0VfTk9UX1NBVElTRklBQkxFAE9SSUdJTl9JU19VTlJFQUNIQUJMRQBSRVNQT05TRV9JU19TVEFMRQBQVVJHRQBNRVJHRQBSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFAFJFUVVFU1RfSEVBREVSX1RPT19MQVJHRQBQQVlMT0FEX1RPT19MQVJHRQBJTlNVRkZJQ0lFTlRfU1RPUkFHRQBIUEVfUEFVU0VEX1VQR1JBREUASFBFX1BBVVNFRF9IMl9VUEdSQURFAFNPVVJDRQBBTk5PVU5DRQBUUkFDRQBIUEVfVU5FWFBFQ1RFRF9TUEFDRQBERVNDUklCRQBVTlNVQlNDUklCRQBSRUNPUkQASFBFX0lOVkFMSURfTUVUSE9EAE5PVF9GT1VORABQUk9QRklORABVTkJJTkQAUkVCSU5EAFVOQVVUSE9SSVpFRABNRVRIT0RfTk9UX0FMTE9XRUQASFRUUF9WRVJTSU9OX05PVF9TVVBQT1JURUQAQUxSRUFEWV9SRVBPUlRFRABBQ0NFUFRFRABOT1RfSU1QTEVNRU5URUQATE9PUF9ERVRFQ1RFRABIUEVfQ1JfRVhQRUNURUQASFBFX0xGX0VYUEVDVEVEAENSRUFURUQASU1fVVNFRABIUEVfUEFVU0VEAFRJTUVPVVRfT0NDVVJFRABQQVlNRU5UX1JFUVVJUkVEAFBSRUNPTkRJVElPTl9SRVFVSVJFRABQUk9YWV9BVVRIRU5USUNBVElPTl9SRVFVSVJFRABORVRXT1JLX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAExFTkdUSF9SRVFVSVJFRABTU0xfQ0VSVElGSUNBVEVfUkVRVUlSRUQAVVBHUkFERV9SRVFVSVJFRABQQUdFX0VYUElSRUQAUFJFQ09ORElUSU9OX0ZBSUxFRABFWFBFQ1RBVElPTl9GQUlMRUQAUkVWQUxJREFUSU9OX0ZBSUxFRABTU0xfSEFORFNIQUtFX0ZBSUxFRABMT0NLRUQAVFJBTlNGT1JNQVRJT05fQVBQTElFRABOT1RfTU9ESUZJRUQATk9UX0VYVEVOREVEAEJBTkRXSURUSF9MSU1JVF9FWENFRURFRABTSVRFX0lTX09WRVJMT0FERUQASEVBRABFeHBlY3RlZCBIVFRQLwAAXhMAACYTAAAwEAAA8BcAAJ0TAAAVEgAAORcAAPASAAAKEAAAdRIAAK0SAACCEwAATxQAAH8QAACgFQAAIxQAAIkSAACLFAAATRUAANQRAADPFAAAEBgAAMkWAADcFgAAwREAAOAXAAC7FAAAdBQAAHwVAADlFAAACBcAAB8QAABlFQAAoxQAACgVAAACFQAAmRUAACwQAACLGQAATw8AANQOAABqEAAAzhAAAAIXAACJDgAAbhMAABwTAABmFAAAVhcAAMETAADNEwAAbBMAAGgXAABmFwAAXxcAACITAADODwAAaQ4AANgOAABjFgAAyxMAAKoOAAAoFwAAJhcAAMUTAABdFgAA6BEAAGcTAABlEwAA8hYAAHMTAAAdFwAA+RYAAPMRAADPDgAAzhUAAAwSAACzEQAApREAAGEQAAAyFwAAuxMAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIDAgICAgIAAAICAAICAAICAgICAgICAgIABAAAAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAACAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbG9zZWVlcC1hbGl2ZQAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEAAAEBAAEBAAEBAQEBAQEBAQEAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AAAAAAAAAAAAAAAAAAAByYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AAAAAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQIAAQMAAAAAAAAAAAAAAAAAAAAAAAAEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAQAAAgAAAAAAAAAAAAAAAAAAAAAAAAMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAIAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABOT1VOQ0VFQ0tPVVRORUNURVRFQ1JJQkVMVVNIRVRFQURTRUFSQ0hSR0VDVElWSVRZTEVOREFSVkVPVElGWVBUSU9OU0NIU0VBWVNUQVRDSEdFT1JESVJFQ1RPUlRSQ0hQQVJBTUVURVJVUkNFQlNDUklCRUFSRE9XTkFDRUlORE5LQ0tVQlNDUklCRUhUVFAvQURUUC8="},3434:e=>{e.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJs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IAH9CwMAIABBMGogAf0LAwAgAEEgaiAB/QsDACAAQd0BNgIcQQALewEBfwJAIAAoAgwiAw0AAkAgACgCBEUNACAAIAE2AgQLAkAgACABIAIQxICAgAAiAw0AIAAoAgwPCyAAIAM2AhxBACEDIAAoAgQiAUUNACAAIAEgAiAAKAIIEYGAgIAAACIBRQ0AIAAgAjYCFCAAIAE2AgwgASEDCyADC+TzAQMOfwN+BH8jgICAgABBEGsiAySAgICAACABIQQgASEFIAEhBiABIQcgASEIIAEhCSABIQogASELIAEhDCABIQ0gASEOIAEhDwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIcIhBBf2oO3QHaAQHZAQIDBAUGBwgJCgsMDQ7YAQ8Q1wEREtYBExQVFhcYGRob4AHfARwdHtUBHyAhIiMkJdQBJicoKSorLNMB0gEtLtEB0AEvMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUbbAUdISUrPAc4BS80BTMwBTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gAGBAYIBgwGEAYUBhgGHAYgBiQGKAYsBjAGNAY4BjwGQAZEB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QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIBAOxwEAAQID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YWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsb3NlZWVwLWFsaXZlAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgAAAAAAAAAAAAAAAAAAAHJhbnNmZXItZW5jb2RpbmdwZ3JhZGUNCg0KDQpTTQ0KDQpUVFAvQ0UvVFNQLwAAAAAAAAAAAAAAAAECAAEDAAAAAAAAAAAAAAAAAAAAAAAABAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQUBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAABAAACAAAAAAAAAAAAAAAAAAAAAAAAAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAgAAAAACAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw=="},172:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.enumToMap=void 0;function enumToMap(e){const t={};Object.keys(e).forEach((s=>{const i=e[s];if(typeof i==="number"){t[s]=i}}));return t}t.enumToMap=enumToMap},7501:(e,t,s)=>{"use strict";const{kClients:i}=s(6443);const A=s(9965);const{kAgent:o,kMockAgentSet:r,kMockAgentGet:n,kDispatches:a,kIsMockActive:c,kNetConnect:l,kGetNetConnect:u,kOptions:p,kFactory:g}=s(1117);const h=s(7365);const d=s(4004);const{matchValue:E,buildMockOptions:Q}=s(3397);const{InvalidArgumentError:C,UndiciError:B}=s(8707);const I=s(992);const b=s(1529);const y=s(6142);class FakeWeakRef{constructor(e){this.value=e}deref(){return this.value}}class MockAgent extends I{constructor(e){super(e);this[l]=true;this[c]=true;if(e&&e.agent&&typeof e.agent.dispatch!=="function"){throw new C("Argument opts.agent must implement Agent")}const t=e&&e.agent?e.agent:new A(e);this[o]=t;this[i]=t[i];this[p]=Q(e)}get(e){let t=this[n](e);if(!t){t=this[g](e);this[r](e,t)}return t}dispatch(e,t){this.get(e.origin);return this[o].dispatch(e,t)}async close(){await this[o].close();this[i].clear()}deactivate(){this[c]=false}activate(){this[c]=true}enableNetConnect(e){if(typeof e==="string"||typeof e==="function"||e instanceof RegExp){if(Array.isArray(this[l])){this[l].push(e)}else{this[l]=[e]}}else if(typeof e==="undefined"){this[l]=true}else{throw new C("Unsupported matcher. Must be one of String|Function|RegExp.")}}disableNetConnect(){this[l]=false}get isMockActive(){return this[c]}[r](e,t){this[i].set(e,new FakeWeakRef(t))}[g](e){const t=Object.assign({agent:this},this[p]);return this[p]&&this[p].connections===1?new h(e,t):new d(e,t)}[n](e){const t=this[i].get(e);if(t){return t.deref()}if(typeof e!=="string"){const t=this[g]("http://localhost:9999");this[r](e,t);return t}for(const[t,s]of Array.from(this[i])){const i=s.deref();if(i&&typeof t!=="string"&&E(t,e)){const t=this[g](e);this[r](e,t);t[a]=i[a];return t}}}[u](){return this[l]}pendingInterceptors(){const e=this[i];return Array.from(e.entries()).flatMap((([e,t])=>t.deref()[a].map((t=>({...t,origin:e}))))).filter((({pending:e})=>e))}assertNoPendingInterceptors({pendingInterceptorsFormatter:e=new y}={}){const t=this.pendingInterceptors();if(t.length===0){return}const s=new b("interceptor","interceptors").pluralize(t.length);throw new B(`\n${s.count} ${s.noun} ${s.is} pending:\n\n${e.format(t)}\n`.trim())}}e.exports=MockAgent},7365:(e,t,s)=>{"use strict";const{promisify:i}=s(9023);const A=s(6197);const{buildMockDispatch:o}=s(3397);const{kDispatches:r,kMockAgent:n,kClose:a,kOriginalClose:c,kOrigin:l,kOriginalDispatch:u,kConnected:p}=s(1117);const{MockInterceptor:g}=s(1511);const h=s(6443);const{InvalidArgumentError:d}=s(8707);class MockClient extends A{constructor(e,t){super(e,t);if(!t||!t.agent||typeof t.agent.dispatch!=="function"){throw new d("Argument opts.agent must implement Agent")}this[n]=t.agent;this[l]=e;this[r]=[];this[p]=1;this[u]=this.dispatch;this[c]=this.close.bind(this);this.dispatch=o.call(this);this.close=this[a]}get[h.kConnected](){return this[p]}intercept(e){return new g(e,this[r])}async[a](){await i(this[c])();this[p]=0;this[n][h.kClients].delete(this[l])}}e.exports=MockClient},2429:(e,t,s)=>{"use strict";const{UndiciError:i}=s(8707);class MockNotMatchedError extends i{constructor(e){super(e);Error.captureStackTrace(this,MockNotMatchedError);this.name="MockNotMatchedError";this.message=e||"The request does not match any registered mock dispatches";this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}}e.exports={MockNotMatchedError:MockNotMatchedError}},1511:(e,t,s)=>{"use strict";const{getResponseData:i,buildKey:A,addMockDispatch:o}=s(3397);const{kDispatches:r,kDispatchKey:n,kDefaultHeaders:a,kDefaultTrailers:c,kContentLength:l,kMockDispatch:u}=s(1117);const{InvalidArgumentError:p}=s(8707);const{buildURL:g}=s(3440);class MockScope{constructor(e){this[u]=e}delay(e){if(typeof e!=="number"||!Number.isInteger(e)||e<=0){throw new p("waitInMs must be a valid integer > 0")}this[u].delay=e;return this}persist(){this[u].persist=true;return this}times(e){if(typeof e!=="number"||!Number.isInteger(e)||e<=0){throw new p("repeatTimes must be a valid integer > 0")}this[u].times=e;return this}}class MockInterceptor{constructor(e,t){if(typeof e!=="object"){throw new p("opts must be an object")}if(typeof e.path==="undefined"){throw new p("opts.path must be defined")}if(typeof e.method==="undefined"){e.method="GET"}if(typeof e.path==="string"){if(e.query){e.path=g(e.path,e.query)}else{const t=new URL(e.path,"data://");e.path=t.pathname+t.search}}if(typeof e.method==="string"){e.method=e.method.toUpperCase()}this[n]=A(e);this[r]=t;this[a]={};this[c]={};this[l]=false}createMockScopeDispatchData(e,t,s={}){const A=i(t);const o=this[l]?{"content-length":A.length}:{};const r={...this[a],...o,...s.headers};const n={...this[c],...s.trailers};return{statusCode:e,data:t,headers:r,trailers:n}}validateReplyParameters(e,t,s){if(typeof e==="undefined"){throw new p("statusCode must be defined")}if(typeof t==="undefined"){throw new p("data must be defined")}if(typeof s!=="object"){throw new p("responseOptions must be an object")}}reply(e){if(typeof e==="function"){const wrappedDefaultsCallback=t=>{const s=e(t);if(typeof s!=="object"){throw new p("reply options callback must return an object")}const{statusCode:i,data:A="",responseOptions:o={}}=s;this.validateReplyParameters(i,A,o);return{...this.createMockScopeDispatchData(i,A,o)}};const t=o(this[r],this[n],wrappedDefaultsCallback);return new MockScope(t)}const[t,s="",i={}]=[...arguments];this.validateReplyParameters(t,s,i);const A=this.createMockScopeDispatchData(t,s,i);const a=o(this[r],this[n],A);return new MockScope(a)}replyWithError(e){if(typeof e==="undefined"){throw new p("error must be defined")}const t=o(this[r],this[n],{error:e});return new MockScope(t)}defaultReplyHeaders(e){if(typeof e==="undefined"){throw new p("headers must be defined")}this[a]=e;return this}defaultReplyTrailers(e){if(typeof e==="undefined"){throw new p("trailers must be defined")}this[c]=e;return this}replyContentLength(){this[l]=true;return this}}e.exports.MockInterceptor=MockInterceptor;e.exports.MockScope=MockScope},4004:(e,t,s)=>{"use strict";const{promisify:i}=s(9023);const A=s(5076);const{buildMockDispatch:o}=s(3397);const{kDispatches:r,kMockAgent:n,kClose:a,kOriginalClose:c,kOrigin:l,kOriginalDispatch:u,kConnected:p}=s(1117);const{MockInterceptor:g}=s(1511);const h=s(6443);const{InvalidArgumentError:d}=s(8707);class MockPool extends A{constructor(e,t){super(e,t);if(!t||!t.agent||typeof t.agent.dispatch!=="function"){throw new d("Argument opts.agent must implement Agent")}this[n]=t.agent;this[l]=e;this[r]=[];this[p]=1;this[u]=this.dispatch;this[c]=this.close.bind(this);this.dispatch=o.call(this);this.close=this[a]}get[h.kConnected](){return this[p]}intercept(e){return new g(e,this[r])}async[a](){await i(this[c])();this[p]=0;this[n][h.kClients].delete(this[l])}}e.exports=MockPool},1117:e=>{"use strict";e.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")}},3397:(e,t,s)=>{"use strict";const{MockNotMatchedError:i}=s(2429);const{kDispatches:A,kMockAgent:o,kOriginalDispatch:r,kOrigin:n,kGetNetConnect:a}=s(1117);const{buildURL:c,nop:l}=s(3440);const{STATUS_CODES:u}=s(8611);const{types:{isPromise:p}}=s(9023);function matchValue(e,t){if(typeof e==="string"){return e===t}if(e instanceof RegExp){return e.test(t)}if(typeof e==="function"){return e(t)===true}return false}function lowerCaseEntries(e){return Object.fromEntries(Object.entries(e).map((([e,t])=>[e.toLocaleLowerCase(),t])))}function getHeaderByName(e,t){if(Array.isArray(e)){for(let s=0;s!e)).filter((({path:e})=>matchValue(safeUrl(e),A)));if(o.length===0){throw new i(`Mock dispatch not matched for path '${A}'`)}o=o.filter((({method:e})=>matchValue(e,t.method)));if(o.length===0){throw new i(`Mock dispatch not matched for method '${t.method}'`)}o=o.filter((({body:e})=>typeof e!=="undefined"?matchValue(e,t.body):true));if(o.length===0){throw new i(`Mock dispatch not matched for body '${t.body}'`)}o=o.filter((e=>matchHeaders(e,t.headers)));if(o.length===0){throw new i(`Mock dispatch not matched for headers '${typeof t.headers==="object"?JSON.stringify(t.headers):t.headers}'`)}return o[0]}function addMockDispatch(e,t,s){const i={timesInvoked:0,times:1,persist:false,consumed:false};const A=typeof s==="function"?{callback:s}:{...s};const o={...i,...t,pending:true,data:{error:null,...A}};e.push(o);return o}function deleteMockDispatch(e,t){const s=e.findIndex((e=>{if(!e.consumed){return false}return matchKey(e,t)}));if(s!==-1){e.splice(s,1)}}function buildKey(e){const{path:t,method:s,body:i,headers:A,query:o}=e;return{path:t,method:s,body:i,headers:A,query:o}}function generateKeyValues(e){return Object.entries(e).reduce(((e,[t,s])=>[...e,Buffer.from(`${t}`),Array.isArray(s)?s.map((e=>Buffer.from(`${e}`))):Buffer.from(`${s}`)]),[])}function getStatusText(e){return u[e]||"unknown"}async function getResponse(e){const t=[];for await(const s of e){t.push(s)}return Buffer.concat(t).toString("utf8")}function mockDispatch(e,t){const s=buildKey(e);const i=getMockDispatch(this[A],s);i.timesInvoked++;if(i.data.callback){i.data={...i.data,...i.data.callback(e)}}const{data:{statusCode:o,data:r,headers:n,trailers:a,error:c},delay:u,persist:g}=i;const{timesInvoked:h,times:d}=i;i.consumed=!g&&h>=d;i.pending=h0){setTimeout((()=>{handleReply(this[A])}),u)}else{handleReply(this[A])}function handleReply(i,A=r){const c=Array.isArray(e.headers)?buildHeadersFromArray(e.headers):e.headers;const u=typeof A==="function"?A({...e,headers:c}):A;if(p(u)){u.then((e=>handleReply(i,e)));return}const g=getResponseData(u);const h=generateKeyValues(n);const d=generateKeyValues(a);t.abort=l;t.onHeaders(o,h,resume,getStatusText(o));t.onData(Buffer.from(g));t.onComplete(d);deleteMockDispatch(i,s)}function resume(){}return true}function buildMockDispatch(){const e=this[o];const t=this[n];const s=this[r];return function dispatch(A,o){if(e.isMockActive){try{mockDispatch.call(this,A,o)}catch(r){if(r instanceof i){const n=e[a]();if(n===false){throw new i(`${r.message}: subsequent request to origin ${t} was not allowed (net.connect disabled)`)}if(checkNetConnect(n,t)){s.call(this,A,o)}else{throw new i(`${r.message}: subsequent request to origin ${t} was not allowed (net.connect is not enabled for this origin)`)}}else{throw r}}}else{s.call(this,A,o)}}}function checkNetConnect(e,t){const s=new URL(t);if(e===true){return true}else if(Array.isArray(e)&&e.some((e=>matchValue(e,s.host)))){return true}return false}function buildMockOptions(e){if(e){const{agent:t,...s}=e;return s}}e.exports={getResponseData:getResponseData,getMockDispatch:getMockDispatch,addMockDispatch:addMockDispatch,deleteMockDispatch:deleteMockDispatch,buildKey:buildKey,generateKeyValues:generateKeyValues,matchValue:matchValue,getResponse:getResponse,getStatusText:getStatusText,mockDispatch:mockDispatch,buildMockDispatch:buildMockDispatch,checkNetConnect:checkNetConnect,buildMockOptions:buildMockOptions,getHeaderByName:getHeaderByName}},6142:(e,t,s)=>{"use strict";const{Transform:i}=s(2203);const{Console:A}=s(4236);e.exports=class PendingInterceptorsFormatter{constructor({disableColors:e}={}){this.transform=new i({transform(e,t,s){s(null,e)}});this.logger=new A({stdout:this.transform,inspectOptions:{colors:!e&&!process.env.CI}})}format(e){const t=e.map((({method:e,path:t,data:{statusCode:s},persist:i,times:A,timesInvoked:o,origin:r})=>({Method:e,Origin:r,Path:t,"Status code":s,Persistent:i?"✅":"❌",Invocations:o,Remaining:i?Infinity:A-o})));this.logger.table(t);return this.transform.read().toString()}}},1529:e=>{"use strict";const t={pronoun:"it",is:"is",was:"was",this:"this"};const s={pronoun:"they",is:"are",was:"were",this:"these"};e.exports=class Pluralizer{constructor(e,t){this.singular=e;this.plural=t}pluralize(e){const i=e===1;const A=i?t:s;const o=i?this.singular:this.plural;return{...A,count:e,noun:o}}}},4869:e=>{"use strict";const t=2048;const s=t-1;class FixedCircularBuffer{constructor(){this.bottom=0;this.top=0;this.list=new Array(t);this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&s)===this.bottom}push(e){this.list[this.top]=e;this.top=this.top+1&s}shift(){const e=this.list[this.bottom];if(e===undefined)return null;this.list[this.bottom]=undefined;this.bottom=this.bottom+1&s;return e}}e.exports=class FixedQueue{constructor(){this.head=this.tail=new FixedCircularBuffer}isEmpty(){return this.head.isEmpty()}push(e){if(this.head.isFull()){this.head=this.head.next=new FixedCircularBuffer}this.head.push(e)}shift(){const e=this.tail;const t=e.shift();if(e.isEmpty()&&e.next!==null){this.tail=e.next}return t}}},8640:(e,t,s)=>{"use strict";const i=s(1);const A=s(4869);const{kConnected:o,kSize:r,kRunning:n,kPending:a,kQueued:c,kBusy:l,kFree:u,kUrl:p,kClose:g,kDestroy:h,kDispatch:d}=s(6443);const E=s(4622);const Q=Symbol("clients");const C=Symbol("needDrain");const B=Symbol("queue");const I=Symbol("closed resolve");const b=Symbol("onDrain");const y=Symbol("onConnect");const w=Symbol("onDisconnect");const v=Symbol("onConnectionError");const k=Symbol("get dispatcher");const R=Symbol("add client");const x=Symbol("remove client");const D=Symbol("stats");class PoolBase extends i{constructor(){super();this[B]=new A;this[Q]=[];this[c]=0;const e=this;this[b]=function onDrain(t,s){const i=e[B];let A=false;while(!A){const t=i.shift();if(!t){break}e[c]--;A=!this.dispatch(t.opts,t.handler)}this[C]=A;if(!this[C]&&e[C]){e[C]=false;e.emit("drain",t,[e,...s])}if(e[I]&&i.isEmpty()){Promise.all(e[Q].map((e=>e.close()))).then(e[I])}};this[y]=(t,s)=>{e.emit("connect",t,[e,...s])};this[w]=(t,s,i)=>{e.emit("disconnect",t,[e,...s],i)};this[v]=(t,s,i)=>{e.emit("connectionError",t,[e,...s],i)};this[D]=new E(this)}get[l](){return this[C]}get[o](){return this[Q].filter((e=>e[o])).length}get[u](){return this[Q].filter((e=>e[o]&&!e[C])).length}get[a](){let e=this[c];for(const{[a]:t}of this[Q]){e+=t}return e}get[n](){let e=0;for(const{[n]:t}of this[Q]){e+=t}return e}get[r](){let e=this[c];for(const{[r]:t}of this[Q]){e+=t}return e}get stats(){return this[D]}async[g](){if(this[B].isEmpty()){return Promise.all(this[Q].map((e=>e.close())))}else{return new Promise((e=>{this[I]=e}))}}async[h](e){while(true){const t=this[B].shift();if(!t){break}t.handler.onError(e)}return Promise.all(this[Q].map((t=>t.destroy(e))))}[d](e,t){const s=this[k]();if(!s){this[C]=true;this[B].push({opts:e,handler:t});this[c]++}else if(!s.dispatch(e,t)){s[C]=true;this[C]=!this[k]()}return!this[C]}[R](e){e.on("drain",this[b]).on("connect",this[y]).on("disconnect",this[w]).on("connectionError",this[v]);this[Q].push(e);if(this[C]){process.nextTick((()=>{if(this[C]){this[b](e[p],[this,e])}}))}return this}[x](e){e.close((()=>{const t=this[Q].indexOf(e);if(t!==-1){this[Q].splice(t,1)}}));this[C]=this[Q].some((e=>!e[C]&&e.closed!==true&&e.destroyed!==true))}}e.exports={PoolBase:PoolBase,kClients:Q,kNeedDrain:C,kAddClient:R,kRemoveClient:x,kGetDispatcher:k}},4622:(e,t,s)=>{const{kFree:i,kConnected:A,kPending:o,kQueued:r,kRunning:n,kSize:a}=s(6443);const c=Symbol("pool");class PoolStats{constructor(e){this[c]=e}get connected(){return this[c][A]}get free(){return this[c][i]}get pending(){return this[c][o]}get queued(){return this[c][r]}get running(){return this[c][n]}get size(){return this[c][a]}}e.exports=PoolStats},5076:(e,t,s)=>{"use strict";const{PoolBase:i,kClients:A,kNeedDrain:o,kAddClient:r,kGetDispatcher:n}=s(8640);const a=s(6197);const{InvalidArgumentError:c}=s(8707);const l=s(3440);const{kUrl:u,kInterceptors:p}=s(6443);const g=s(9136);const h=Symbol("options");const d=Symbol("connections");const E=Symbol("factory");function defaultFactory(e,t){return new a(e,t)}class Pool extends i{constructor(e,{connections:t,factory:s=defaultFactory,connect:i,connectTimeout:o,tls:r,maxCachedSessions:n,socketPath:a,autoSelectFamily:Q,autoSelectFamilyAttemptTimeout:C,allowH2:B,...I}={}){super();if(t!=null&&(!Number.isFinite(t)||t<0)){throw new c("invalid connections")}if(typeof s!=="function"){throw new c("factory must be a function.")}if(i!=null&&typeof i!=="function"&&typeof i!=="object"){throw new c("connect must be a function or an object")}if(typeof i!=="function"){i=g({...r,maxCachedSessions:n,allowH2:B,socketPath:a,timeout:o,...l.nodeHasAutoSelectFamily&&Q?{autoSelectFamily:Q,autoSelectFamilyAttemptTimeout:C}:undefined,...i})}this[p]=I.interceptors&&I.interceptors.Pool&&Array.isArray(I.interceptors.Pool)?I.interceptors.Pool:[];this[d]=t||null;this[u]=l.parseOrigin(e);this[h]={...l.deepClone(I),connect:i,allowH2:B};this[h].interceptors=I.interceptors?{...I.interceptors}:undefined;this[E]=s;this.on("connectionError",((e,t,s)=>{for(const e of t){const t=this[A].indexOf(e);if(t!==-1){this[A].splice(t,1)}}}))}[n](){let e=this[A].find((e=>!e[o]));if(e){return e}if(!this[d]||this[A].length{"use strict";const{kProxy:i,kClose:A,kDestroy:o,kInterceptors:r}=s(6443);const{URL:n}=s(7016);const a=s(9965);const c=s(5076);const l=s(1);const{InvalidArgumentError:u,RequestAbortedError:p}=s(8707);const g=s(9136);const h=Symbol("proxy agent");const d=Symbol("proxy client");const E=Symbol("proxy headers");const Q=Symbol("request tls settings");const C=Symbol("proxy tls settings");const B=Symbol("connect endpoint function");function defaultProtocolPort(e){return e==="https:"?443:80}function buildProxyOptions(e){if(typeof e==="string"){e={uri:e}}if(!e||!e.uri){throw new u("Proxy opts.uri is mandatory")}return{uri:e.uri,protocol:e.protocol||"https"}}function defaultFactory(e,t){return new c(e,t)}class ProxyAgent extends l{constructor(e){super(e);this[i]=buildProxyOptions(e);this[h]=new a(e);this[r]=e.interceptors&&e.interceptors.ProxyAgent&&Array.isArray(e.interceptors.ProxyAgent)?e.interceptors.ProxyAgent:[];if(typeof e==="string"){e={uri:e}}if(!e||!e.uri){throw new u("Proxy opts.uri is mandatory")}const{clientFactory:t=defaultFactory}=e;if(typeof t!=="function"){throw new u("Proxy opts.clientFactory must be a function.")}this[Q]=e.requestTls;this[C]=e.proxyTls;this[E]=e.headers||{};const s=new n(e.uri);const{origin:A,port:o,host:c,username:l,password:I}=s;if(e.auth&&e.token){throw new u("opts.auth cannot be used in combination with opts.token")}else if(e.auth){this[E]["proxy-authorization"]=`Basic ${e.auth}`}else if(e.token){this[E]["proxy-authorization"]=e.token}else if(l&&I){this[E]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(l)}:${decodeURIComponent(I)}`).toString("base64")}`}const b=g({...e.proxyTls});this[B]=g({...e.requestTls});this[d]=t(s,{connect:b});this[h]=new a({...e,connect:async(e,t)=>{let s=e.host;if(!e.port){s+=`:${defaultProtocolPort(e.protocol)}`}try{const{socket:i,statusCode:r}=await this[d].connect({origin:A,port:o,path:s,signal:e.signal,headers:{...this[E],host:c}});if(r!==200){i.on("error",(()=>{})).destroy();t(new p(`Proxy response (${r}) !== 200 when HTTP Tunneling`))}if(e.protocol!=="https:"){t(null,i);return}let n;if(this[Q]){n=this[Q].servername}else{n=e.servername}this[B]({...e,servername:n,httpSocket:i},t)}catch(e){t(e)}}})}dispatch(e,t){const{host:s}=new n(e.origin);const i=buildHeaders(e.headers);throwIfProxyAuthIsSent(i);return this[h].dispatch({...e,headers:{...i,host:s}},t)}async[A](){await this[h].close();await this[d].close()}async[o](){await this[h].destroy();await this[d].destroy()}}function buildHeaders(e){if(Array.isArray(e)){const t={};for(let s=0;se.toLowerCase()==="proxy-authorization"));if(t){throw new u("Proxy-Authorization should be sent in ProxyAgent constructor")}}e.exports=ProxyAgent},8804:e=>{"use strict";let t=Date.now();let s;const i=[];function onTimeout(){t=Date.now();let e=i.length;let s=0;while(s0&&t>=A.state){A.state=-1;A.callback(A.opaque)}if(A.state===-1){A.state=-2;if(s!==e-1){i[s]=i.pop()}else{i.pop()}e-=1}else{s+=1}}if(i.length>0){refreshTimeout()}}function refreshTimeout(){if(s&&s.refresh){s.refresh()}else{clearTimeout(s);s=setTimeout(onTimeout,1e3);if(s.unref){s.unref()}}}class Timeout{constructor(e,t,s){this.callback=e;this.delay=t;this.opaque=s;this.state=-2;this.refresh()}refresh(){if(this.state===-2){i.push(this);if(!s||i.length===1){refreshTimeout()}}this.state=0}clear(){this.state=-1}}e.exports={setTimeout(e,t,s){return t<1e3?setTimeout(e,t,s):new Timeout(e,t,s)},clearTimeout(e){if(e instanceof Timeout){e.clear()}else{clearTimeout(e)}}}},8550:(e,t,s)=>{"use strict";const i=s(1637);const{uid:A,states:o}=s(5913);const{kReadyState:r,kSentClose:n,kByteParser:a,kReceivedClose:c}=s(2933);const{fireEvent:l,failWebsocketConnection:u}=s(3574);const{CloseEvent:p}=s(6255);const{makeRequest:g}=s(5194);const{fetching:h}=s(2315);const{Headers:d}=s(6349);const{getGlobalDispatcher:E}=s(2581);const{kHeadersList:Q}=s(6443);const C={};C.open=i.channel("undici:websocket:open");C.close=i.channel("undici:websocket:close");C.socketError=i.channel("undici:websocket:socket_error");let B;try{B=s(6982)}catch{}function establishWebSocketConnection(e,t,s,i,o){const r=e;r.protocol=e.protocol==="ws:"?"http:":"https:";const n=g({urlList:[r],serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(o.headers){const e=new d(o.headers)[Q];n.headersList=e}const a=B.randomBytes(16).toString("base64");n.headersList.append("sec-websocket-key",a);n.headersList.append("sec-websocket-version","13");for(const e of t){n.headersList.append("sec-websocket-protocol",e)}const c="";const l=h({request:n,useParallelQueue:true,dispatcher:o.dispatcher??E(),processResponse(e){if(e.type==="error"||e.status!==101){u(s,"Received network error or non-101 status code.");return}if(t.length!==0&&!e.headersList.get("Sec-WebSocket-Protocol")){u(s,"Server did not respond with sent protocols.");return}if(e.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){u(s,'Server did not set Upgrade header to "websocket".');return}if(e.headersList.get("Connection")?.toLowerCase()!=="upgrade"){u(s,'Server did not set Connection header to "upgrade".');return}const o=e.headersList.get("Sec-WebSocket-Accept");const r=B.createHash("sha1").update(a+A).digest("base64");if(o!==r){u(s,"Incorrect hash received in Sec-WebSocket-Accept header.");return}const l=e.headersList.get("Sec-WebSocket-Extensions");if(l!==null&&l!==c){u(s,"Received different permessage-deflate than the one set.");return}const p=e.headersList.get("Sec-WebSocket-Protocol");if(p!==null&&p!==n.headersList.get("Sec-WebSocket-Protocol")){u(s,"Protocol was not set in the opening handshake.");return}e.socket.on("data",onSocketData);e.socket.on("close",onSocketClose);e.socket.on("error",onSocketError);if(C.open.hasSubscribers){C.open.publish({address:e.socket.address(),protocol:p,extensions:l})}i(e)}});return l}function onSocketData(e){if(!this.ws[a].write(e)){this.pause()}}function onSocketClose(){const{ws:e}=this;const t=e[n]&&e[c];let s=1005;let i="";const A=e[a].closingInfo;if(A){s=A.code??1005;i=A.reason}else if(!e[n]){s=1006}e[r]=o.CLOSED;l("close",e,p,{wasClean:t,code:s,reason:i});if(C.close.hasSubscribers){C.close.publish({websocket:e,code:s,reason:i})}}function onSocketError(e){const{ws:t}=this;t[r]=o.CLOSING;if(C.socketError.hasSubscribers){C.socketError.publish(e)}this.destroy()}e.exports={establishWebSocketConnection:establishWebSocketConnection}},5913:e=>{"use strict";const t="258EAFA5-E914-47DA-95CA-C5AB0DC85B11";const s={enumerable:true,writable:false,configurable:false};const i={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3};const A={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10};const o=2**16-1;const r={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4};const n=Buffer.allocUnsafe(0);e.exports={uid:t,staticPropertyDescriptors:s,states:i,opcodes:A,maxUnsigned16Bit:o,parserStates:r,emptyBuffer:n}},6255:(e,t,s)=>{"use strict";const{webidl:i}=s(4222);const{kEnumerableProperty:A}=s(3440);const{MessagePort:o}=s(8167);class MessageEvent extends Event{#o;constructor(e,t={}){i.argumentLengthCheck(arguments,1,{header:"MessageEvent constructor"});e=i.converters.DOMString(e);t=i.converters.MessageEventInit(t);super(e,t);this.#o=t}get data(){i.brandCheck(this,MessageEvent);return this.#o.data}get origin(){i.brandCheck(this,MessageEvent);return this.#o.origin}get lastEventId(){i.brandCheck(this,MessageEvent);return this.#o.lastEventId}get source(){i.brandCheck(this,MessageEvent);return this.#o.source}get ports(){i.brandCheck(this,MessageEvent);if(!Object.isFrozen(this.#o.ports)){Object.freeze(this.#o.ports)}return this.#o.ports}initMessageEvent(e,t=false,s=false,A=null,o="",r="",n=null,a=[]){i.brandCheck(this,MessageEvent);i.argumentLengthCheck(arguments,1,{header:"MessageEvent.initMessageEvent"});return new MessageEvent(e,{bubbles:t,cancelable:s,data:A,origin:o,lastEventId:r,source:n,ports:a})}}class CloseEvent extends Event{#o;constructor(e,t={}){i.argumentLengthCheck(arguments,1,{header:"CloseEvent constructor"});e=i.converters.DOMString(e);t=i.converters.CloseEventInit(t);super(e,t);this.#o=t}get wasClean(){i.brandCheck(this,CloseEvent);return this.#o.wasClean}get code(){i.brandCheck(this,CloseEvent);return this.#o.code}get reason(){i.brandCheck(this,CloseEvent);return this.#o.reason}}class ErrorEvent extends Event{#o;constructor(e,t){i.argumentLengthCheck(arguments,1,{header:"ErrorEvent constructor"});super(e,t);e=i.converters.DOMString(e);t=i.converters.ErrorEventInit(t??{});this.#o=t}get message(){i.brandCheck(this,ErrorEvent);return this.#o.message}get filename(){i.brandCheck(this,ErrorEvent);return this.#o.filename}get lineno(){i.brandCheck(this,ErrorEvent);return this.#o.lineno}get colno(){i.brandCheck(this,ErrorEvent);return this.#o.colno}get error(){i.brandCheck(this,ErrorEvent);return this.#o.error}}Object.defineProperties(MessageEvent.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:true},data:A,origin:A,lastEventId:A,source:A,ports:A,initMessageEvent:A});Object.defineProperties(CloseEvent.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:true},reason:A,code:A,wasClean:A});Object.defineProperties(ErrorEvent.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:true},message:A,filename:A,lineno:A,colno:A,error:A});i.converters.MessagePort=i.interfaceConverter(o);i.converters["sequence"]=i.sequenceConverter(i.converters.MessagePort);const r=[{key:"bubbles",converter:i.converters.boolean,defaultValue:false},{key:"cancelable",converter:i.converters.boolean,defaultValue:false},{key:"composed",converter:i.converters.boolean,defaultValue:false}];i.converters.MessageEventInit=i.dictionaryConverter([...r,{key:"data",converter:i.converters.any,defaultValue:null},{key:"origin",converter:i.converters.USVString,defaultValue:""},{key:"lastEventId",converter:i.converters.DOMString,defaultValue:""},{key:"source",converter:i.nullableConverter(i.converters.MessagePort),defaultValue:null},{key:"ports",converter:i.converters["sequence"],get defaultValue(){return[]}}]);i.converters.CloseEventInit=i.dictionaryConverter([...r,{key:"wasClean",converter:i.converters.boolean,defaultValue:false},{key:"code",converter:i.converters["unsigned short"],defaultValue:0},{key:"reason",converter:i.converters.USVString,defaultValue:""}]);i.converters.ErrorEventInit=i.dictionaryConverter([...r,{key:"message",converter:i.converters.DOMString,defaultValue:""},{key:"filename",converter:i.converters.USVString,defaultValue:""},{key:"lineno",converter:i.converters["unsigned long"],defaultValue:0},{key:"colno",converter:i.converters["unsigned long"],defaultValue:0},{key:"error",converter:i.converters.any}]);e.exports={MessageEvent:MessageEvent,CloseEvent:CloseEvent,ErrorEvent:ErrorEvent}},1237:(e,t,s)=>{"use strict";const{maxUnsigned16Bit:i}=s(5913);let A;try{A=s(6982)}catch{}class WebsocketFrameSend{constructor(e){this.frameData=e;this.maskKey=A.randomBytes(4)}createFrame(e){const t=this.frameData?.byteLength??0;let s=t;let A=6;if(t>i){A+=8;s=127}else if(t>125){A+=2;s=126}const o=Buffer.allocUnsafe(t+A);o[0]=o[1]=0;o[0]|=128;o[0]=(o[0]&240)+e;
-/*! ws. MIT License. Einar Otto Stangvik */o[A-4]=this.maskKey[0];o[A-3]=this.maskKey[1];o[A-2]=this.maskKey[2];o[A-1]=this.maskKey[3];o[1]=s;if(s===126){o.writeUInt16BE(t,2)}else if(s===127){o[2]=o[3]=0;o.writeUIntBE(t,4,6)}o[1]|=128;for(let e=0;e{"use strict";const{Writable:i}=s(2203);const A=s(1637);const{parserStates:o,opcodes:r,states:n,emptyBuffer:a}=s(5913);const{kReadyState:c,kSentClose:l,kResponse:u,kReceivedClose:p}=s(2933);const{isValidStatusCode:g,failWebsocketConnection:h,websocketMessageReceived:d}=s(3574);const{WebsocketFrameSend:E}=s(1237);const Q={};Q.ping=A.channel("undici:websocket:ping");Q.pong=A.channel("undici:websocket:pong");class ByteParser extends i{#r=[];#n=0;#a=o.INFO;#c={};#l=[];constructor(e){super();this.ws=e}_write(e,t,s){this.#r.push(e);this.#n+=e.length;this.run(s)}run(e){while(true){if(this.#a===o.INFO){if(this.#n<2){return e()}const t=this.consume(2);this.#c.fin=(t[0]&128)!==0;this.#c.opcode=t[0]&15;this.#c.originalOpcode??=this.#c.opcode;this.#c.fragmented=!this.#c.fin&&this.#c.opcode!==r.CONTINUATION;if(this.#c.fragmented&&this.#c.opcode!==r.BINARY&&this.#c.opcode!==r.TEXT){h(this.ws,"Invalid frame type was fragmented.");return}const s=t[1]&127;if(s<=125){this.#c.payloadLength=s;this.#a=o.READ_DATA}else if(s===126){this.#a=o.PAYLOADLENGTH_16}else if(s===127){this.#a=o.PAYLOADLENGTH_64}if(this.#c.fragmented&&s>125){h(this.ws,"Fragmented frame exceeded 125 bytes.");return}else if((this.#c.opcode===r.PING||this.#c.opcode===r.PONG||this.#c.opcode===r.CLOSE)&&s>125){h(this.ws,"Payload length for control frame exceeded 125 bytes.");return}else if(this.#c.opcode===r.CLOSE){if(s===1){h(this.ws,"Received close frame with a 1-byte body.");return}const e=this.consume(s);this.#c.closeInfo=this.parseCloseBody(false,e);if(!this.ws[l]){const e=Buffer.allocUnsafe(2);e.writeUInt16BE(this.#c.closeInfo.code,0);const t=new E(e);this.ws[u].socket.write(t.createFrame(r.CLOSE),(e=>{if(!e){this.ws[l]=true}}))}this.ws[c]=n.CLOSING;this.ws[p]=true;this.end();return}else if(this.#c.opcode===r.PING){const t=this.consume(s);if(!this.ws[p]){const e=new E(t);this.ws[u].socket.write(e.createFrame(r.PONG));if(Q.ping.hasSubscribers){Q.ping.publish({payload:t})}}this.#a=o.INFO;if(this.#n>0){continue}else{e();return}}else if(this.#c.opcode===r.PONG){const t=this.consume(s);if(Q.pong.hasSubscribers){Q.pong.publish({payload:t})}if(this.#n>0){continue}else{e();return}}}else if(this.#a===o.PAYLOADLENGTH_16){if(this.#n<2){return e()}const t=this.consume(2);this.#c.payloadLength=t.readUInt16BE(0);this.#a=o.READ_DATA}else if(this.#a===o.PAYLOADLENGTH_64){if(this.#n<8){return e()}const t=this.consume(8);const s=t.readUInt32BE(0);if(s>2**31-1){h(this.ws,"Received payload length > 2^31 bytes.");return}const i=t.readUInt32BE(4);this.#c.payloadLength=(s<<8)+i;this.#a=o.READ_DATA}else if(this.#a===o.READ_DATA){if(this.#n=this.#c.payloadLength){const e=this.consume(this.#c.payloadLength);this.#l.push(e);if(!this.#c.fragmented||this.#c.fin&&this.#c.opcode===r.CONTINUATION){const e=Buffer.concat(this.#l);d(this.ws,this.#c.originalOpcode,e);this.#c={};this.#l.length=0}this.#a=o.INFO}}if(this.#n>0){continue}else{e();break}}}consume(e){if(e>this.#n){return null}else if(e===0){return a}if(this.#r[0].length===e){this.#n-=this.#r[0].length;return this.#r.shift()}const t=Buffer.allocUnsafe(e);let s=0;while(s!==e){const i=this.#r[0];const{length:A}=i;if(A+s===e){t.set(this.#r.shift(),s);break}else if(A+s>e){t.set(i.subarray(0,e-s),s);this.#r[0]=i.subarray(e-s);break}else{t.set(this.#r.shift(),s);s+=i.length}}this.#n-=e;return t}parseCloseBody(e,t){let s;if(t.length>=2){s=t.readUInt16BE(0)}if(e){if(!g(s)){return null}return{code:s}}let i=t.subarray(2);if(i[0]===239&&i[1]===187&&i[2]===191){i=i.subarray(3)}if(s!==undefined&&!g(s)){return null}try{i=new TextDecoder("utf-8",{fatal:true}).decode(i)}catch{return null}return{code:s,reason:i}}get closingInfo(){return this.#c.closeInfo}}e.exports={ByteParser:ByteParser}},2933:e=>{"use strict";e.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}},3574:(e,t,s)=>{"use strict";const{kReadyState:i,kController:A,kResponse:o,kBinaryType:r,kWebSocketURL:n}=s(2933);const{states:a,opcodes:c}=s(5913);const{MessageEvent:l,ErrorEvent:u}=s(6255);function isEstablished(e){return e[i]===a.OPEN}function isClosing(e){return e[i]===a.CLOSING}function isClosed(e){return e[i]===a.CLOSED}function fireEvent(e,t,s=Event,i){const A=new s(e,i);t.dispatchEvent(A)}function websocketMessageReceived(e,t,s){if(e[i]!==a.OPEN){return}let A;if(t===c.TEXT){try{A=new TextDecoder("utf-8",{fatal:true}).decode(s)}catch{failWebsocketConnection(e,"Received invalid UTF-8 in text frame.");return}}else if(t===c.BINARY){if(e[r]==="blob"){A=new Blob([s])}else{A=new Uint8Array(s).buffer}}fireEvent("message",e,l,{origin:e[n].origin,data:A})}function isValidSubprotocol(e){if(e.length===0){return false}for(const t of e){const e=t.charCodeAt(0);if(e<33||e>126||t==="("||t===")"||t==="<"||t===">"||t==="@"||t===","||t===";"||t===":"||t==="\\"||t==='"'||t==="/"||t==="["||t==="]"||t==="?"||t==="="||t==="{"||t==="}"||e===32||e===9){return false}}return true}function isValidStatusCode(e){if(e>=1e3&&e<1015){return e!==1004&&e!==1005&&e!==1006}return e>=3e3&&e<=4999}function failWebsocketConnection(e,t){const{[A]:s,[o]:i}=e;s.abort();if(i?.socket&&!i.socket.destroyed){i.socket.destroy()}if(t){fireEvent("error",e,u,{error:new Error(t)})}}e.exports={isEstablished:isEstablished,isClosing:isClosing,isClosed:isClosed,fireEvent:fireEvent,isValidSubprotocol:isValidSubprotocol,isValidStatusCode:isValidStatusCode,failWebsocketConnection:failWebsocketConnection,websocketMessageReceived:websocketMessageReceived}},5171:(e,t,s)=>{"use strict";const{webidl:i}=s(4222);const{DOMException:A}=s(7326);const{URLSerializer:o}=s(4322);const{getGlobalOrigin:r}=s(5628);const{staticPropertyDescriptors:n,states:a,opcodes:c,emptyBuffer:l}=s(5913);const{kWebSocketURL:u,kReadyState:p,kController:g,kBinaryType:h,kResponse:d,kSentClose:E,kByteParser:Q}=s(2933);const{isEstablished:C,isClosing:B,isValidSubprotocol:I,failWebsocketConnection:b,fireEvent:y}=s(3574);const{establishWebSocketConnection:w}=s(8550);const{WebsocketFrameSend:v}=s(1237);const{ByteParser:k}=s(3171);const{kEnumerableProperty:R,isBlobLike:x}=s(3440);const{getGlobalDispatcher:D}=s(2581);const{types:S}=s(9023);let F=false;class WebSocket extends EventTarget{#u={open:null,error:null,close:null,message:null};#p=0;#g="";#h="";constructor(e,t=[]){super();i.argumentLengthCheck(arguments,1,{header:"WebSocket constructor"});if(!F){F=true;process.emitWarning("WebSockets are experimental, expect them to change at any time.",{code:"UNDICI-WS"})}const s=i.converters["DOMString or sequence or WebSocketInit"](t);e=i.converters.USVString(e);t=s.protocols;const o=r();let n;try{n=new URL(e,o)}catch(e){throw new A(e,"SyntaxError")}if(n.protocol==="http:"){n.protocol="ws:"}else if(n.protocol==="https:"){n.protocol="wss:"}if(n.protocol!=="ws:"&&n.protocol!=="wss:"){throw new A(`Expected a ws: or wss: protocol, got ${n.protocol}`,"SyntaxError")}if(n.hash||n.href.endsWith("#")){throw new A("Got fragment","SyntaxError")}if(typeof t==="string"){t=[t]}if(t.length!==new Set(t.map((e=>e.toLowerCase()))).size){throw new A("Invalid Sec-WebSocket-Protocol value","SyntaxError")}if(t.length>0&&!t.every((e=>I(e)))){throw new A("Invalid Sec-WebSocket-Protocol value","SyntaxError")}this[u]=new URL(n.href);this[g]=w(n,t,this,(e=>this.#d(e)),s);this[p]=WebSocket.CONNECTING;this[h]="blob"}close(e=undefined,t=undefined){i.brandCheck(this,WebSocket);if(e!==undefined){e=i.converters["unsigned short"](e,{clamp:true})}if(t!==undefined){t=i.converters.USVString(t)}if(e!==undefined){if(e!==1e3&&(e<3e3||e>4999)){throw new A("invalid code","InvalidAccessError")}}let s=0;if(t!==undefined){s=Buffer.byteLength(t);if(s>123){throw new A(`Reason must be less than 123 bytes; received ${s}`,"SyntaxError")}}if(this[p]===WebSocket.CLOSING||this[p]===WebSocket.CLOSED){}else if(!C(this)){b(this,"Connection was closed before it was established.");this[p]=WebSocket.CLOSING}else if(!B(this)){const i=new v;if(e!==undefined&&t===undefined){i.frameData=Buffer.allocUnsafe(2);i.frameData.writeUInt16BE(e,0)}else if(e!==undefined&&t!==undefined){i.frameData=Buffer.allocUnsafe(2+s);i.frameData.writeUInt16BE(e,0);i.frameData.write(t,2,"utf-8")}else{i.frameData=l}const A=this[d].socket;A.write(i.createFrame(c.CLOSE),(e=>{if(!e){this[E]=true}}));this[p]=a.CLOSING}else{this[p]=WebSocket.CLOSING}}send(e){i.brandCheck(this,WebSocket);i.argumentLengthCheck(arguments,1,{header:"WebSocket.send"});e=i.converters.WebSocketSendData(e);if(this[p]===WebSocket.CONNECTING){throw new A("Sent before connected.","InvalidStateError")}if(!C(this)||B(this)){return}const t=this[d].socket;if(typeof e==="string"){const s=Buffer.from(e);const i=new v(s);const A=i.createFrame(c.TEXT);this.#p+=s.byteLength;t.write(A,(()=>{this.#p-=s.byteLength}))}else if(S.isArrayBuffer(e)){const s=Buffer.from(e);const i=new v(s);const A=i.createFrame(c.BINARY);this.#p+=s.byteLength;t.write(A,(()=>{this.#p-=s.byteLength}))}else if(ArrayBuffer.isView(e)){const s=Buffer.from(e,e.byteOffset,e.byteLength);const i=new v(s);const A=i.createFrame(c.BINARY);this.#p+=s.byteLength;t.write(A,(()=>{this.#p-=s.byteLength}))}else if(x(e)){const s=new v;e.arrayBuffer().then((e=>{const i=Buffer.from(e);s.frameData=i;const A=s.createFrame(c.BINARY);this.#p+=i.byteLength;t.write(A,(()=>{this.#p-=i.byteLength}))}))}}get readyState(){i.brandCheck(this,WebSocket);return this[p]}get bufferedAmount(){i.brandCheck(this,WebSocket);return this.#p}get url(){i.brandCheck(this,WebSocket);return o(this[u])}get extensions(){i.brandCheck(this,WebSocket);return this.#h}get protocol(){i.brandCheck(this,WebSocket);return this.#g}get onopen(){i.brandCheck(this,WebSocket);return this.#u.open}set onopen(e){i.brandCheck(this,WebSocket);if(this.#u.open){this.removeEventListener("open",this.#u.open)}if(typeof e==="function"){this.#u.open=e;this.addEventListener("open",e)}else{this.#u.open=null}}get onerror(){i.brandCheck(this,WebSocket);return this.#u.error}set onerror(e){i.brandCheck(this,WebSocket);if(this.#u.error){this.removeEventListener("error",this.#u.error)}if(typeof e==="function"){this.#u.error=e;this.addEventListener("error",e)}else{this.#u.error=null}}get onclose(){i.brandCheck(this,WebSocket);return this.#u.close}set onclose(e){i.brandCheck(this,WebSocket);if(this.#u.close){this.removeEventListener("close",this.#u.close)}if(typeof e==="function"){this.#u.close=e;this.addEventListener("close",e)}else{this.#u.close=null}}get onmessage(){i.brandCheck(this,WebSocket);return this.#u.message}set onmessage(e){i.brandCheck(this,WebSocket);if(this.#u.message){this.removeEventListener("message",this.#u.message)}if(typeof e==="function"){this.#u.message=e;this.addEventListener("message",e)}else{this.#u.message=null}}get binaryType(){i.brandCheck(this,WebSocket);return this[h]}set binaryType(e){i.brandCheck(this,WebSocket);if(e!=="blob"&&e!=="arraybuffer"){this[h]="blob"}else{this[h]=e}}#d(e){this[d]=e;const t=new k(this);t.on("drain",(function onParserDrain(){this.ws[d].socket.resume()}));e.socket.ws=this;this[Q]=t;this[p]=a.OPEN;const s=e.headersList.get("sec-websocket-extensions");if(s!==null){this.#h=s}const i=e.headersList.get("sec-websocket-protocol");if(i!==null){this.#g=i}y("open",this)}}WebSocket.CONNECTING=WebSocket.prototype.CONNECTING=a.CONNECTING;WebSocket.OPEN=WebSocket.prototype.OPEN=a.OPEN;WebSocket.CLOSING=WebSocket.prototype.CLOSING=a.CLOSING;WebSocket.CLOSED=WebSocket.prototype.CLOSED=a.CLOSED;Object.defineProperties(WebSocket.prototype,{CONNECTING:n,OPEN:n,CLOSING:n,CLOSED:n,url:R,readyState:R,bufferedAmount:R,onopen:R,onerror:R,onclose:R,close:R,onmessage:R,binaryType:R,send:R,extensions:R,protocol:R,[Symbol.toStringTag]:{value:"WebSocket",writable:false,enumerable:false,configurable:true}});Object.defineProperties(WebSocket,{CONNECTING:n,OPEN:n,CLOSING:n,CLOSED:n});i.converters["sequence"]=i.sequenceConverter(i.converters.DOMString);i.converters["DOMString or sequence"]=function(e){if(i.util.Type(e)==="Object"&&Symbol.iterator in e){return i.converters["sequence"](e)}return i.converters.DOMString(e)};i.converters.WebSocketInit=i.dictionaryConverter([{key:"protocols",converter:i.converters["DOMString or sequence"],get defaultValue(){return[]}},{key:"dispatcher",converter:e=>e,get defaultValue(){return D()}},{key:"headers",converter:i.nullableConverter(i.converters.HeadersInit)}]);i.converters["DOMString or sequence or WebSocketInit"]=function(e){if(i.util.Type(e)==="Object"&&!(Symbol.iterator in e)){return i.converters.WebSocketInit(e)}return{protocols:i.converters["DOMString or sequence"](e)}};i.converters.WebSocketSendData=function(e){if(i.util.Type(e)==="Object"){if(x(e)){return i.converters.Blob(e,{strict:false})}if(ArrayBuffer.isView(e)||S.isAnyArrayBuffer(e)){return i.converters.BufferSource(e)}}return i.converters.USVString(e)};e.exports={WebSocket:WebSocket}},3843:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});function getUserAgent(){if(typeof navigator==="object"&&"userAgent"in navigator){return navigator.userAgent}if(typeof process==="object"&&process.version!==undefined){return`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`}return""}t.getUserAgent=getUserAgent},8264:e=>{e.exports=wrappy;function wrappy(e,t){if(e&&t)return wrappy(e)(t);if(typeof e!=="function")throw new TypeError("need wrapper function");Object.keys(e).forEach((function(t){wrapper[t]=e[t]}));return wrapper;function wrapper(){var t=new Array(arguments.length);for(var s=0;s{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.release=t.upload=t.mimeOrDefault=t.asset=t.GitHubReleaser=void 0;t.findTagFromReleases=findTagFromReleases;const i=s(9896);const A=s(1943);const o=s(4096);const r=s(6928);const n=s(4527);class GitHubReleaser{github;constructor(e){this.github=e}getReleaseByTag(e){return this.github.rest.repos.getReleaseByTag(e)}createRelease(e){if(typeof e.make_latest==="string"&&!["true","false","legacy"].includes(e.make_latest)){e.make_latest=undefined}return this.github.rest.repos.createRelease(e)}updateRelease(e){if(typeof e.make_latest==="string"&&!["true","false","legacy"].includes(e.make_latest)){e.make_latest=undefined}return this.github.rest.repos.updateRelease(e)}allReleases(e){const t={per_page:100,...e};return this.github.paginate.iterator(this.github.rest.repos.listReleases.endpoint.merge(t))}}t.GitHubReleaser=GitHubReleaser;const asset=e=>({name:(0,r.basename)(e),mime:(0,t.mimeOrDefault)(e),size:(0,i.statSync)(e).size});t.asset=asset;const mimeOrDefault=e=>(0,o.lookup)(e)||"application/octet-stream";t.mimeOrDefault=mimeOrDefault;const upload=async(e,s,i,o,r)=>{const[a,c]=e.github_repository.split("/");const{name:l,mime:u,size:p}=(0,t.asset)(o);const g=r.find((({name:e})=>e==(0,n.alignAssetName)(l)));if(g){if(e.input_overwrite_files===false){console.log(`Asset ${l} already exists and overwrite_files is false...`);return null}else{console.log(`♻️ Deleting previously uploaded asset ${l}...`);await s.rest.repos.deleteReleaseAsset({asset_id:g.id||1,owner:a,repo:c})}}console.log(`⬆️ Uploading ${l}...`);const h=new URL(i);h.searchParams.append("name",l);const d=await(0,A.open)(o);try{const t=await s.request({method:"POST",url:h.toString(),headers:{"content-length":`${p}`,"content-type":u,authorization:`token ${e.github_token}`},data:d.readableWebStream({type:"bytes"})});const i=t.data;if(t.status!==201){throw new Error(`Failed to upload release asset ${l}. received status code ${t.status}\n${i.message}\n${JSON.stringify(i.errors)}`)}console.log(`✅ Uploaded ${l}`);return i}finally{await d.close()}};t.upload=upload;const release=async(e,t,s=3)=>{if(s<=0){console.log(`❌ Too many retries. Aborting...`);throw new Error("Too many retries.")}const[i,A]=e.github_repository.split("/");const o=e.input_tag_name||((0,n.isTag)(e.github_ref)?e.github_ref.replace("refs/tags/",""):"");const r=e.input_discussion_category_name;const a=e.input_generate_release_notes;try{const c=await findTagFromReleases(t,i,A,o);if(c===undefined){return await createRelease(o,e,t,i,A,r,a,s)}let l=c;console.log(`Found release ${l.name} (with id=${l.id})`);const u=l.id;let p;if(e.input_target_commitish&&e.input_target_commitish!==l.target_commitish){console.log(`Updating commit from "${l.target_commitish}" to "${e.input_target_commitish}"`);p=e.input_target_commitish}else{p=l.target_commitish}const g=o;const h=e.input_name||l.name||o;const d=(0,n.releaseBody)(e)||"";const E=l.body||"";let Q;if(e.input_append_body&&d&&E){Q=E+"\n"+d}else{Q=d||E}const C=e.input_draft!==undefined?e.input_draft:l.draft;const B=e.input_prerelease!==undefined?e.input_prerelease:l.prerelease;const I=e.input_make_latest;const b=await t.updateRelease({owner:i,repo:A,release_id:u,tag_name:g,target_commitish:p,name:h,body:Q,draft:C,prerelease:B,discussion_category_name:r,generate_release_notes:a,make_latest:I});return b.data}catch(n){if(n.status!==404){console.log(`⚠️ Unexpected error fetching GitHub release for tag ${e.github_ref}: ${n}`);throw n}return await createRelease(o,e,t,i,A,r,a,s)}};t.release=release;async function findTagFromReleases(e,t,s,i){for await(const{data:A}of e.allReleases({owner:t,repo:s})){const e=A.find((e=>e.tag_name===i));if(e){return e}}return undefined}async function createRelease(e,s,i,A,o,r,a,c){const l=e;const u=s.input_name||e;const p=(0,n.releaseBody)(s);const g=s.input_draft;const h=s.input_prerelease;const d=s.input_target_commitish;const E=s.input_make_latest;let Q="";if(d){Q=` using commit "${d}"`}console.log(`👩🏭 Creating new GitHub release for tag ${l}${Q}...`);try{let e=await i.createRelease({owner:A,repo:o,tag_name:l,name:u,body:p,draft:g,prerelease:h,target_commitish:d,discussion_category_name:r,generate_release_notes:a,make_latest:E});return e.data}catch(e){console.log(`⚠️ GitHub release failed with status: ${e.status}`);console.log(`${JSON.stringify(e.response.data)}`);switch(e.status){case 403:console.log("Skip retry — your GitHub token/PAT does not have the required permission to create a release");throw e;case 404:console.log("Skip retry - discussion category mismatch");throw e;case 422:console.log("Skip retry - validation failed");throw e}console.log(`retrying... (${c-1} retries remaining)`);return(0,t.release)(s,i,c-1)}}},4527:function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){if(i===undefined)i=s;var A=Object.getOwnPropertyDescriptor(t,s);if(!A||("get"in A?!t.__esModule:A.writable||A.configurable)){A={enumerable:true,get:function(){return t[s]}}}Object.defineProperty(e,i,A)}:function(e,t,s,i){if(i===undefined)i=s;e[i]=t[s]});var A=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(){var ownKeys=function(e){ownKeys=Object.getOwnPropertyNames||function(e){var t=[];for(var s in e)if(Object.prototype.hasOwnProperty.call(e,s))t[t.length]=s;return t};return ownKeys(e)};return function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var s=ownKeys(e),o=0;o{const t=e.indexOf("{");if(t>-1){return e.substring(0,t)}return e};t.uploadUrl=uploadUrl;const releaseBody=e=>e.input_body_path&&(0,n.readFileSync)(e.input_body_path).toString("utf8")||e.input_body;t.releaseBody=releaseBody;const parseInputFiles=e=>e.split(/\r?\n/).reduce(((e,t)=>e.concat(t.split(",")).filter((e=>e)).map((e=>e.trim()))),[]);t.parseInputFiles=parseInputFiles;const parseConfig=e=>({github_token:e.GITHUB_TOKEN||e.INPUT_TOKEN||"",github_ref:e.GITHUB_REF||"",github_repository:e.INPUT_REPOSITORY||e.GITHUB_REPOSITORY||"",input_name:e.INPUT_NAME,input_tag_name:e.INPUT_TAG_NAME?.trim(),input_body:e.INPUT_BODY,input_body_path:e.INPUT_BODY_PATH,input_files:(0,t.parseInputFiles)(e.INPUT_FILES||""),input_overwrite_files:e.INPUT_OVERWRITE_FILES?e.INPUT_OVERWRITE_FILES=="true":undefined,input_draft:e.INPUT_DRAFT?e.INPUT_DRAFT==="true":undefined,input_preserve_order:e.INPUT_PRESERVE_ORDER?e.INPUT_PRESERVE_ORDER=="true":undefined,input_prerelease:e.INPUT_PRERELEASE?e.INPUT_PRERELEASE=="true":undefined,input_fail_on_unmatched_files:e.INPUT_FAIL_ON_UNMATCHED_FILES=="true",input_target_commitish:e.INPUT_TARGET_COMMITISH||undefined,input_discussion_category_name:e.INPUT_DISCUSSION_CATEGORY_NAME||undefined,input_generate_release_notes:e.INPUT_GENERATE_RELEASE_NOTES=="true",input_append_body:e.INPUT_APPEND_BODY=="true",input_make_latest:parseMakeLatest(e.INPUT_MAKE_LATEST)});t.parseConfig=parseConfig;const parseMakeLatest=e=>{if(e==="true"||e==="false"||e==="legacy"){return e}return undefined};const paths=e=>e.reduce(((e,t)=>e.concat(r.sync(t).filter((e=>(0,n.statSync)(e).isFile())))),[]);t.paths=paths;const unmatchedPatterns=e=>e.reduce(((e,t)=>e.concat(r.sync(t).filter((e=>(0,n.statSync)(e).isFile())).length==0?[t]:[])),[]);t.unmatchedPatterns=unmatchedPatterns;const isTag=e=>e.startsWith("refs/tags/");t.isTag=isTag;const alignAssetName=e=>e.replace(/ /g,".");t.alignAssetName=alignAssetName},2613:e=>{"use strict";e.exports=require("assert")},290:e=>{"use strict";e.exports=require("async_hooks")},181:e=>{"use strict";e.exports=require("buffer")},5317:e=>{"use strict";e.exports=require("child_process")},4236:e=>{"use strict";e.exports=require("console")},6982:e=>{"use strict";e.exports=require("crypto")},1637:e=>{"use strict";e.exports=require("diagnostics_channel")},4434:e=>{"use strict";e.exports=require("events")},9896:e=>{"use strict";e.exports=require("fs")},1943:e=>{"use strict";e.exports=require("fs/promises")},8611:e=>{"use strict";e.exports=require("http")},5675:e=>{"use strict";e.exports=require("http2")},5692:e=>{"use strict";e.exports=require("https")},9278:e=>{"use strict";e.exports=require("net")},7598:e=>{"use strict";e.exports=require("node:crypto")},8474:e=>{"use strict";e.exports=require("node:events")},3024:e=>{"use strict";e.exports=require("node:fs")},1455:e=>{"use strict";e.exports=require("node:fs/promises")},6760:e=>{"use strict";e.exports=require("node:path")},7075:e=>{"use strict";e.exports=require("node:stream")},6193:e=>{"use strict";e.exports=require("node:string_decoder")},3136:e=>{"use strict";e.exports=require("node:url")},7975:e=>{"use strict";e.exports=require("node:util")},857:e=>{"use strict";e.exports=require("os")},6928:e=>{"use strict";e.exports=require("path")},2987:e=>{"use strict";e.exports=require("perf_hooks")},932:e=>{"use strict";e.exports=require("process")},3480:e=>{"use strict";e.exports=require("querystring")},2203:e=>{"use strict";e.exports=require("stream")},3774:e=>{"use strict";e.exports=require("stream/web")},3193:e=>{"use strict";e.exports=require("string_decoder")},3557:e=>{"use strict";e.exports=require("timers")},4756:e=>{"use strict";e.exports=require("tls")},7016:e=>{"use strict";e.exports=require("url")},9023:e=>{"use strict";e.exports=require("util")},8253:e=>{"use strict";e.exports=require("util/types")},8167:e=>{"use strict";e.exports=require("worker_threads")},3106:e=>{"use strict";e.exports=require("zlib")},7182:(e,t,s)=>{"use strict";const i=s(7075).Writable;const A=s(7975).inherits;const o=s(4136);const r=s(612);const n=s(2271);const a=45;const c=Buffer.from("-");const l=Buffer.from("\r\n");const EMPTY_FN=function(){};function Dicer(e){if(!(this instanceof Dicer)){return new Dicer(e)}i.call(this,e);if(!e||!e.headerFirst&&typeof e.boundary!=="string"){throw new TypeError("Boundary required")}if(typeof e.boundary==="string"){this.setBoundary(e.boundary)}else{this._bparser=undefined}this._headerFirst=e.headerFirst;this._dashes=0;this._parts=0;this._finished=false;this._realFinish=false;this._isPreamble=true;this._justMatched=false;this._firstWrite=true;this._inHeader=true;this._part=undefined;this._cb=undefined;this._ignoreData=false;this._partOpts={highWaterMark:e.partHwm};this._pause=false;const t=this;this._hparser=new n(e);this._hparser.on("header",(function(e){t._inHeader=false;t._part.emit("header",e)}))}A(Dicer,i);Dicer.prototype.emit=function(e){if(e==="finish"&&!this._realFinish){if(!this._finished){const e=this;process.nextTick((function(){e.emit("error",new Error("Unexpected end of multipart data"));if(e._part&&!e._ignoreData){const t=e._isPreamble?"Preamble":"Part";e._part.emit("error",new Error(t+" terminated early due to unexpected end of multipart data"));e._part.push(null);process.nextTick((function(){e._realFinish=true;e.emit("finish");e._realFinish=false}));return}e._realFinish=true;e.emit("finish");e._realFinish=false}))}}else{i.prototype.emit.apply(this,arguments)}};Dicer.prototype._write=function(e,t,s){if(!this._hparser&&!this._bparser){return s()}if(this._headerFirst&&this._isPreamble){if(!this._part){this._part=new r(this._partOpts);if(this.listenerCount("preamble")!==0){this.emit("preamble",this._part)}else{this._ignore()}}const t=this._hparser.push(e);if(!this._inHeader&&t!==undefined&&t{"use strict";const i=s(8474).EventEmitter;const A=s(7975).inherits;const o=s(2393);const r=s(4136);const n=Buffer.from("\r\n\r\n");const a=/\r\n/g;const c=/^([^:]+):[ \t]?([\x00-\xFF]+)?$/;function HeaderParser(e){i.call(this);e=e||{};const t=this;this.nread=0;this.maxed=false;this.npairs=0;this.maxHeaderPairs=o(e,"maxHeaderPairs",2e3);this.maxHeaderSize=o(e,"maxHeaderSize",80*1024);this.buffer="";this.header={};this.finished=false;this.ss=new r(n);this.ss.on("info",(function(e,s,i,A){if(s&&!t.maxed){if(t.nread+A-i>=t.maxHeaderSize){A=t.maxHeaderSize-t.nread+i;t.nread=t.maxHeaderSize;t.maxed=true}else{t.nread+=A-i}t.buffer+=s.toString("binary",i,A)}if(e){t._finish()}}))}A(HeaderParser,i);HeaderParser.prototype.push=function(e){const t=this.ss.push(e);if(this.finished){return t}};HeaderParser.prototype.reset=function(){this.finished=false;this.buffer="";this.header={};this.ss.reset()};HeaderParser.prototype._finish=function(){if(this.buffer){this._parseHeader()}this.ss.matches=this.ss.maxMatches;const e=this.header;this.header={};this.buffer="";this.finished=true;this.nread=this.npairs=0;this.maxed=false;this.emit("header",e)};HeaderParser.prototype._parseHeader=function(){if(this.npairs===this.maxHeaderPairs){return}const e=this.buffer.split(a);const t=e.length;let s,i;for(var A=0;A{"use strict";const i=s(7975).inherits;const A=s(7075).Readable;function PartStream(e){A.call(this,e)}i(PartStream,A);PartStream.prototype._read=function(e){};e.exports=PartStream},4136:(e,t,s)=>{"use strict";const i=s(8474).EventEmitter;const A=s(7975).inherits;function SBMH(e){if(typeof e==="string"){e=Buffer.from(e)}if(!Buffer.isBuffer(e)){throw new TypeError("The needle has to be a String or a Buffer.")}const t=e.length;if(t===0){throw new Error("The needle cannot be an empty String/Buffer.")}if(t>256){throw new Error("The needle cannot have a length bigger than 256.")}this.maxMatches=Infinity;this.matches=0;this._occ=new Array(256).fill(t);this._lookbehind_size=0;this._needle=e;this._bufpos=0;this._lookbehind=Buffer.alloc(t);for(var s=0;s=0){this.emit("info",false,this._lookbehind,0,this._lookbehind_size);this._lookbehind_size=0}else{const s=this._lookbehind_size+o;if(s>0){this.emit("info",false,this._lookbehind,0,s)}this._lookbehind.copy(this._lookbehind,0,s,this._lookbehind_size-s);this._lookbehind_size-=s;e.copy(this._lookbehind,this._lookbehind_size);this._lookbehind_size+=t;this._bufpos=t;return t}}o+=(o>=0)*this._bufpos;if(e.indexOf(s,o)!==-1){o=e.indexOf(s,o);++this.matches;if(o>0){this.emit("info",true,e,this._bufpos,o)}else{this.emit("info",true)}return this._bufpos=o+i}else{o=t-i}while(o0){this.emit("info",false,e,this._bufpos,o{"use strict";const i=s(7075).Writable;const{inherits:A}=s(7975);const o=s(7182);const r=s(1192);const n=s(855);const a=s(8929);function Busboy(e){if(!(this instanceof Busboy)){return new Busboy(e)}if(typeof e!=="object"){throw new TypeError("Busboy expected an options-Object.")}if(typeof e.headers!=="object"){throw new TypeError("Busboy expected an options-Object with headers-attribute.")}if(typeof e.headers["content-type"]!=="string"){throw new TypeError("Missing Content-Type-header.")}const{headers:t,...s}=e;this.opts={autoDestroy:false,...s};i.call(this,this.opts);this._done=false;this._parser=this.getParserByHeaders(t);this._finished=false}A(Busboy,i);Busboy.prototype.emit=function(e){if(e==="finish"){if(!this._done){this._parser?.end();return}else if(this._finished){return}this._finished=true}i.prototype.emit.apply(this,arguments)};Busboy.prototype.getParserByHeaders=function(e){const t=a(e["content-type"]);const s={defCharset:this.opts.defCharset,fileHwm:this.opts.fileHwm,headers:e,highWaterMark:this.opts.highWaterMark,isPartAFile:this.opts.isPartAFile,limits:this.opts.limits,parsedConType:t,preservePath:this.opts.preservePath};if(r.detect.test(t[0])){return new r(this,s)}if(n.detect.test(t[0])){return new n(this,s)}throw new Error("Unsupported Content-Type.")};Busboy.prototype._write=function(e,t,s){this._parser.write(e,s)};e.exports=Busboy;e.exports["default"]=Busboy;e.exports.Busboy=Busboy;e.exports.Dicer=o},1192:(e,t,s)=>{"use strict";const{Readable:i}=s(7075);const{inherits:A}=s(7975);const o=s(7182);const r=s(8929);const n=s(2747);const a=s(692);const c=s(2393);const l=/^boundary$/i;const u=/^form-data$/i;const p=/^charset$/i;const g=/^filename$/i;const h=/^name$/i;Multipart.detect=/^multipart\/form-data/i;function Multipart(e,t){let s;let i;const A=this;let d;const E=t.limits;const Q=t.isPartAFile||((e,t,s)=>t==="application/octet-stream"||s!==undefined);const C=t.parsedConType||[];const B=t.defCharset||"utf8";const I=t.preservePath;const b={highWaterMark:t.fileHwm};for(s=0,i=C.length;sR){A.parser.removeListener("part",onPart);A.parser.on("part",skipPart);e.hitPartsLimit=true;e.emit("partsLimit");return skipPart(t)}if(U){const e=U;e.emit("end");e.removeAllListeners("end")}t.on("header",(function(o){let c;let l;let d;let E;let C;let R;let x=0;if(o["content-type"]){d=r(o["content-type"][0]);if(d[0]){c=d[0].toLowerCase();for(s=0,i=d.length;sw){const i=w-x+e.length;if(i>0){s.push(e.slice(0,i))}s.truncated=true;s.bytesRead=w;t.removeAllListeners("data");s.emit("limit");return}else if(!s.push(e)){A._pause=true}s.bytesRead=x};L=function(){N=undefined;s.push(null)}}else{if(F===k){if(!e.hitFieldsLimit){e.hitFieldsLimit=true;e.emit("fieldsLimit")}return skipPart(t)}++F;++T;let s="";let i=false;U=t;D=function(e){if((x+=e.length)>y){const A=y-(x-e.length);s+=e.toString("binary",0,A);i=true;t.removeAllListeners("data")}else{s+=e.toString("binary")}};L=function(){U=undefined;if(s.length){s=n(s,"binary",E)}e.emit("field",l,s,false,i,C,c);--T;checkFinished()}}t._readableState.sync=false;t.on("data",D);t.on("end",L)})).on("error",(function(e){if(N){N.emit("error",e)}}))})).on("error",(function(t){e.emit("error",t)})).on("finish",(function(){L=true;checkFinished()}))}Multipart.prototype.write=function(e,t){const s=this.parser.write(e);if(s&&!this._pause){t()}else{this._needDrain=!s;this._cb=t}};Multipart.prototype.end=function(){const e=this;if(e.parser.writable){e.parser.end()}else if(!e._boy._done){process.nextTick((function(){e._boy._done=true;e._boy.emit("finish")}))}};function skipPart(e){e.resume()}function FileStream(e){i.call(this,e);this.bytesRead=0;this.truncated=false}A(FileStream,i);FileStream.prototype._read=function(e){};e.exports=Multipart},855:(e,t,s)=>{"use strict";const i=s(1496);const A=s(2747);const o=s(2393);const r=/^charset$/i;UrlEncoded.detect=/^application\/x-www-form-urlencoded/i;function UrlEncoded(e,t){const s=t.limits;const A=t.parsedConType;this.boy=e;this.fieldSizeLimit=o(s,"fieldSize",1*1024*1024);this.fieldNameSizeLimit=o(s,"fieldNameSize",100);this.fieldsLimit=o(s,"fields",Infinity);let n;for(var a=0,c=A.length;ar){this._key+=this.decoder.write(e.toString("binary",r,s))}this._state="val";this._hitLimit=false;this._checkingBytes=true;this._val="";this._bytesVal=0;this._valTrunc=false;this.decoder.reset();r=s+1}else if(i!==undefined){++this._fields;let s;const o=this._keyTrunc;if(i>r){s=this._key+=this.decoder.write(e.toString("binary",r,i))}else{s=this._key}this._hitLimit=false;this._checkingBytes=true;this._key="";this._bytesKey=0;this._keyTrunc=false;this.decoder.reset();if(s.length){this.boy.emit("field",A(s,"binary",this.charset),"",o,false)}r=i+1;if(this._fields===this.fieldsLimit){return t()}}else if(this._hitLimit){if(o>r){this._key+=this.decoder.write(e.toString("binary",r,o))}r=o;if((this._bytesKey=this._key.length)===this.fieldNameSizeLimit){this._checkingBytes=false;this._keyTrunc=true}}else{if(rr){this._val+=this.decoder.write(e.toString("binary",r,i))}this.boy.emit("field",A(this._key,"binary",this.charset),A(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc);this._state="key";this._hitLimit=false;this._checkingBytes=true;this._key="";this._bytesKey=0;this._keyTrunc=false;this.decoder.reset();r=i+1;if(this._fields===this.fieldsLimit){return t()}}else if(this._hitLimit){if(o>r){this._val+=this.decoder.write(e.toString("binary",r,o))}r=o;if(this._val===""&&this.fieldSizeLimit===0||(this._bytesVal=this._val.length)===this.fieldSizeLimit){this._checkingBytes=false;this._valTrunc=true}}else{if(r0){this.boy.emit("field",A(this._key,"binary",this.charset),"",this._keyTrunc,false)}else if(this._state==="val"){this.boy.emit("field",A(this._key,"binary",this.charset),A(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc)}this.boy._done=true;this.boy.emit("finish")};e.exports=UrlEncoded},1496:e=>{"use strict";const t=/\+/g;const s=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];function Decoder(){this.buffer=undefined}Decoder.prototype.write=function(e){e=e.replace(t," ");let i="";let A=0;let o=0;const r=e.length;for(;Ao){i+=e.substring(o,A);o=A}this.buffer="";++o}}if(o{"use strict";e.exports=function basename(e){if(typeof e!=="string"){return""}for(var t=e.length-1;t>=0;--t){switch(e.charCodeAt(t)){case 47:case 92:e=e.slice(t+1);return e===".."||e==="."?"":e}}return e===".."||e==="."?"":e}},2747:function(e){"use strict";const t=new TextDecoder("utf-8");const s=new Map([["utf-8",t],["utf8",t]]);function getDecoder(e){let t;while(true){switch(e){case"utf-8":case"utf8":return i.utf8;case"latin1":case"ascii":case"us-ascii":case"iso-8859-1":case"iso8859-1":case"iso88591":case"iso_8859-1":case"windows-1252":case"iso_8859-1:1987":case"cp1252":case"x-cp1252":return i.latin1;case"utf16le":case"utf-16le":case"ucs2":case"ucs-2":return i.utf16le;case"base64":return i.base64;default:if(t===undefined){t=true;e=e.toLowerCase();continue}return i.other.bind(e)}}}const i={utf8:(e,t)=>{if(e.length===0){return""}if(typeof e==="string"){e=Buffer.from(e,t)}return e.utf8Slice(0,e.length)},latin1:(e,t)=>{if(e.length===0){return""}if(typeof e==="string"){return e}return e.latin1Slice(0,e.length)},utf16le:(e,t)=>{if(e.length===0){return""}if(typeof e==="string"){e=Buffer.from(e,t)}return e.ucs2Slice(0,e.length)},base64:(e,t)=>{if(e.length===0){return""}if(typeof e==="string"){e=Buffer.from(e,t)}return e.base64Slice(0,e.length)},other:(e,t)=>{if(e.length===0){return""}if(typeof e==="string"){e=Buffer.from(e,t)}if(s.has(this.toString())){try{return s.get(this).decode(e)}catch{}}return typeof e==="string"?e:e.toString()}};function decodeText(e,t,s){if(e){return getDecoder(s)(e,t)}return e}e.exports=decodeText},2393:e=>{"use strict";e.exports=function getLimit(e,t,s){if(!e||e[t]===undefined||e[t]===null){return s}if(typeof e[t]!=="number"||isNaN(e[t])){throw new TypeError("Limit "+t+" is not a valid number")}return e[t]}},8929:(e,t,s)=>{"use strict";const i=s(2747);const A=/%[a-fA-F0-9][a-fA-F0-9]/g;const o={"%00":"\0","%01":"","%02":"","%03":"","%04":"","%05":"","%06":"","%07":"","%08":"\b","%09":"\t","%0a":"\n","%0A":"\n","%0b":"\v","%0B":"\v","%0c":"\f","%0C":"\f","%0d":"\r","%0D":"\r","%0e":"","%0E":"","%0f":"","%0F":"","%10":"","%11":"","%12":"","%13":"","%14":"","%15":"","%16":"","%17":"","%18":"","%19":"","%1a":"","%1A":"","%1b":"","%1B":"","%1c":"","%1C":"","%1d":"","%1D":"","%1e":"","%1E":"","%1f":"","%1F":"","%20":" ","%21":"!","%22":'"',"%23":"#","%24":"$","%25":"%","%26":"&","%27":"'","%28":"(","%29":")","%2a":"*","%2A":"*","%2b":"+","%2B":"+","%2c":",","%2C":",","%2d":"-","%2D":"-","%2e":".","%2E":".","%2f":"/","%2F":"/","%30":"0","%31":"1","%32":"2","%33":"3","%34":"4","%35":"5","%36":"6","%37":"7","%38":"8","%39":"9","%3a":":","%3A":":","%3b":";","%3B":";","%3c":"<","%3C":"<","%3d":"=","%3D":"=","%3e":">","%3E":">","%3f":"?","%3F":"?","%40":"@","%41":"A","%42":"B","%43":"C","%44":"D","%45":"E","%46":"F","%47":"G","%48":"H","%49":"I","%4a":"J","%4A":"J","%4b":"K","%4B":"K","%4c":"L","%4C":"L","%4d":"M","%4D":"M","%4e":"N","%4E":"N","%4f":"O","%4F":"O","%50":"P","%51":"Q","%52":"R","%53":"S","%54":"T","%55":"U","%56":"V","%57":"W","%58":"X","%59":"Y","%5a":"Z","%5A":"Z","%5b":"[","%5B":"[","%5c":"\\","%5C":"\\","%5d":"]","%5D":"]","%5e":"^","%5E":"^","%5f":"_","%5F":"_","%60":"`","%61":"a","%62":"b","%63":"c","%64":"d","%65":"e","%66":"f","%67":"g","%68":"h","%69":"i","%6a":"j","%6A":"j","%6b":"k","%6B":"k","%6c":"l","%6C":"l","%6d":"m","%6D":"m","%6e":"n","%6E":"n","%6f":"o","%6F":"o","%70":"p","%71":"q","%72":"r","%73":"s","%74":"t","%75":"u","%76":"v","%77":"w","%78":"x","%79":"y","%7a":"z","%7A":"z","%7b":"{","%7B":"{","%7c":"|","%7C":"|","%7d":"}","%7D":"}","%7e":"~","%7E":"~","%7f":"","%7F":"","%80":"","%81":"","%82":"","%83":"","%84":"","%85":"
","%86":"","%87":"","%88":"","%89":"","%8a":"","%8A":"","%8b":"","%8B":"","%8c":"","%8C":"","%8d":"","%8D":"","%8e":"","%8E":"","%8f":"","%8F":"","%90":"","%91":"","%92":"","%93":"","%94":"","%95":"","%96":"","%97":"","%98":"","%99":"","%9a":"","%9A":"","%9b":"","%9B":"","%9c":"","%9C":"","%9d":"","%9D":"","%9e":"","%9E":"","%9f":"","%9F":"","%a0":" ","%A0":" ","%a1":"¡","%A1":"¡","%a2":"¢","%A2":"¢","%a3":"£","%A3":"£","%a4":"¤","%A4":"¤","%a5":"¥","%A5":"¥","%a6":"¦","%A6":"¦","%a7":"§","%A7":"§","%a8":"¨","%A8":"¨","%a9":"©","%A9":"©","%aa":"ª","%Aa":"ª","%aA":"ª","%AA":"ª","%ab":"«","%Ab":"«","%aB":"«","%AB":"«","%ac":"¬","%Ac":"¬","%aC":"¬","%AC":"¬","%ad":"","%Ad":"","%aD":"","%AD":"","%ae":"®","%Ae":"®","%aE":"®","%AE":"®","%af":"¯","%Af":"¯","%aF":"¯","%AF":"¯","%b0":"°","%B0":"°","%b1":"±","%B1":"±","%b2":"²","%B2":"²","%b3":"³","%B3":"³","%b4":"´","%B4":"´","%b5":"µ","%B5":"µ","%b6":"¶","%B6":"¶","%b7":"·","%B7":"·","%b8":"¸","%B8":"¸","%b9":"¹","%B9":"¹","%ba":"º","%Ba":"º","%bA":"º","%BA":"º","%bb":"»","%Bb":"»","%bB":"»","%BB":"»","%bc":"¼","%Bc":"¼","%bC":"¼","%BC":"¼","%bd":"½","%Bd":"½","%bD":"½","%BD":"½","%be":"¾","%Be":"¾","%bE":"¾","%BE":"¾","%bf":"¿","%Bf":"¿","%bF":"¿","%BF":"¿","%c0":"À","%C0":"À","%c1":"Á","%C1":"Á","%c2":"Â","%C2":"Â","%c3":"Ã","%C3":"Ã","%c4":"Ä","%C4":"Ä","%c5":"Å","%C5":"Å","%c6":"Æ","%C6":"Æ","%c7":"Ç","%C7":"Ç","%c8":"È","%C8":"È","%c9":"É","%C9":"É","%ca":"Ê","%Ca":"Ê","%cA":"Ê","%CA":"Ê","%cb":"Ë","%Cb":"Ë","%cB":"Ë","%CB":"Ë","%cc":"Ì","%Cc":"Ì","%cC":"Ì","%CC":"Ì","%cd":"Í","%Cd":"Í","%cD":"Í","%CD":"Í","%ce":"Î","%Ce":"Î","%cE":"Î","%CE":"Î","%cf":"Ï","%Cf":"Ï","%cF":"Ï","%CF":"Ï","%d0":"Ð","%D0":"Ð","%d1":"Ñ","%D1":"Ñ","%d2":"Ò","%D2":"Ò","%d3":"Ó","%D3":"Ó","%d4":"Ô","%D4":"Ô","%d5":"Õ","%D5":"Õ","%d6":"Ö","%D6":"Ö","%d7":"×","%D7":"×","%d8":"Ø","%D8":"Ø","%d9":"Ù","%D9":"Ù","%da":"Ú","%Da":"Ú","%dA":"Ú","%DA":"Ú","%db":"Û","%Db":"Û","%dB":"Û","%DB":"Û","%dc":"Ü","%Dc":"Ü","%dC":"Ü","%DC":"Ü","%dd":"Ý","%Dd":"Ý","%dD":"Ý","%DD":"Ý","%de":"Þ","%De":"Þ","%dE":"Þ","%DE":"Þ","%df":"ß","%Df":"ß","%dF":"ß","%DF":"ß","%e0":"à","%E0":"à","%e1":"á","%E1":"á","%e2":"â","%E2":"â","%e3":"ã","%E3":"ã","%e4":"ä","%E4":"ä","%e5":"å","%E5":"å","%e6":"æ","%E6":"æ","%e7":"ç","%E7":"ç","%e8":"è","%E8":"è","%e9":"é","%E9":"é","%ea":"ê","%Ea":"ê","%eA":"ê","%EA":"ê","%eb":"ë","%Eb":"ë","%eB":"ë","%EB":"ë","%ec":"ì","%Ec":"ì","%eC":"ì","%EC":"ì","%ed":"í","%Ed":"í","%eD":"í","%ED":"í","%ee":"î","%Ee":"î","%eE":"î","%EE":"î","%ef":"ï","%Ef":"ï","%eF":"ï","%EF":"ï","%f0":"ð","%F0":"ð","%f1":"ñ","%F1":"ñ","%f2":"ò","%F2":"ò","%f3":"ó","%F3":"ó","%f4":"ô","%F4":"ô","%f5":"õ","%F5":"õ","%f6":"ö","%F6":"ö","%f7":"÷","%F7":"÷","%f8":"ø","%F8":"ø","%f9":"ù","%F9":"ù","%fa":"ú","%Fa":"ú","%fA":"ú","%FA":"ú","%fb":"û","%Fb":"û","%fB":"û","%FB":"û","%fc":"ü","%Fc":"ü","%fC":"ü","%FC":"ü","%fd":"ý","%Fd":"ý","%fD":"ý","%FD":"ý","%fe":"þ","%Fe":"þ","%fE":"þ","%FE":"þ","%ff":"ÿ","%Ff":"ÿ","%fF":"ÿ","%FF":"ÿ"};function encodedReplacer(e){return o[e]}const r=0;const n=1;const a=2;const c=3;function parseParams(e){const t=[];let s=r;let o="";let l=false;let u=false;let p=0;let g="";const h=e.length;for(var d=0;d{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.Glob=void 0;const i=s(6507);const A=s(3136);const o=s(6577);const r=s(7813);const n=s(1157);const a=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class Glob{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(e,t){if(!t)throw new TypeError("glob options required");this.withFileTypes=!!t.withFileTypes;this.signal=t.signal;this.follow=!!t.follow;this.dot=!!t.dot;this.dotRelative=!!t.dotRelative;this.nodir=!!t.nodir;this.mark=!!t.mark;if(!t.cwd){this.cwd=""}else if(t.cwd instanceof URL||t.cwd.startsWith("file://")){t.cwd=(0,A.fileURLToPath)(t.cwd)}this.cwd=t.cwd||"";this.root=t.root;this.magicalBraces=!!t.magicalBraces;this.nobrace=!!t.nobrace;this.noext=!!t.noext;this.realpath=!!t.realpath;this.absolute=t.absolute;this.includeChildMatches=t.includeChildMatches!==false;this.noglobstar=!!t.noglobstar;this.matchBase=!!t.matchBase;this.maxDepth=typeof t.maxDepth==="number"?t.maxDepth:Infinity;this.stat=!!t.stat;this.ignore=t.ignore;if(this.withFileTypes&&this.absolute!==undefined){throw new Error("cannot set absolute and withFileTypes:true")}if(typeof e==="string"){e=[e]}this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||t.allowWindowsEscape===false;if(this.windowsPathsNoEscape){e=e.map((e=>e.replace(/\\/g,"/")))}if(this.matchBase){if(t.noglobstar){throw new TypeError("base matching requires globstar")}e=e.map((e=>e.includes("/")?e:`./**/${e}`))}this.pattern=e;this.platform=t.platform||a;this.opts={...t,platform:this.platform};if(t.scurry){this.scurry=t.scurry;if(t.nocase!==undefined&&t.nocase!==t.scurry.nocase){throw new Error("nocase option contradicts provided scurry option")}}else{const e=t.platform==="win32"?o.PathScurryWin32:t.platform==="darwin"?o.PathScurryDarwin:t.platform?o.PathScurryPosix:o.PathScurry;this.scurry=new e(this.cwd,{nocase:t.nocase,fs:t.fs})}this.nocase=this.scurry.nocase;const s=this.platform==="darwin"||this.platform==="win32";const n={...t,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:s,nocomment:true,noext:this.noext,nonegate:true,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug};const c=this.pattern.map((e=>new i.Minimatch(e,n)));const[l,u]=c.reduce(((e,t)=>{e[0].push(...t.set);e[1].push(...t.globParts);return e}),[[],[]]);this.patterns=l.map(((e,t)=>{const s=u[t];if(!s)throw new Error("invalid pattern object");return new r.Pattern(e,s,0,this.platform)}))}async walk(){return[...await new n.GlobWalker(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==Infinity?this.maxDepth+this.scurry.cwd.depth():Infinity,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new n.GlobWalker(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==Infinity?this.maxDepth+this.scurry.cwd.depth():Infinity,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new n.GlobStream(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==Infinity?this.maxDepth+this.scurry.cwd.depth():Infinity,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new n.GlobStream(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==Infinity?this.maxDepth+this.scurry.cwd.depth():Infinity,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}}t.Glob=Glob},5197:(e,t,s)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.hasMagic=void 0;const i=s(6507);const hasMagic=(e,t={})=>{if(!Array.isArray(e)){e=[e]}for(const s of e){if(new i.Minimatch(s,t).hasMagic())return true}return false};t.hasMagic=hasMagic},5637:(e,t,s)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.Ignore=void 0;const i=s(6507);const A=s(7813);const o=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class Ignore{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(e,{nobrace:t,nocase:s,noext:i,noglobstar:A,platform:r=o}){this.relative=[];this.absolute=[];this.relativeChildren=[];this.absoluteChildren=[];this.platform=r;this.mmopts={dot:true,nobrace:t,nocase:s,noext:i,noglobstar:A,optimizationLevel:2,platform:r,nocomment:true,nonegate:true};for(const t of e)this.add(t)}add(e){const t=new i.Minimatch(e,this.mmopts);for(let e=0;e{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.glob=t.sync=t.iterate=t.iterateSync=t.stream=t.streamSync=t.Ignore=t.hasMagic=t.Glob=t.unescape=t.escape=void 0;t.globStreamSync=globStreamSync;t.globStream=globStream;t.globSync=globSync;t.globIterateSync=globIterateSync;t.globIterate=globIterate;const i=s(6507);const A=s(2981);const o=s(5197);var r=s(6507);Object.defineProperty(t,"escape",{enumerable:true,get:function(){return r.escape}});Object.defineProperty(t,"unescape",{enumerable:true,get:function(){return r.unescape}});var n=s(2981);Object.defineProperty(t,"Glob",{enumerable:true,get:function(){return n.Glob}});var a=s(5197);Object.defineProperty(t,"hasMagic",{enumerable:true,get:function(){return a.hasMagic}});var c=s(5637);Object.defineProperty(t,"Ignore",{enumerable:true,get:function(){return c.Ignore}});function globStreamSync(e,t={}){return new A.Glob(e,t).streamSync()}function globStream(e,t={}){return new A.Glob(e,t).stream()}function globSync(e,t={}){return new A.Glob(e,t).walkSync()}async function glob_(e,t={}){return new A.Glob(e,t).walk()}function globIterateSync(e,t={}){return new A.Glob(e,t).iterateSync()}function globIterate(e,t={}){return new A.Glob(e,t).iterate()}t.streamSync=globStreamSync;t.stream=Object.assign(globStream,{sync:globStreamSync});t.iterateSync=globIterateSync;t.iterate=Object.assign(globIterate,{sync:globIterateSync});t.sync=Object.assign(globSync,{stream:globStreamSync,iterate:globIterateSync});t.glob=Object.assign(glob_,{glob:glob_,globSync:globSync,sync:t.sync,globStream:globStream,stream:t.stream,globStreamSync:globStreamSync,streamSync:t.streamSync,globIterate:globIterate,iterate:t.iterate,globIterateSync:globIterateSync,iterateSync:t.iterateSync,Glob:A.Glob,hasMagic:o.hasMagic,escape:i.escape,unescape:i.unescape});t.glob.glob=t.glob},7813:(e,t,s)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.Pattern=void 0;const i=s(6507);const isPatternList=e=>e.length>=1;const isGlobList=e=>e.length>=1;class Pattern{#E;#f;#Q;length;#C;#m;#B;#I;#b;#y;#w=true;constructor(e,t,s,i){if(!isPatternList(e)){throw new TypeError("empty pattern list")}if(!isGlobList(t)){throw new TypeError("empty glob list")}if(t.length!==e.length){throw new TypeError("mismatched pattern list and glob list lengths")}this.length=e.length;if(s<0||s>=this.length){throw new TypeError("index out of range")}this.#E=e;this.#f=t;this.#Q=s;this.#C=i;if(this.#Q===0){if(this.isUNC()){const[e,t,s,i,...A]=this.#E;const[o,r,n,a,...c]=this.#f;if(A[0]===""){A.shift();c.shift()}const l=[e,t,s,i,""].join("/");const u=[o,r,n,a,""].join("/");this.#E=[l,...A];this.#f=[u,...c];this.length=this.#E.length}else if(this.isDrive()||this.isAbsolute()){const[e,...t]=this.#E;const[s,...i]=this.#f;if(t[0]===""){t.shift();i.shift()}const A=e+"/";const o=s+"/";this.#E=[A,...t];this.#f=[o,...i];this.length=this.#E.length}}}pattern(){return this.#E[this.#Q]}isString(){return typeof this.#E[this.#Q]==="string"}isGlobstar(){return this.#E[this.#Q]===i.GLOBSTAR}isRegExp(){return this.#E[this.#Q]instanceof RegExp}globString(){return this.#B=this.#B||(this.#Q===0?this.isAbsolute()?this.#f[0]+this.#f.slice(1).join("/"):this.#f.join("/"):this.#f.slice(this.#Q).join("/"))}hasMore(){return this.length>this.#Q+1}rest(){if(this.#m!==undefined)return this.#m;if(!this.hasMore())return this.#m=null;this.#m=new Pattern(this.#E,this.#f,this.#Q+1,this.#C);this.#m.#y=this.#y;this.#m.#b=this.#b;this.#m.#I=this.#I;return this.#m}isUNC(){const e=this.#E;return this.#b!==undefined?this.#b:this.#b=this.#C==="win32"&&this.#Q===0&&e[0]===""&&e[1]===""&&typeof e[2]==="string"&&!!e[2]&&typeof e[3]==="string"&&!!e[3]}isDrive(){const e=this.#E;return this.#I!==undefined?this.#I:this.#I=this.#C==="win32"&&this.#Q===0&&this.length>1&&typeof e[0]==="string"&&/^[a-z]:$/i.test(e[0])}isAbsolute(){const e=this.#E;return this.#y!==undefined?this.#y:this.#y=e[0]===""&&e.length>1||this.isDrive()||this.isUNC()}root(){const e=this.#E[0];return typeof e==="string"&&this.isAbsolute()&&this.#Q===0?e:""}checkFollowGlobstar(){return!(this.#Q===0||!this.isGlobstar()||!this.#w)}markFollowGlobstar(){if(this.#Q===0||!this.isGlobstar()||!this.#w)return false;this.#w=false;return true}}t.Pattern=Pattern},7843:(e,t,s)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.Processor=t.SubWalks=t.MatchRecord=t.HasWalkedCache=void 0;const i=s(6507);class HasWalkedCache{store;constructor(e=new Map){this.store=e}copy(){return new HasWalkedCache(new Map(this.store))}hasWalked(e,t){return this.store.get(e.fullpath())?.has(t.globString())}storeWalked(e,t){const s=e.fullpath();const i=this.store.get(s);if(i)i.add(t.globString());else this.store.set(s,new Set([t.globString()]))}}t.HasWalkedCache=HasWalkedCache;class MatchRecord{store=new Map;add(e,t,s){const i=(t?2:0)|(s?1:0);const A=this.store.get(e);this.store.set(e,A===undefined?i:i&A)}entries(){return[...this.store.entries()].map((([e,t])=>[e,!!(t&2),!!(t&1)]))}}t.MatchRecord=MatchRecord;class SubWalks{store=new Map;add(e,t){if(!e.canReaddir()){return}const s=this.store.get(e);if(s){if(!s.find((e=>e.globString()===t.globString()))){s.push(t)}}else this.store.set(e,[t])}get(e){const t=this.store.get(e);if(!t){throw new Error("attempting to walk unknown path")}return t}entries(){return this.keys().map((e=>[e,this.store.get(e)]))}keys(){return[...this.store.keys()].filter((e=>e.canReaddir()))}}t.SubWalks=SubWalks;class Processor{hasWalkedCache;matches=new MatchRecord;subwalks=new SubWalks;patterns;follow;dot;opts;constructor(e,t){this.opts=e;this.follow=!!e.follow;this.dot=!!e.dot;this.hasWalkedCache=t?t.copy():new HasWalkedCache}processPatterns(e,t){this.patterns=t;const s=t.map((t=>[e,t]));for(let[e,t]of s){this.hasWalkedCache.storeWalked(e,t);const s=t.root();const A=t.isAbsolute()&&this.opts.absolute!==false;if(s){e=e.resolve(s==="/"&&this.opts.root!==undefined?this.opts.root:s);const i=t.rest();if(!i){this.matches.add(e,true,false);continue}else{t=i}}if(e.isENOENT())continue;let o;let r;let n=false;while(typeof(o=t.pattern())==="string"&&(r=t.rest())){const s=e.resolve(o);e=s;t=r;n=true}o=t.pattern();r=t.rest();if(n){if(this.hasWalkedCache.hasWalked(e,t))continue;this.hasWalkedCache.storeWalked(e,t)}if(typeof o==="string"){const t=o===".."||o===""||o===".";this.matches.add(e.resolve(o),A,t);continue}else if(o===i.GLOBSTAR){if(!e.isSymbolicLink()||this.follow||t.checkFollowGlobstar()){this.subwalks.add(e,t)}const s=r?.pattern();const i=r?.rest();if(!r||(s===""||s===".")&&!i){this.matches.add(e,A,s===""||s===".")}else{if(s===".."){const t=e.parent||e;if(!i)this.matches.add(t,A,true);else if(!this.hasWalkedCache.hasWalked(t,i)){this.subwalks.add(t,i)}}}}else if(o instanceof RegExp){this.subwalks.add(e,t)}}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new Processor(this.opts,this.hasWalkedCache)}filterEntries(e,t){const s=this.subwalks.get(e);const A=this.child();for(const e of t){for(const t of s){const s=t.isAbsolute();const o=t.pattern();const r=t.rest();if(o===i.GLOBSTAR){A.testGlobstar(e,t,r,s)}else if(o instanceof RegExp){A.testRegExp(e,o,r,s)}else{A.testString(e,o,r,s)}}}return A}testGlobstar(e,t,s,i){if(this.dot||!e.name.startsWith(".")){if(!t.hasMore()){this.matches.add(e,i,false)}if(e.canReaddir()){if(this.follow||!e.isSymbolicLink()){this.subwalks.add(e,t)}else if(e.isSymbolicLink()){if(s&&t.checkFollowGlobstar()){this.subwalks.add(e,s)}else if(t.markFollowGlobstar()){this.subwalks.add(e,t)}}}}if(s){const t=s.pattern();if(typeof t==="string"&&t!==".."&&t!==""&&t!=="."){this.testString(e,t,s.rest(),i)}else if(t===".."){const t=e.parent||e;this.subwalks.add(t,s)}else if(t instanceof RegExp){this.testRegExp(e,t,s.rest(),i)}}}testRegExp(e,t,s,i){if(!t.test(e.name))return;if(!s){this.matches.add(e,i,false)}else{this.subwalks.add(e,s)}}testString(e,t,s,i){if(!e.isNamed(t))return;if(!s){this.matches.add(e,i,false)}else{this.subwalks.add(e,s)}}}t.Processor=Processor},1157:(e,t,s)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.GlobStream=t.GlobWalker=t.GlobUtil=void 0;const i=s(8275);const A=s(5637);const o=s(7843);const makeIgnore=(e,t)=>typeof e==="string"?new A.Ignore([e],t):Array.isArray(e)?new A.Ignore(e,t):e;class GlobUtil{path;patterns;opts;seen=new Set;paused=false;aborted=false;#v=[];#k;#R;signal;maxDepth;includeChildMatches;constructor(e,t,s){this.patterns=e;this.path=t;this.opts=s;this.#R=!s.posix&&s.platform==="win32"?"\\":"/";this.includeChildMatches=s.includeChildMatches!==false;if(s.ignore||!this.includeChildMatches){this.#k=makeIgnore(s.ignore??[],s);if(!this.includeChildMatches&&typeof this.#k.add!=="function"){const e="cannot ignore child matches, ignore lacks add() method.";throw new Error(e)}}this.maxDepth=s.maxDepth||Infinity;if(s.signal){this.signal=s.signal;this.signal.addEventListener("abort",(()=>{this.#v.length=0}))}}#x(e){return this.seen.has(e)||!!this.#k?.ignored?.(e)}#D(e){return!!this.#k?.childrenIgnored?.(e)}pause(){this.paused=true}resume(){if(this.signal?.aborted)return;this.paused=false;let e=undefined;while(!this.paused&&(e=this.#v.shift())){e()}}onResume(e){if(this.signal?.aborted)return;if(!this.paused){e()}else{this.#v.push(e)}}async matchCheck(e,t){if(t&&this.opts.nodir)return undefined;let s;if(this.opts.realpath){s=e.realpathCached()||await e.realpath();if(!s)return undefined;e=s}const i=e.isUnknown()||this.opts.stat;const A=i?await e.lstat():e;if(this.opts.follow&&this.opts.nodir&&A?.isSymbolicLink()){const e=await A.realpath();if(e&&(e.isUnknown()||this.opts.stat)){await e.lstat()}}return this.matchCheckTest(A,t)}matchCheckTest(e,t){return e&&(this.maxDepth===Infinity||e.depth()<=this.maxDepth)&&(!t||e.canReaddir())&&(!this.opts.nodir||!e.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!e.isSymbolicLink()||!e.realpathCached()?.isDirectory())&&!this.#x(e)?e:undefined}matchCheckSync(e,t){if(t&&this.opts.nodir)return undefined;let s;if(this.opts.realpath){s=e.realpathCached()||e.realpathSync();if(!s)return undefined;e=s}const i=e.isUnknown()||this.opts.stat;const A=i?e.lstatSync():e;if(this.opts.follow&&this.opts.nodir&&A?.isSymbolicLink()){const e=A.realpathSync();if(e&&(e?.isUnknown()||this.opts.stat)){e.lstatSync()}}return this.matchCheckTest(A,t)}matchFinish(e,t){if(this.#x(e))return;if(!this.includeChildMatches&&this.#k?.add){const t=`${e.relativePosix()}/**`;this.#k.add(t)}const s=this.opts.absolute===undefined?t:this.opts.absolute;this.seen.add(e);const i=this.opts.mark&&e.isDirectory()?this.#R:"";if(this.opts.withFileTypes){this.matchEmit(e)}else if(s){const t=this.opts.posix?e.fullpathPosix():e.fullpath();this.matchEmit(t+i)}else{const t=this.opts.posix?e.relativePosix():e.relative();const s=this.opts.dotRelative&&!t.startsWith(".."+this.#R)?"."+this.#R:"";this.matchEmit(!t?"."+i:s+t+i)}}async match(e,t,s){const i=await this.matchCheck(e,s);if(i)this.matchFinish(i,t)}matchSync(e,t,s){const i=this.matchCheckSync(e,s);if(i)this.matchFinish(i,t)}walkCB(e,t,s){if(this.signal?.aborted)s();this.walkCB2(e,t,new o.Processor(this.opts),s)}walkCB2(e,t,s,i){if(this.#D(e))return i();if(this.signal?.aborted)i();if(this.paused){this.onResume((()=>this.walkCB2(e,t,s,i)));return}s.processPatterns(e,t);let A=1;const next=()=>{if(--A===0)i()};for(const[e,t,i]of s.matches.entries()){if(this.#x(e))continue;A++;this.match(e,t,i).then((()=>next()))}for(const e of s.subwalkTargets()){if(this.maxDepth!==Infinity&&e.depth()>=this.maxDepth){continue}A++;const t=e.readdirCached();if(e.calledReaddir())this.walkCB3(e,t,s,next);else{e.readdirCB(((t,i)=>this.walkCB3(e,i,s,next)),true)}}next()}walkCB3(e,t,s,i){s=s.filterEntries(e,t);let A=1;const next=()=>{if(--A===0)i()};for(const[e,t,i]of s.matches.entries()){if(this.#x(e))continue;A++;this.match(e,t,i).then((()=>next()))}for(const[e,t]of s.subwalks.entries()){A++;this.walkCB2(e,t,s.child(),next)}next()}walkCBSync(e,t,s){if(this.signal?.aborted)s();this.walkCB2Sync(e,t,new o.Processor(this.opts),s)}walkCB2Sync(e,t,s,i){if(this.#D(e))return i();if(this.signal?.aborted)i();if(this.paused){this.onResume((()=>this.walkCB2Sync(e,t,s,i)));return}s.processPatterns(e,t);let A=1;const next=()=>{if(--A===0)i()};for(const[e,t,i]of s.matches.entries()){if(this.#x(e))continue;this.matchSync(e,t,i)}for(const e of s.subwalkTargets()){if(this.maxDepth!==Infinity&&e.depth()>=this.maxDepth){continue}A++;const t=e.readdirSync();this.walkCB3Sync(e,t,s,next)}next()}walkCB3Sync(e,t,s,i){s=s.filterEntries(e,t);let A=1;const next=()=>{if(--A===0)i()};for(const[e,t,i]of s.matches.entries()){if(this.#x(e))continue;this.matchSync(e,t,i)}for(const[e,t]of s.subwalks.entries()){A++;this.walkCB2Sync(e,t,s.child(),next)}next()}}t.GlobUtil=GlobUtil;class GlobWalker extends GlobUtil{matches=new Set;constructor(e,t,s){super(e,t,s)}matchEmit(e){this.matches.add(e)}async walk(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown()){await this.path.lstat()}await new Promise(((e,t)=>{this.walkCB(this.path,this.patterns,(()=>{if(this.signal?.aborted){t(this.signal.reason)}else{e(this.matches)}}))}));return this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown()){this.path.lstatSync()}this.walkCBSync(this.path,this.patterns,(()=>{if(this.signal?.aborted)throw this.signal.reason}));return this.matches}}t.GlobWalker=GlobWalker;class GlobStream extends GlobUtil{results;constructor(e,t,s){super(e,t,s);this.results=new i.Minipass({signal:this.signal,objectMode:true});this.results.on("drain",(()=>this.resume()));this.results.on("resume",(()=>this.resume()))}matchEmit(e){this.results.write(e);if(!this.results.flowing)this.pause()}stream(){const e=this.path;if(e.isUnknown()){e.lstat().then((()=>{this.walkCB(e,this.patterns,(()=>this.results.end()))}))}else{this.walkCB(e,this.patterns,(()=>this.results.end()))}return this.results}streamSync(){if(this.path.isUnknown()){this.path.lstatSync()}this.walkCBSync(this.path,this.patterns,(()=>this.results.end()));return this.results}}t.GlobStream=GlobStream},7305:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.assertValidPattern=void 0;const s=1024*64;const assertValidPattern=e=>{if(typeof e!=="string"){throw new TypeError("invalid pattern")}if(e.length>s){throw new TypeError("pattern is too long")}};t.assertValidPattern=assertValidPattern},1803:(e,t,s)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.AST=void 0;const i=s(1090);const A=s(851);const o=new Set(["!","?","+","*","@"]);const isExtglobType=e=>o.has(e);const r="(?!(?:^|/)\\.\\.?(?:$|/))";const n="(?!\\.)";const a=new Set(["[","."]);const c=new Set(["..","."]);const l=new Set("().*{}+?[]^$\\!");const regExpEscape=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");const u="[^/]";const p=u+"*?";const g=u+"+?";class AST{type;#S;#F;#T=false;#N=[];#U;#L;#G;#M=false;#_;#O;#P=false;constructor(e,t,s={}){this.type=e;if(e)this.#F=true;this.#U=t;this.#S=this.#U?this.#U.#S:this;this.#_=this.#S===this?s:this.#S.#_;this.#G=this.#S===this?[]:this.#S.#G;if(e==="!"&&!this.#S.#M)this.#G.push(this);this.#L=this.#U?this.#U.#N.length:0}get hasMagic(){if(this.#F!==undefined)return this.#F;for(const e of this.#N){if(typeof e==="string")continue;if(e.type||e.hasMagic)return this.#F=true}return this.#F}toString(){if(this.#O!==undefined)return this.#O;if(!this.type){return this.#O=this.#N.map((e=>String(e))).join("")}else{return this.#O=this.type+"("+this.#N.map((e=>String(e))).join("|")+")"}}#H(){if(this!==this.#S)throw new Error("should only call on root");if(this.#M)return this;this.toString();this.#M=true;let e;while(e=this.#G.pop()){if(e.type!=="!")continue;let t=e;let s=t.#U;while(s){for(let i=t.#L+1;!s.type&&itypeof e==="string"?e:e.toJSON())):[this.type,...this.#N.map((e=>e.toJSON()))];if(this.isStart()&&!this.type)e.unshift([]);if(this.isEnd()&&(this===this.#S||this.#S.#M&&this.#U?.type==="!")){e.push({})}return e}isStart(){if(this.#S===this)return true;if(!this.#U?.isStart())return false;if(this.#L===0)return true;const e=this.#U;for(let t=0;t{const[i,A,o,r]=typeof t==="string"?AST.#J(t,this.#F,s):t.toRegExpSource(e);this.#F=this.#F||o;this.#T=this.#T||r;return i})).join("");let o="";if(this.isStart()){if(typeof this.#N[0]==="string"){const s=this.#N.length===1&&c.has(this.#N[0]);if(!s){const s=a;const A=t&&s.has(i.charAt(0))||i.startsWith("\\.")&&s.has(i.charAt(2))||i.startsWith("\\.\\.")&&s.has(i.charAt(4));const c=!t&&!e&&s.has(i.charAt(0));o=A?r:c?n:""}}}let l="";if(this.isEnd()&&this.#S.#M&&this.#U?.type==="!"){l="(?:$|\\/)"}const u=o+i+l;return[u,(0,A.unescape)(i),this.#F=!!this.#F,this.#T]}const s=this.type==="*"||this.type==="+";const i=this.type==="!"?"(?:(?!(?:":"(?:";let o=this.#V(t);if(this.isStart()&&this.isEnd()&&!o&&this.type!=="!"){const e=this.toString();this.#N=[e];this.type=null;this.#F=undefined;return[e,(0,A.unescape)(this.toString()),false,false]}let l=!s||e||t||!n?"":this.#V(true);if(l===o){l=""}if(l){o=`(?:${o})(?:${l})*?`}let u="";if(this.type==="!"&&this.#P){u=(this.isStart()&&!t?n:"")+g}else{const s=this.type==="!"?"))"+(this.isStart()&&!t&&!e?n:"")+p+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&l?")":this.type==="*"&&l?`)?`:`)${this.type}`;u=i+o+s}return[u,(0,A.unescape)(o),this.#F=!!this.#F,this.#T]}#V(e){return this.#N.map((t=>{if(typeof t==="string"){throw new Error("string type in extglob ast??")}const[s,i,A,o]=t.toRegExpSource(e);this.#T=this.#T||o;return s})).filter((e=>!(this.isStart()&&this.isEnd())||!!e)).join("|")}static#J(e,t,s=false){let o=false;let r="";let n=false;for(let A=0;A{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.parseClass=void 0;const s={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",true],"[:alpha:]":["\\p{L}\\p{Nl}",true],"[:ascii:]":["\\x"+"00-\\x"+"7f",false],"[:blank:]":["\\p{Zs}\\t",true],"[:cntrl:]":["\\p{Cc}",true],"[:digit:]":["\\p{Nd}",true],"[:graph:]":["\\p{Z}\\p{C}",true,true],"[:lower:]":["\\p{Ll}",true],"[:print:]":["\\p{C}",true],"[:punct:]":["\\p{P}",true],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",true],"[:upper:]":["\\p{Lu}",true],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",true],"[:xdigit:]":["A-Fa-f0-9",false]};const braceEscape=e=>e.replace(/[[\]\\-]/g,"\\$&");const regexpEscape=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");const rangesToString=e=>e.join("");const parseClass=(e,t)=>{const i=t;if(e.charAt(i)!=="["){throw new Error("not in a brace expression")}const A=[];const o=[];let r=i+1;let n=false;let a=false;let c=false;let l=false;let u=i;let p="";e:while(rp){A.push(braceEscape(p)+"-"+braceEscape(t))}else if(t===p){A.push(braceEscape(t))}p="";r++;continue}if(e.startsWith("-]",r+1)){A.push(braceEscape(t+"-"));r+=2;continue}if(e.startsWith("-",r+1)){p=t;r+=2;continue}A.push(braceEscape(t));r++}if(u{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.escape=void 0;const escape=(e,{windowsPathsNoEscape:t=false}={})=>t?e.replace(/[?*()[\]]/g,"[$&]"):e.replace(/[?*()[\]\\]/g,"\\$&");t.escape=escape},6507:function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:true});t.unescape=t.escape=t.AST=t.Minimatch=t.match=t.makeRe=t.braceExpand=t.defaults=t.filter=t.GLOBSTAR=t.sep=t.minimatch=void 0;const A=i(s(4691));const o=s(7305);const r=s(1803);const n=s(800);const a=s(851);const minimatch=(e,t,s={})=>{(0,o.assertValidPattern)(t);if(!s.nocomment&&t.charAt(0)==="#"){return false}return new Minimatch(t,s).match(e)};t.minimatch=minimatch;const c=/^\*+([^+@!?\*\[\(]*)$/;const starDotExtTest=e=>t=>!t.startsWith(".")&&t.endsWith(e);const starDotExtTestDot=e=>t=>t.endsWith(e);const starDotExtTestNocase=e=>{e=e.toLowerCase();return t=>!t.startsWith(".")&&t.toLowerCase().endsWith(e)};const starDotExtTestNocaseDot=e=>{e=e.toLowerCase();return t=>t.toLowerCase().endsWith(e)};const l=/^\*+\.\*+$/;const starDotStarTest=e=>!e.startsWith(".")&&e.includes(".");const starDotStarTestDot=e=>e!=="."&&e!==".."&&e.includes(".");const u=/^\.\*+$/;const dotStarTest=e=>e!=="."&&e!==".."&&e.startsWith(".");const p=/^\*+$/;const starTest=e=>e.length!==0&&!e.startsWith(".");const starTestDot=e=>e.length!==0&&e!=="."&&e!=="..";const g=/^\?+([^+@!?\*\[\(]*)?$/;const qmarksTestNocase=([e,t=""])=>{const s=qmarksTestNoExt([e]);if(!t)return s;t=t.toLowerCase();return e=>s(e)&&e.toLowerCase().endsWith(t)};const qmarksTestNocaseDot=([e,t=""])=>{const s=qmarksTestNoExtDot([e]);if(!t)return s;t=t.toLowerCase();return e=>s(e)&&e.toLowerCase().endsWith(t)};const qmarksTestDot=([e,t=""])=>{const s=qmarksTestNoExtDot([e]);return!t?s:e=>s(e)&&e.endsWith(t)};const qmarksTest=([e,t=""])=>{const s=qmarksTestNoExt([e]);return!t?s:e=>s(e)&&e.endsWith(t)};const qmarksTestNoExt=([e])=>{const t=e.length;return e=>e.length===t&&!e.startsWith(".")};const qmarksTestNoExtDot=([e])=>{const t=e.length;return e=>e.length===t&&e!=="."&&e!==".."};const h=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix";const d={win32:{sep:"\\"},posix:{sep:"/"}};t.sep=h==="win32"?d.win32.sep:d.posix.sep;t.minimatch.sep=t.sep;t.GLOBSTAR=Symbol("globstar **");t.minimatch.GLOBSTAR=t.GLOBSTAR;const E="[^/]";const Q=E+"*?";const C="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?";const B="(?:(?!(?:\\/|^)\\.).)*?";const filter=(e,s={})=>i=>(0,t.minimatch)(i,e,s);t.filter=filter;t.minimatch.filter=t.filter;const ext=(e,t={})=>Object.assign({},e,t);const defaults=e=>{if(!e||typeof e!=="object"||!Object.keys(e).length){return t.minimatch}const s=t.minimatch;const m=(t,i,A={})=>s(t,i,ext(e,A));return Object.assign(m,{Minimatch:class Minimatch extends s.Minimatch{constructor(t,s={}){super(t,ext(e,s))}static defaults(t){return s.defaults(ext(e,t)).Minimatch}},AST:class AST extends s.AST{constructor(t,s,i={}){super(t,s,ext(e,i))}static fromGlob(t,i={}){return s.AST.fromGlob(t,ext(e,i))}},unescape:(t,i={})=>s.unescape(t,ext(e,i)),escape:(t,i={})=>s.escape(t,ext(e,i)),filter:(t,i={})=>s.filter(t,ext(e,i)),defaults:t=>s.defaults(ext(e,t)),makeRe:(t,i={})=>s.makeRe(t,ext(e,i)),braceExpand:(t,i={})=>s.braceExpand(t,ext(e,i)),match:(t,i,A={})=>s.match(t,i,ext(e,A)),sep:s.sep,GLOBSTAR:t.GLOBSTAR})};t.defaults=defaults;t.minimatch.defaults=t.defaults;const braceExpand=(e,t={})=>{(0,o.assertValidPattern)(e);if(t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)){return[e]}return(0,A.default)(e)};t.braceExpand=braceExpand;t.minimatch.braceExpand=t.braceExpand;const makeRe=(e,t={})=>new Minimatch(e,t).makeRe();t.makeRe=makeRe;t.minimatch.makeRe=t.makeRe;const match=(e,t,s={})=>{const i=new Minimatch(t,s);e=e.filter((e=>i.match(e)));if(i.options.nonull&&!e.length){e.push(t)}return e};t.match=match;t.minimatch.match=t.match;const I=/[?*]|[+@!]\(.*?\)|\[|\]/;const regExpEscape=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");class Minimatch{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(e,t={}){(0,o.assertValidPattern)(e);t=t||{};this.options=t;this.pattern=e;this.platform=t.platform||h;this.isWindows=this.platform==="win32";this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||t.allowWindowsEscape===false;if(this.windowsPathsNoEscape){this.pattern=this.pattern.replace(/\\/g,"/")}this.preserveMultipleSlashes=!!t.preserveMultipleSlashes;this.regexp=null;this.negate=false;this.nonegate=!!t.nonegate;this.comment=false;this.empty=false;this.partial=!!t.partial;this.nocase=!!this.options.nocase;this.windowsNoMagicRoot=t.windowsNoMagicRoot!==undefined?t.windowsNoMagicRoot:!!(this.isWindows&&this.nocase);this.globSet=[];this.globParts=[];this.set=[];this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1){return true}for(const e of this.set){for(const t of e){if(typeof t!=="string")return true}}return false}debug(...e){}make(){const e=this.pattern;const t=this.options;if(!t.nocomment&&e.charAt(0)==="#"){this.comment=true;return}if(!e){this.empty=true;return}this.parseNegate();this.globSet=[...new Set(this.braceExpand())];if(t.debug){this.debug=(...e)=>console.error(...e)}this.debug(this.pattern,this.globSet);const s=this.globSet.map((e=>this.slashSplit(e)));this.globParts=this.preprocess(s);this.debug(this.pattern,this.globParts);let i=this.globParts.map(((e,t,s)=>{if(this.isWindows&&this.windowsNoMagicRoot){const t=e[0]===""&&e[1]===""&&(e[2]==="?"||!I.test(e[2]))&&!I.test(e[3]);const s=/^[a-z]:/i.test(e[0]);if(t){return[...e.slice(0,4),...e.slice(4).map((e=>this.parse(e)))]}else if(s){return[e[0],...e.slice(1).map((e=>this.parse(e)))]}}return e.map((e=>this.parse(e)))}));this.debug(this.pattern,i);this.set=i.filter((e=>e.indexOf(false)===-1));if(this.isWindows){for(let e=0;e=2){e=this.firstPhasePreProcess(e);e=this.secondPhasePreProcess(e)}else if(t>=1){e=this.levelOneOptimize(e)}else{e=this.adjascentGlobstarOptimize(e)}return e}adjascentGlobstarOptimize(e){return e.map((e=>{let t=-1;while(-1!==(t=e.indexOf("**",t+1))){let s=t;while(e[s+1]==="**"){s++}if(s!==t){e.splice(t,s-t)}}return e}))}levelOneOptimize(e){return e.map((e=>{e=e.reduce(((e,t)=>{const s=e[e.length-1];if(t==="**"&&s==="**"){return e}if(t===".."){if(s&&s!==".."&&s!=="."&&s!=="**"){e.pop();return e}}e.push(t);return e}),[]);return e.length===0?[""]:e}))}levelTwoFileOptimize(e){if(!Array.isArray(e)){e=this.slashSplit(e)}let t=false;do{t=false;if(!this.preserveMultipleSlashes){for(let s=1;si){s.splice(i+1,A-i)}let o=s[i+1];const r=s[i+2];const n=s[i+3];if(o!=="..")continue;if(!r||r==="."||r===".."||!n||n==="."||n===".."){continue}t=true;s.splice(i,1);const a=s.slice(0);a[i]="**";e.push(a);i--}if(!this.preserveMultipleSlashes){for(let e=1;ee.length))}partsMatch(e,t,s=false){let i=0;let A=0;let o=[];let r="";while(ir){s=s.slice(n)}else if(r>n){e=e.slice(r)}}}}const{optimizationLevel:o=1}=this.options;if(o>=2){e=this.levelTwoFileOptimize(e)}this.debug("matchOne",this,{file:e,pattern:s});this.debug("matchOne",e.length,s.length);for(var r=0,n=0,a=e.length,c=s.length;r>> no match, partial?",e,p,s,g);if(p===a){return true}}return false}let o;if(typeof l==="string"){o=u===l;this.debug("string match",l,u,o)}else{o=l.test(u);this.debug("pattern match",l,u,o)}if(!o)return false}if(r===a&&n===c){return true}else if(r===a){return i}else if(n===c){return r===a-1&&e[r]===""}else{throw new Error("wtf?")}}braceExpand(){return(0,t.braceExpand)(this.pattern,this.options)}parse(e){(0,o.assertValidPattern)(e);const s=this.options;if(e==="**")return t.GLOBSTAR;if(e==="")return"";let i;let A=null;if(i=e.match(p)){A=s.dot?starTestDot:starTest}else if(i=e.match(c)){A=(s.nocase?s.dot?starDotExtTestNocaseDot:starDotExtTestNocase:s.dot?starDotExtTestDot:starDotExtTest)(i[1])}else if(i=e.match(g)){A=(s.nocase?s.dot?qmarksTestNocaseDot:qmarksTestNocase:s.dot?qmarksTestDot:qmarksTest)(i)}else if(i=e.match(l)){A=s.dot?starDotStarTestDot:starDotStarTest}else if(i=e.match(u)){A=dotStarTest}const n=r.AST.fromGlob(e,this.options).toMMPattern();if(A&&typeof n==="object"){Reflect.defineProperty(n,"test",{value:A})}return n}makeRe(){if(this.regexp||this.regexp===false)return this.regexp;const e=this.set;if(!e.length){this.regexp=false;return this.regexp}const s=this.options;const i=s.noglobstar?Q:s.dot?C:B;const A=new Set(s.nocase?["i"]:[]);let o=e.map((e=>{const s=e.map((e=>{if(e instanceof RegExp){for(const t of e.flags.split(""))A.add(t)}return typeof e==="string"?regExpEscape(e):e===t.GLOBSTAR?t.GLOBSTAR:e._src}));s.forEach(((e,A)=>{const o=s[A+1];const r=s[A-1];if(e!==t.GLOBSTAR||r===t.GLOBSTAR){return}if(r===undefined){if(o!==undefined&&o!==t.GLOBSTAR){s[A+1]="(?:\\/|"+i+"\\/)?"+o}else{s[A]=i}}else if(o===undefined){s[A-1]=r+"(?:\\/|"+i+")?"}else if(o!==t.GLOBSTAR){s[A-1]=r+"(?:\\/|\\/"+i+"\\/)"+o;s[A+1]=t.GLOBSTAR}}));return s.filter((e=>e!==t.GLOBSTAR)).join("/")})).join("|");const[r,n]=e.length>1?["(?:",")"]:["",""];o="^"+r+o+n+"$";if(this.negate)o="^(?!"+o+").+$";try{this.regexp=new RegExp(o,[...A].join(""))}catch(e){this.regexp=false}return this.regexp}slashSplit(e){if(this.preserveMultipleSlashes){return e.split("/")}else if(this.isWindows&&/^\/\/[^\/]+/.test(e)){return["",...e.split(/\/+/)]}else{return e.split(/\/+/)}}match(e,t=this.partial){this.debug("match",e,this.pattern);if(this.comment){return false}if(this.empty){return e===""}if(e==="/"&&t){return true}const s=this.options;if(this.isWindows){e=e.split("\\").join("/")}const i=this.slashSplit(e);this.debug(this.pattern,"split",i);const A=this.set;this.debug(this.pattern,"set",A);let o=i[i.length-1];if(!o){for(let e=i.length-2;!o&&e>=0;e--){o=i[e]}}for(let e=0;e{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.unescape=void 0;const unescape=(e,{windowsPathsNoEscape:t=false}={})=>t?e.replace(/\[([^\/\\])\]/g,"$1"):e.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1");t.unescape=unescape},8275:function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:true});t.Minipass=t.isWritable=t.isReadable=t.isStream=void 0;const A=typeof process==="object"&&process?process:{stdout:null,stderr:null};const o=s(8474);const r=i(s(7075));const n=s(6193);const isStream=e=>!!e&&typeof e==="object"&&(e instanceof Minipass||e instanceof r.default||(0,t.isReadable)(e)||(0,t.isWritable)(e));t.isStream=isStream;const isReadable=e=>!!e&&typeof e==="object"&&e instanceof o.EventEmitter&&typeof e.pipe==="function"&&e.pipe!==r.default.Writable.prototype.pipe;t.isReadable=isReadable;const isWritable=e=>!!e&&typeof e==="object"&&e instanceof o.EventEmitter&&typeof e.write==="function"&&typeof e.end==="function";t.isWritable=isWritable;const a=Symbol("EOF");const c=Symbol("maybeEmitEnd");const l=Symbol("emittedEnd");const u=Symbol("emittingEnd");const p=Symbol("emittedError");const g=Symbol("closed");const h=Symbol("read");const d=Symbol("flush");const E=Symbol("flushChunk");const Q=Symbol("encoding");const C=Symbol("decoder");const B=Symbol("flowing");const I=Symbol("paused");const b=Symbol("resume");const y=Symbol("buffer");const w=Symbol("pipes");const v=Symbol("bufferLength");const k=Symbol("bufferPush");const R=Symbol("bufferShift");const x=Symbol("objectMode");const D=Symbol("destroyed");const S=Symbol("error");const F=Symbol("emitData");const T=Symbol("emitEnd");const N=Symbol("emitEnd2");const U=Symbol("async");const L=Symbol("abort");const G=Symbol("aborted");const M=Symbol("signal");const _=Symbol("dataListeners");const O=Symbol("discarded");const defer=e=>Promise.resolve().then(e);const nodefer=e=>e();const isEndish=e=>e==="end"||e==="finish"||e==="prefinish";const isArrayBufferLike=e=>e instanceof ArrayBuffer||!!e&&typeof e==="object"&&e.constructor&&e.constructor.name==="ArrayBuffer"&&e.byteLength>=0;const isArrayBufferView=e=>!Buffer.isBuffer(e)&&ArrayBuffer.isView(e);class Pipe{src;dest;opts;ondrain;constructor(e,t,s){this.src=e;this.dest=t;this.opts=s;this.ondrain=()=>e[b]();this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(e){}end(){this.unpipe();if(this.opts.end)this.dest.end()}}class PipeProxyErrors extends Pipe{unpipe(){this.src.removeListener("error",this.proxyErrors);super.unpipe()}constructor(e,t,s){super(e,t,s);this.proxyErrors=e=>t.emit("error",e);e.on("error",this.proxyErrors)}}const isObjectModeOptions=e=>!!e.objectMode;const isEncodingOptions=e=>!e.objectMode&&!!e.encoding&&e.encoding!=="buffer";class Minipass extends o.EventEmitter{[B]=false;[I]=false;[w]=[];[y]=[];[x];[Q];[U];[C];[a]=false;[l]=false;[u]=false;[g]=false;[p]=null;[v]=0;[D]=false;[M];[G]=false;[_]=0;[O]=false;writable=true;readable=true;constructor(...e){const t=e[0]||{};super();if(t.objectMode&&typeof t.encoding==="string"){throw new TypeError("Encoding and objectMode may not be used together")}if(isObjectModeOptions(t)){this[x]=true;this[Q]=null}else if(isEncodingOptions(t)){this[Q]=t.encoding;this[x]=false}else{this[x]=false;this[Q]=null}this[U]=!!t.async;this[C]=this[Q]?new n.StringDecoder(this[Q]):null;if(t&&t.debugExposeBuffer===true){Object.defineProperty(this,"buffer",{get:()=>this[y]})}if(t&&t.debugExposePipes===true){Object.defineProperty(this,"pipes",{get:()=>this[w]})}const{signal:s}=t;if(s){this[M]=s;if(s.aborted){this[L]()}else{s.addEventListener("abort",(()=>this[L]()))}}}get bufferLength(){return this[v]}get encoding(){return this[Q]}set encoding(e){throw new Error("Encoding must be set at instantiation time")}setEncoding(e){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[x]}set objectMode(e){throw new Error("objectMode must be set at instantiation time")}get["async"](){return this[U]}set["async"](e){this[U]=this[U]||!!e}[L](){this[G]=true;this.emit("abort",this[M]?.reason);this.destroy(this[M]?.reason)}get aborted(){return this[G]}set aborted(e){}write(e,t,s){if(this[G])return false;if(this[a])throw new Error("write after end");if(this[D]){this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"}));return true}if(typeof t==="function"){s=t;t="utf8"}if(!t)t="utf8";const i=this[U]?defer:nodefer;if(!this[x]&&!Buffer.isBuffer(e)){if(isArrayBufferView(e)){e=Buffer.from(e.buffer,e.byteOffset,e.byteLength)}else if(isArrayBufferLike(e)){e=Buffer.from(e)}else if(typeof e!=="string"){throw new Error("Non-contiguous data written to non-objectMode stream")}}if(this[x]){if(this[B]&&this[v]!==0)this[d](true);if(this[B])this.emit("data",e);else this[k](e);if(this[v]!==0)this.emit("readable");if(s)i(s);return this[B]}if(!e.length){if(this[v]!==0)this.emit("readable");if(s)i(s);return this[B]}if(typeof e==="string"&&!(t===this[Q]&&!this[C]?.lastNeed)){e=Buffer.from(e,t)}if(Buffer.isBuffer(e)&&this[Q]){e=this[C].write(e)}if(this[B]&&this[v]!==0)this[d](true);if(this[B])this.emit("data",e);else this[k](e);if(this[v]!==0)this.emit("readable");if(s)i(s);return this[B]}read(e){if(this[D])return null;this[O]=false;if(this[v]===0||e===0||e&&e>this[v]){this[c]();return null}if(this[x])e=null;if(this[y].length>1&&!this[x]){this[y]=[this[Q]?this[y].join(""):Buffer.concat(this[y],this[v])]}const t=this[h](e||null,this[y][0]);this[c]();return t}[h](e,t){if(this[x])this[R]();else{const s=t;if(e===s.length||e===null)this[R]();else if(typeof s==="string"){this[y][0]=s.slice(e);t=s.slice(0,e);this[v]-=e}else{this[y][0]=s.subarray(e);t=s.subarray(0,e);this[v]-=e}}this.emit("data",t);if(!this[y].length&&!this[a])this.emit("drain");return t}end(e,t,s){if(typeof e==="function"){s=e;e=undefined}if(typeof t==="function"){s=t;t="utf8"}if(e!==undefined)this.write(e,t);if(s)this.once("end",s);this[a]=true;this.writable=false;if(this[B]||!this[I])this[c]();return this}[b](){if(this[D])return;if(!this[_]&&!this[w].length){this[O]=true}this[I]=false;this[B]=true;this.emit("resume");if(this[y].length)this[d]();else if(this[a])this[c]();else this.emit("drain")}resume(){return this[b]()}pause(){this[B]=false;this[I]=true;this[O]=false}get destroyed(){return this[D]}get flowing(){return this[B]}get paused(){return this[I]}[k](e){if(this[x])this[v]+=1;else this[v]+=e.length;this[y].push(e)}[R](){if(this[x])this[v]-=1;else this[v]-=this[y][0].length;return this[y].shift()}[d](e=false){do{}while(this[E](this[R]())&&this[y].length);if(!e&&!this[y].length&&!this[a])this.emit("drain")}[E](e){this.emit("data",e);return this[B]}pipe(e,t){if(this[D])return e;this[O]=false;const s=this[l];t=t||{};if(e===A.stdout||e===A.stderr)t.end=false;else t.end=t.end!==false;t.proxyErrors=!!t.proxyErrors;if(s){if(t.end)e.end()}else{this[w].push(!t.proxyErrors?new Pipe(this,e,t):new PipeProxyErrors(this,e,t));if(this[U])defer((()=>this[b]()));else this[b]()}return e}unpipe(e){const t=this[w].find((t=>t.dest===e));if(t){if(this[w].length===1){if(this[B]&&this[_]===0){this[B]=false}this[w]=[]}else this[w].splice(this[w].indexOf(t),1);t.unpipe()}}addListener(e,t){return this.on(e,t)}on(e,t){const s=super.on(e,t);if(e==="data"){this[O]=false;this[_]++;if(!this[w].length&&!this[B]){this[b]()}}else if(e==="readable"&&this[v]!==0){super.emit("readable")}else if(isEndish(e)&&this[l]){super.emit(e);this.removeAllListeners(e)}else if(e==="error"&&this[p]){const e=t;if(this[U])defer((()=>e.call(this,this[p])));else e.call(this,this[p])}return s}removeListener(e,t){return this.off(e,t)}off(e,t){const s=super.off(e,t);if(e==="data"){this[_]=this.listeners("data").length;if(this[_]===0&&!this[O]&&!this[w].length){this[B]=false}}return s}removeAllListeners(e){const t=super.removeAllListeners(e);if(e==="data"||e===undefined){this[_]=0;if(!this[O]&&!this[w].length){this[B]=false}}return t}get emittedEnd(){return this[l]}[c](){if(!this[u]&&!this[l]&&!this[D]&&this[y].length===0&&this[a]){this[u]=true;this.emit("end");this.emit("prefinish");this.emit("finish");if(this[g])this.emit("close");this[u]=false}}emit(e,...t){const s=t[0];if(e!=="error"&&e!=="close"&&e!==D&&this[D]){return false}else if(e==="data"){return!this[x]&&!s?false:this[U]?(defer((()=>this[F](s))),true):this[F](s)}else if(e==="end"){return this[T]()}else if(e==="close"){this[g]=true;if(!this[l]&&!this[D])return false;const e=super.emit("close");this.removeAllListeners("close");return e}else if(e==="error"){this[p]=s;super.emit(S,s);const e=!this[M]||this.listeners("error").length?super.emit("error",s):false;this[c]();return e}else if(e==="resume"){const e=super.emit("resume");this[c]();return e}else if(e==="finish"||e==="prefinish"){const t=super.emit(e);this.removeAllListeners(e);return t}const i=super.emit(e,...t);this[c]();return i}[F](e){for(const t of this[w]){if(t.dest.write(e)===false)this.pause()}const t=this[O]?false:super.emit("data",e);this[c]();return t}[T](){if(this[l])return false;this[l]=true;this.readable=false;return this[U]?(defer((()=>this[N]())),true):this[N]()}[N](){if(this[C]){const e=this[C].end();if(e){for(const t of this[w]){t.dest.write(e)}if(!this[O])super.emit("data",e)}}for(const e of this[w]){e.end()}const e=super.emit("end");this.removeAllListeners("end");return e}async collect(){const e=Object.assign([],{dataLength:0});if(!this[x])e.dataLength=0;const t=this.promise();this.on("data",(t=>{e.push(t);if(!this[x])e.dataLength+=t.length}));await t;return e}async concat(){if(this[x]){throw new Error("cannot concat in objectMode")}const e=await this.collect();return this[Q]?e.join(""):Buffer.concat(e,e.dataLength)}async promise(){return new Promise(((e,t)=>{this.on(D,(()=>t(new Error("stream destroyed"))));this.on("error",(e=>t(e)));this.on("end",(()=>e()))}))}[Symbol.asyncIterator](){this[O]=false;let e=false;const stop=async()=>{this.pause();e=true;return{value:undefined,done:true}};const next=()=>{if(e)return stop();const t=this.read();if(t!==null)return Promise.resolve({done:false,value:t});if(this[a])return stop();let s;let i;const onerr=e=>{this.off("data",ondata);this.off("end",onend);this.off(D,ondestroy);stop();i(e)};const ondata=e=>{this.off("error",onerr);this.off("end",onend);this.off(D,ondestroy);this.pause();s({value:e,done:!!this[a]})};const onend=()=>{this.off("error",onerr);this.off("data",ondata);this.off(D,ondestroy);stop();s({done:true,value:undefined})};const ondestroy=()=>onerr(new Error("stream destroyed"));return new Promise(((e,t)=>{i=t;s=e;this.once(D,ondestroy);this.once("error",onerr);this.once("end",onend);this.once("data",ondata)}))};return{next:next,throw:stop,return:stop,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[O]=false;let e=false;const stop=()=>{this.pause();this.off(S,stop);this.off(D,stop);this.off("end",stop);e=true;return{done:true,value:undefined}};const next=()=>{if(e)return stop();const t=this.read();return t===null?stop():{done:false,value:t}};this.once("end",stop);this.once(S,stop);this.once(D,stop);return{next:next,throw:stop,return:stop,[Symbol.iterator](){return this}}}destroy(e){if(this[D]){if(e)this.emit("error",e);else this.emit(D);return this}this[D]=true;this[O]=true;this[y].length=0;this[v]=0;const t=this;if(typeof t.close==="function"&&!this[g])t.close();if(e)this.emit("error",e);else this.emit(D);return this}static get isStream(){return t.isStream}}t.Minipass=Minipass},6577:function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){if(i===undefined)i=s;var A=Object.getOwnPropertyDescriptor(t,s);if(!A||("get"in A?!t.__esModule:A.writable||A.configurable)){A={enumerable:true,get:function(){return t[s]}}}Object.defineProperty(e,i,A)}:function(e,t,s,i){if(i===undefined)i=s;e[i]=t[s]});var A=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:true,value:t})}:function(e,t){e["default"]=t});var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var s in e)if(s!=="default"&&Object.prototype.hasOwnProperty.call(e,s))i(t,e,s);A(t,e);return t};Object.defineProperty(t,"__esModule",{value:true});t.PathScurry=t.Path=t.PathScurryDarwin=t.PathScurryPosix=t.PathScurryWin32=t.PathScurryBase=t.PathPosix=t.PathWin32=t.PathBase=t.ChildrenCache=t.ResolveCache=void 0;const r=s(897);const n=s(6760);const a=s(3136);const c=s(9896);const l=o(s(3024));const u=c.realpathSync.native;const p=s(1455);const g=s(8275);const h={lstatSync:c.lstatSync,readdir:c.readdir,readdirSync:c.readdirSync,readlinkSync:c.readlinkSync,realpathSync:u,promises:{lstat:p.lstat,readdir:p.readdir,readlink:p.readlink,realpath:p.realpath}};const fsFromOption=e=>!e||e===h||e===l?h:{...h,...e,promises:{...h.promises,...e.promises||{}}};const d=/^\\\\\?\\([a-z]:)\\?$/i;const uncToDrive=e=>e.replace(/\//g,"\\").replace(d,"$1\\");const E=/[\\\/]/;const Q=0;const C=1;const B=2;const I=4;const b=6;const y=8;const w=10;const v=12;const k=15;const R=~k;const x=16;const D=32;const S=64;const F=128;const T=256;const N=512;const U=S|F|N;const L=1023;const entToType=e=>e.isFile()?y:e.isDirectory()?I:e.isSymbolicLink()?w:e.isCharacterDevice()?B:e.isBlockDevice()?b:e.isSocket()?v:e.isFIFO()?C:Q;const G=new Map;const normalize=e=>{const t=G.get(e);if(t)return t;const s=e.normalize("NFKD");G.set(e,s);return s};const M=new Map;const normalizeNocase=e=>{const t=M.get(e);if(t)return t;const s=normalize(e.toLowerCase());M.set(e,s);return s};class ResolveCache extends r.LRUCache{constructor(){super({max:256})}}t.ResolveCache=ResolveCache;class ChildrenCache extends r.LRUCache{constructor(e=16*1024){super({maxSize:e,sizeCalculation:e=>e.length+1})}}t.ChildrenCache=ChildrenCache;const _=Symbol("PathScurry setAsCwd");class PathBase{name;root;roots;parent;nocase;isCWD=false;#q;#W;get dev(){return this.#W}#j;get mode(){return this.#j}#z;get nlink(){return this.#z}#Z;get uid(){return this.#Z}#X;get gid(){return this.#X}#K;get rdev(){return this.#K}#$;get blksize(){return this.#$}#ee;get ino(){return this.#ee}#te;get size(){return this.#te}#se;get blocks(){return this.#se}#ie;get atimeMs(){return this.#ie}#Ae;get mtimeMs(){return this.#Ae}#oe;get ctimeMs(){return this.#oe}#re;get birthtimeMs(){return this.#re}#ne;get atime(){return this.#ne}#ae;get mtime(){return this.#ae}#ce;get ctime(){return this.#ce}#le;get birthtime(){return this.#le}#ue;#pe;#ge;#he;#de;#Ee;#fe;#Qe;#Ce;#me;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(e,t=Q,s,i,A,o,r){this.name=e;this.#ue=A?normalizeNocase(e):normalize(e);this.#fe=t&L;this.nocase=A;this.roots=i;this.root=s||this;this.#Qe=o;this.#ge=r.fullpath;this.#de=r.relative;this.#Ee=r.relativePosix;this.parent=r.parent;if(this.parent){this.#q=this.parent.#q}else{this.#q=fsFromOption(r.fs)}}depth(){if(this.#pe!==undefined)return this.#pe;if(!this.parent)return this.#pe=0;return this.#pe=this.parent.depth()+1}childrenCache(){return this.#Qe}resolve(e){if(!e){return this}const t=this.getRootString(e);const s=e.substring(t.length);const i=s.split(this.splitSep);const A=t?this.getRoot(t).#Be(i):this.#Be(i);return A}#Be(e){let t=this;for(const s of e){t=t.child(s)}return t}children(){const e=this.#Qe.get(this);if(e){return e}const t=Object.assign([],{provisional:0});this.#Qe.set(this,t);this.#fe&=~x;return t}child(e,t){if(e===""||e==="."){return this}if(e===".."){return this.parent||this}const s=this.children();const i=this.nocase?normalizeNocase(e):normalize(e);for(const e of s){if(e.#ue===i){return e}}const A=this.parent?this.sep:"";const o=this.#ge?this.#ge+A+e:undefined;const r=this.newChild(e,Q,{...t,parent:this,fullpath:o});if(!this.canReaddir()){r.#fe|=F}s.push(r);return r}relative(){if(this.isCWD)return"";if(this.#de!==undefined){return this.#de}const e=this.name;const t=this.parent;if(!t){return this.#de=this.name}const s=t.relative();return s+(!s||!t.parent?"":this.sep)+e}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#Ee!==undefined)return this.#Ee;const e=this.name;const t=this.parent;if(!t){return this.#Ee=this.fullpathPosix()}const s=t.relativePosix();return s+(!s||!t.parent?"":"/")+e}fullpath(){if(this.#ge!==undefined){return this.#ge}const e=this.name;const t=this.parent;if(!t){return this.#ge=this.name}const s=t.fullpath();const i=s+(!t.parent?"":this.sep)+e;return this.#ge=i}fullpathPosix(){if(this.#he!==undefined)return this.#he;if(this.sep==="/")return this.#he=this.fullpath();if(!this.parent){const e=this.fullpath().replace(/\\/g,"/");if(/^[a-z]:\//i.test(e)){return this.#he=`//?/${e}`}else{return this.#he=e}}const e=this.parent;const t=e.fullpathPosix();const s=t+(!t||!e.parent?"":"/")+this.name;return this.#he=s}isUnknown(){return(this.#fe&k)===Q}isType(e){return this[`is${e}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#fe&k)===y}isDirectory(){return(this.#fe&k)===I}isCharacterDevice(){return(this.#fe&k)===B}isBlockDevice(){return(this.#fe&k)===b}isFIFO(){return(this.#fe&k)===C}isSocket(){return(this.#fe&k)===v}isSymbolicLink(){return(this.#fe&w)===w}lstatCached(){return this.#fe&D?this:undefined}readlinkCached(){return this.#Ce}realpathCached(){return this.#me}readdirCached(){const e=this.children();return e.slice(0,e.provisional)}canReadlink(){if(this.#Ce)return true;if(!this.parent)return false;const e=this.#fe&k;return!(e!==Q&&e!==w||this.#fe&T||this.#fe&F)}calledReaddir(){return!!(this.#fe&x)}isENOENT(){return!!(this.#fe&F)}isNamed(e){return!this.nocase?this.#ue===normalize(e):this.#ue===normalizeNocase(e)}async readlink(){const e=this.#Ce;if(e){return e}if(!this.canReadlink()){return undefined}if(!this.parent){return undefined}try{const e=await this.#q.promises.readlink(this.fullpath());const t=(await this.parent.realpath())?.resolve(e);if(t){return this.#Ce=t}}catch(e){this.#Ie(e.code);return undefined}}readlinkSync(){const e=this.#Ce;if(e){return e}if(!this.canReadlink()){return undefined}if(!this.parent){return undefined}try{const e=this.#q.readlinkSync(this.fullpath());const t=this.parent.realpathSync()?.resolve(e);if(t){return this.#Ce=t}}catch(e){this.#Ie(e.code);return undefined}}#be(e){this.#fe|=x;for(let t=e.provisional;tt(null,e)))}readdirCB(e,t=false){if(!this.canReaddir()){if(t)e(null,[]);else queueMicrotask((()=>e(null,[])));return}const s=this.children();if(this.calledReaddir()){const i=s.slice(0,s.provisional);if(t)e(null,i);else queueMicrotask((()=>e(null,i)));return}this.#Ue.push(e);if(this.#Le){return}this.#Le=true;const i=this.fullpath();this.#q.readdir(i,{withFileTypes:true},((e,t)=>{if(e){this.#Re(e.code);s.provisional=0}else{for(const e of t){this.#De(e,s)}this.#be(s)}this.#Ge(s.slice(0,s.provisional));return}))}#Me;async readdir(){if(!this.canReaddir()){return[]}const e=this.children();if(this.calledReaddir()){return e.slice(0,e.provisional)}const t=this.fullpath();if(this.#Me){await this.#Me}else{let resolve=()=>{};this.#Me=new Promise((e=>resolve=e));try{for(const s of await this.#q.promises.readdir(t,{withFileTypes:true})){this.#De(s,e)}this.#be(e)}catch(t){this.#Re(t.code);e.provisional=0}this.#Me=undefined;resolve()}return e.slice(0,e.provisional)}readdirSync(){if(!this.canReaddir()){return[]}const e=this.children();if(this.calledReaddir()){return e.slice(0,e.provisional)}const t=this.fullpath();try{for(const s of this.#q.readdirSync(t,{withFileTypes:true})){this.#De(s,e)}this.#be(e)}catch(t){this.#Re(t.code);e.provisional=0}return e.slice(0,e.provisional)}canReaddir(){if(this.#fe&U)return false;const e=k&this.#fe;if(!(e===Q||e===I||e===w)){return false}return true}shouldWalk(e,t){return(this.#fe&I)===I&&!(this.#fe&U)&&!e.has(this)&&(!t||t(this))}async realpath(){if(this.#me)return this.#me;if((N|T|F)&this.#fe)return undefined;try{const e=await this.#q.promises.realpath(this.fullpath());return this.#me=this.resolve(e)}catch(e){this.#ve()}}realpathSync(){if(this.#me)return this.#me;if((N|T|F)&this.#fe)return undefined;try{const e=this.#q.realpathSync(this.fullpath());return this.#me=this.resolve(e)}catch(e){this.#ve()}}[_](e){if(e===this)return;e.isCWD=false;this.isCWD=true;const t=new Set([]);let s=[];let i=this;while(i&&i.parent){t.add(i);i.#de=s.join(this.sep);i.#Ee=s.join("/");i=i.parent;s.push("..")}i=e;while(i&&i.parent&&!t.has(i)){i.#de=undefined;i.#Ee=undefined;i=i.parent}}}t.PathBase=PathBase;class PathWin32 extends PathBase{sep="\\";splitSep=E;constructor(e,t=Q,s,i,A,o,r){super(e,t,s,i,A,o,r)}newChild(e,t=Q,s={}){return new PathWin32(e,t,this.root,this.roots,this.nocase,this.childrenCache(),s)}getRootString(e){return n.win32.parse(e).root}getRoot(e){e=uncToDrive(e.toUpperCase());if(e===this.root.name){return this.root}for(const[t,s]of Object.entries(this.roots)){if(this.sameRoot(e,t)){return this.roots[e]=s}}return this.roots[e]=new PathScurryWin32(e,this).root}sameRoot(e,t=this.root.name){e=e.toUpperCase().replace(/\//g,"\\").replace(d,"$1\\");return e===t}}t.PathWin32=PathWin32;class PathPosix extends PathBase{splitSep="/";sep="/";constructor(e,t=Q,s,i,A,o,r){super(e,t,s,i,A,o,r)}getRootString(e){return e.startsWith("/")?"/":""}getRoot(e){return this.root}newChild(e,t=Q,s={}){return new PathPosix(e,t,this.root,this.roots,this.nocase,this.childrenCache(),s)}}t.PathPosix=PathPosix;class PathScurryBase{root;rootPath;roots;cwd;#_e;#Oe;#Qe;nocase;#q;constructor(e=process.cwd(),t,s,{nocase:i,childrenCacheSize:A=16*1024,fs:o=h}={}){this.#q=fsFromOption(o);if(e instanceof URL||e.startsWith("file://")){e=(0,a.fileURLToPath)(e)}const r=t.resolve(e);this.roots=Object.create(null);this.rootPath=this.parseRootPath(r);this.#_e=new ResolveCache;this.#Oe=new ResolveCache;this.#Qe=new ChildrenCache(A);const n=r.substring(this.rootPath.length).split(s);if(n.length===1&&!n[0]){n.pop()}if(i===undefined){throw new TypeError("must provide nocase setting to PathScurryBase ctor")}this.nocase=i;this.root=this.newRoot(this.#q);this.roots[this.rootPath]=this.root;let c=this.root;let l=n.length-1;const u=t.sep;let p=this.rootPath;let g=false;for(const e of n){const t=l--;c=c.child(e,{relative:new Array(t).fill("..").join(u),relativePosix:new Array(t).fill("..").join("/"),fullpath:p+=(g?"":u)+e});g=true}this.cwd=c}depth(e=this.cwd){if(typeof e==="string"){e=this.cwd.resolve(e)}return e.depth()}childrenCache(){return this.#Qe}resolve(...e){let t="";for(let s=e.length-1;s>=0;s--){const i=e[s];if(!i||i===".")continue;t=t?`${i}/${t}`:i;if(this.isAbsolute(i)){break}}const s=this.#_e.get(t);if(s!==undefined){return s}const i=this.cwd.resolve(t).fullpath();this.#_e.set(t,i);return i}resolvePosix(...e){let t="";for(let s=e.length-1;s>=0;s--){const i=e[s];if(!i||i===".")continue;t=t?`${i}/${t}`:i;if(this.isAbsolute(i)){break}}const s=this.#Oe.get(t);if(s!==undefined){return s}const i=this.cwd.resolve(t).fullpathPosix();this.#Oe.set(t,i);return i}relative(e=this.cwd){if(typeof e==="string"){e=this.cwd.resolve(e)}return e.relative()}relativePosix(e=this.cwd){if(typeof e==="string"){e=this.cwd.resolve(e)}return e.relativePosix()}basename(e=this.cwd){if(typeof e==="string"){e=this.cwd.resolve(e)}return e.name}dirname(e=this.cwd){if(typeof e==="string"){e=this.cwd.resolve(e)}return(e.parent||e).fullpath()}async readdir(e=this.cwd,t={withFileTypes:true}){if(typeof e==="string"){e=this.cwd.resolve(e)}else if(!(e instanceof PathBase)){t=e;e=this.cwd}const{withFileTypes:s}=t;if(!e.canReaddir()){return[]}else{const t=await e.readdir();return s?t:t.map((e=>e.name))}}readdirSync(e=this.cwd,t={withFileTypes:true}){if(typeof e==="string"){e=this.cwd.resolve(e)}else if(!(e instanceof PathBase)){t=e;e=this.cwd}const{withFileTypes:s=true}=t;if(!e.canReaddir()){return[]}else if(s){return e.readdirSync()}else{return e.readdirSync().map((e=>e.name))}}async lstat(e=this.cwd){if(typeof e==="string"){e=this.cwd.resolve(e)}return e.lstat()}lstatSync(e=this.cwd){if(typeof e==="string"){e=this.cwd.resolve(e)}return e.lstatSync()}async readlink(e=this.cwd,{withFileTypes:t}={withFileTypes:false}){if(typeof e==="string"){e=this.cwd.resolve(e)}else if(!(e instanceof PathBase)){t=e.withFileTypes;e=this.cwd}const s=await e.readlink();return t?s:s?.fullpath()}readlinkSync(e=this.cwd,{withFileTypes:t}={withFileTypes:false}){if(typeof e==="string"){e=this.cwd.resolve(e)}else if(!(e instanceof PathBase)){t=e.withFileTypes;e=this.cwd}const s=e.readlinkSync();return t?s:s?.fullpath()}async realpath(e=this.cwd,{withFileTypes:t}={withFileTypes:false}){if(typeof e==="string"){e=this.cwd.resolve(e)}else if(!(e instanceof PathBase)){t=e.withFileTypes;e=this.cwd}const s=await e.realpath();return t?s:s?.fullpath()}realpathSync(e=this.cwd,{withFileTypes:t}={withFileTypes:false}){if(typeof e==="string"){e=this.cwd.resolve(e)}else if(!(e instanceof PathBase)){t=e.withFileTypes;e=this.cwd}const s=e.realpathSync();return t?s:s?.fullpath()}async walk(e=this.cwd,t={}){if(typeof e==="string"){e=this.cwd.resolve(e)}else if(!(e instanceof PathBase)){t=e;e=this.cwd}const{withFileTypes:s=true,follow:i=false,filter:A,walkFilter:o}=t;const r=[];if(!A||A(e)){r.push(s?e:e.fullpath())}const n=new Set;const walk=(e,t)=>{n.add(e);e.readdirCB(((e,a)=>{if(e){return t(e)}let c=a.length;if(!c)return t();const next=()=>{if(--c===0){t()}};for(const e of a){if(!A||A(e)){r.push(s?e:e.fullpath())}if(i&&e.isSymbolicLink()){e.realpath().then((e=>e?.isUnknown()?e.lstat():e)).then((e=>e?.shouldWalk(n,o)?walk(e,next):next()))}else{if(e.shouldWalk(n,o)){walk(e,next)}else{next()}}}}),true)};const a=e;return new Promise(((e,t)=>{walk(a,(s=>{if(s)return t(s);e(r)}))}))}walkSync(e=this.cwd,t={}){if(typeof e==="string"){e=this.cwd.resolve(e)}else if(!(e instanceof PathBase)){t=e;e=this.cwd}const{withFileTypes:s=true,follow:i=false,filter:A,walkFilter:o}=t;const r=[];if(!A||A(e)){r.push(s?e:e.fullpath())}const n=new Set([e]);for(const e of n){const t=e.readdirSync();for(const e of t){if(!A||A(e)){r.push(s?e:e.fullpath())}let t=e;if(e.isSymbolicLink()){if(!(i&&(t=e.realpathSync())))continue;if(t.isUnknown())t.lstatSync()}if(t.shouldWalk(n,o)){n.add(t)}}}return r}[Symbol.asyncIterator](){return this.iterate()}iterate(e=this.cwd,t={}){if(typeof e==="string"){e=this.cwd.resolve(e)}else if(!(e instanceof PathBase)){t=e;e=this.cwd}return this.stream(e,t)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(e=this.cwd,t={}){if(typeof e==="string"){e=this.cwd.resolve(e)}else if(!(e instanceof PathBase)){t=e;e=this.cwd}const{withFileTypes:s=true,follow:i=false,filter:A,walkFilter:o}=t;if(!A||A(e)){yield s?e:e.fullpath()}const r=new Set([e]);for(const e of r){const t=e.readdirSync();for(const e of t){if(!A||A(e)){yield s?e:e.fullpath()}let t=e;if(e.isSymbolicLink()){if(!(i&&(t=e.realpathSync())))continue;if(t.isUnknown())t.lstatSync()}if(t.shouldWalk(r,o)){r.add(t)}}}}stream(e=this.cwd,t={}){if(typeof e==="string"){e=this.cwd.resolve(e)}else if(!(e instanceof PathBase)){t=e;e=this.cwd}const{withFileTypes:s=true,follow:i=false,filter:A,walkFilter:o}=t;const r=new g.Minipass({objectMode:true});if(!A||A(e)){r.write(s?e:e.fullpath())}const n=new Set;const a=[e];let c=0;const process=()=>{let e=false;while(!e){const t=a.shift();if(!t){if(c===0)r.end();return}c++;n.add(t);const onReaddir=(t,u,p=false)=>{if(t)return r.emit("error",t);if(i&&!p){const e=[];for(const t of u){if(t.isSymbolicLink()){e.push(t.realpath().then((e=>e?.isUnknown()?e.lstat():e)))}}if(e.length){Promise.all(e).then((()=>onReaddir(null,u,true)));return}}for(const t of u){if(t&&(!A||A(t))){if(!r.write(s?t:t.fullpath())){e=true}}}c--;for(const e of u){const t=e.realpathCached()||e;if(t.shouldWalk(n,o)){a.push(t)}}if(e&&!r.flowing){r.once("drain",process)}else if(!l){process()}};let l=true;t.readdirCB(onReaddir,true);l=false}};process();return r}streamSync(e=this.cwd,t={}){if(typeof e==="string"){e=this.cwd.resolve(e)}else if(!(e instanceof PathBase)){t=e;e=this.cwd}const{withFileTypes:s=true,follow:i=false,filter:A,walkFilter:o}=t;const r=new g.Minipass({objectMode:true});const n=new Set;if(!A||A(e)){r.write(s?e:e.fullpath())}const a=[e];let c=0;const process=()=>{let e=false;while(!e){const t=a.shift();if(!t){if(c===0)r.end();return}c++;n.add(t);const l=t.readdirSync();for(const t of l){if(!A||A(t)){if(!r.write(s?t:t.fullpath())){e=true}}}c--;for(const e of l){let t=e;if(e.isSymbolicLink()){if(!(i&&(t=e.realpathSync())))continue;if(t.isUnknown())t.lstatSync()}if(t.shouldWalk(n,o)){a.push(t)}}}if(e&&!r.flowing)r.once("drain",process)};process();return r}chdir(e=this.cwd){const t=this.cwd;this.cwd=typeof e==="string"?this.cwd.resolve(e):e;this.cwd[_](t)}}t.PathScurryBase=PathScurryBase;class PathScurryWin32 extends PathScurryBase{sep="\\";constructor(e=process.cwd(),t={}){const{nocase:s=true}=t;super(e,n.win32,"\\",{...t,nocase:s});this.nocase=s;for(let e=this.cwd;e;e=e.parent){e.nocase=this.nocase}}parseRootPath(e){return n.win32.parse(e).root.toUpperCase()}newRoot(e){return new PathWin32(this.rootPath,I,undefined,this.roots,this.nocase,this.childrenCache(),{fs:e})}isAbsolute(e){return e.startsWith("/")||e.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(e)}}t.PathScurryWin32=PathScurryWin32;class PathScurryPosix extends PathScurryBase{sep="/";constructor(e=process.cwd(),t={}){const{nocase:s=false}=t;super(e,n.posix,"/",{...t,nocase:s});this.nocase=s}parseRootPath(e){return"/"}newRoot(e){return new PathPosix(this.rootPath,I,undefined,this.roots,this.nocase,this.childrenCache(),{fs:e})}isAbsolute(e){return e.startsWith("/")}}t.PathScurryPosix=PathScurryPosix;class PathScurryDarwin extends PathScurryPosix{constructor(e=process.cwd(),t={}){const{nocase:s=true}=t;super(e,{...t,nocase:s})}}t.PathScurryDarwin=PathScurryDarwin;t.Path=process.platform==="win32"?PathWin32:PathPosix;t.PathScurry=process.platform==="win32"?PathScurryWin32:process.platform==="darwin"?PathScurryDarwin:PathScurryPosix},897:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.LRUCache=void 0;const s=typeof performance==="object"&&performance&&typeof performance.now==="function"?performance:Date;const i=new Set;const A=typeof process==="object"&&!!process?process:{};const emitWarning=(e,t,s,i)=>{typeof A.emitWarning==="function"?A.emitWarning(e,t,s,i):console.error(`[${s}] ${t}: ${e}`)};let o=globalThis.AbortController;let r=globalThis.AbortSignal;if(typeof o==="undefined"){r=class AbortSignal{onabort;_onabort=[];reason;aborted=false;addEventListener(e,t){this._onabort.push(t)}};o=class AbortController{constructor(){warnACPolyfill()}signal=new r;abort(e){if(this.signal.aborted)return;this.signal.reason=e;this.signal.aborted=true;for(const t of this.signal._onabort){t(e)}this.signal.onabort?.(e)}};let e=A.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1";const warnACPolyfill=()=>{if(!e)return;e=false;emitWarning("AbortController is not defined. If using lru-cache in "+"node 14, load an AbortController polyfill from the "+"`node-abort-controller` package. A minimal polyfill is "+"provided for use by LRUCache.fetch(), but it should not be "+"relied upon in other contexts (eg, passing it to other APIs that "+"use AbortController/AbortSignal might have undesirable effects). "+"You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",warnACPolyfill)}}const shouldWarn=e=>!i.has(e);const n=Symbol("type");const isPosInt=e=>e&&e===Math.floor(e)&&e>0&&isFinite(e);const getUintArray=e=>!isPosInt(e)?null:e<=Math.pow(2,8)?Uint8Array:e<=Math.pow(2,16)?Uint16Array:e<=Math.pow(2,32)?Uint32Array:e<=Number.MAX_SAFE_INTEGER?ZeroArray:null;class ZeroArray extends Array{constructor(e){super(e);this.fill(0)}}class Stack{heap;length;static#Pe=false;static create(e){const t=getUintArray(e);if(!t)return[];Stack.#Pe=true;const s=new Stack(e,t);Stack.#Pe=false;return s}constructor(e,t){if(!Stack.#Pe){throw new TypeError("instantiate Stack using Stack.create(n)")}this.heap=new t(e);this.length=0}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}}class LRUCache{#He;#Ye;#Je;#Ve;#qe;#We;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#te;#je;#ze;#Ze;#Xe;#Ke;#$e;#et;#tt;#st;#it;#At;#ot;#rt;#nt;#at;#ct;static unsafeExposeInternals(e){return{starts:e.#ot,ttls:e.#rt,sizes:e.#At,keyMap:e.#ze,keyList:e.#Ze,valList:e.#Xe,next:e.#Ke,prev:e.#$e,get head(){return e.#et},get tail(){return e.#tt},free:e.#st,isBackgroundFetch:t=>e.#lt(t),backgroundFetch:(t,s,i,A)=>e.#ut(t,s,i,A),moveToTail:t=>e.#pt(t),indexes:t=>e.#gt(t),rindexes:t=>e.#ht(t),isStale:t=>e.#dt(t)}}get max(){return this.#He}get maxSize(){return this.#Ye}get calculatedSize(){return this.#je}get size(){return this.#te}get fetchMethod(){return this.#qe}get memoMethod(){return this.#We}get dispose(){return this.#Je}get disposeAfter(){return this.#Ve}constructor(e){const{max:t=0,ttl:s,ttlResolution:A=1,ttlAutopurge:o,updateAgeOnGet:r,updateAgeOnHas:n,allowStale:a,dispose:c,disposeAfter:l,noDisposeOnSet:u,noUpdateTTL:p,maxSize:g=0,maxEntrySize:h=0,sizeCalculation:d,fetchMethod:E,memoMethod:Q,noDeleteOnFetchRejection:C,noDeleteOnStaleGet:B,allowStaleOnFetchRejection:I,allowStaleOnFetchAbort:b,ignoreFetchAbort:y}=e;if(t!==0&&!isPosInt(t)){throw new TypeError("max option must be a nonnegative integer")}const w=t?getUintArray(t):Array;if(!w){throw new Error("invalid max value: "+t)}this.#He=t;this.#Ye=g;this.maxEntrySize=h||this.#Ye;this.sizeCalculation=d;if(this.sizeCalculation){if(!this.#Ye&&!this.maxEntrySize){throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize")}if(typeof this.sizeCalculation!=="function"){throw new TypeError("sizeCalculation set to non-function")}}if(Q!==undefined&&typeof Q!=="function"){throw new TypeError("memoMethod must be a function if defined")}this.#We=Q;if(E!==undefined&&typeof E!=="function"){throw new TypeError("fetchMethod must be a function if specified")}this.#qe=E;this.#at=!!E;this.#ze=new Map;this.#Ze=new Array(t).fill(undefined);this.#Xe=new Array(t).fill(undefined);this.#Ke=new w(t);this.#$e=new w(t);this.#et=0;this.#tt=0;this.#st=Stack.create(t);this.#te=0;this.#je=0;if(typeof c==="function"){this.#Je=c}if(typeof l==="function"){this.#Ve=l;this.#it=[]}else{this.#Ve=undefined;this.#it=undefined}this.#nt=!!this.#Je;this.#ct=!!this.#Ve;this.noDisposeOnSet=!!u;this.noUpdateTTL=!!p;this.noDeleteOnFetchRejection=!!C;this.allowStaleOnFetchRejection=!!I;this.allowStaleOnFetchAbort=!!b;this.ignoreFetchAbort=!!y;if(this.maxEntrySize!==0){if(this.#Ye!==0){if(!isPosInt(this.#Ye)){throw new TypeError("maxSize must be a positive integer if specified")}}if(!isPosInt(this.maxEntrySize)){throw new TypeError("maxEntrySize must be a positive integer if specified")}this.#Et()}this.allowStale=!!a;this.noDeleteOnStaleGet=!!B;this.updateAgeOnGet=!!r;this.updateAgeOnHas=!!n;this.ttlResolution=isPosInt(A)||A===0?A:1;this.ttlAutopurge=!!o;this.ttl=s||0;if(this.ttl){if(!isPosInt(this.ttl)){throw new TypeError("ttl must be a positive integer if specified")}this.#ft()}if(this.#He===0&&this.ttl===0&&this.#Ye===0){throw new TypeError("At least one of max, maxSize, or ttl is required")}if(!this.ttlAutopurge&&!this.#He&&!this.#Ye){const e="LRU_CACHE_UNBOUNDED";if(shouldWarn(e)){i.add(e);const t="TTL caching without ttlAutopurge, max, or maxSize can "+"result in unbounded memory consumption.";emitWarning(t,"UnboundedCacheWarning",e,LRUCache)}}}getRemainingTTL(e){return this.#ze.has(e)?Infinity:0}#ft(){const e=new ZeroArray(this.#He);const t=new ZeroArray(this.#He);this.#rt=e;this.#ot=t;this.#Qt=(i,A,o=s.now())=>{t[i]=A!==0?o:0;e[i]=A;if(A!==0&&this.ttlAutopurge){const e=setTimeout((()=>{if(this.#dt(i)){this.#Ct(this.#Ze[i],"expire")}}),A+1);if(e.unref){e.unref()}}};this.#mt=i=>{t[i]=e[i]!==0?s.now():0};this.#Bt=(s,A)=>{if(e[A]){const o=e[A];const r=t[A];if(!o||!r)return;s.ttl=o;s.start=r;s.now=i||getNow();const n=s.now-r;s.remainingTTL=o-n}};let i=0;const getNow=()=>{const e=s.now();if(this.ttlResolution>0){i=e;const t=setTimeout((()=>i=0),this.ttlResolution);if(t.unref){t.unref()}}return e};this.getRemainingTTL=s=>{const A=this.#ze.get(s);if(A===undefined){return 0}const o=e[A];const r=t[A];if(!o||!r){return Infinity}const n=(i||getNow())-r;return o-n};this.#dt=s=>{const A=t[s];const o=e[s];return!!o&&!!A&&(i||getNow())-A>o}}#mt=()=>{};#Bt=()=>{};#Qt=()=>{};#dt=()=>false;#Et(){const e=new ZeroArray(this.#He);this.#je=0;this.#At=e;this.#It=t=>{this.#je-=e[t];e[t]=0};this.#bt=(e,t,s,i)=>{if(this.#lt(t)){return 0}if(!isPosInt(s)){if(i){if(typeof i!=="function"){throw new TypeError("sizeCalculation must be a function")}s=i(t,e);if(!isPosInt(s)){throw new TypeError("sizeCalculation return invalid (expect positive integer)")}}else{throw new TypeError("invalid size value (must be positive integer). "+"When maxSize or maxEntrySize is used, sizeCalculation "+"or size must be set.")}}return s};this.#yt=(t,s,i)=>{e[t]=s;if(this.#Ye){const s=this.#Ye-e[t];while(this.#je>s){this.#wt(true)}}this.#je+=e[t];if(i){i.entrySize=s;i.totalCalculatedSize=this.#je}}}#It=e=>{};#yt=(e,t,s)=>{};#bt=(e,t,s,i)=>{if(s||i){throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache")}return 0};*#gt({allowStale:e=this.allowStale}={}){if(this.#te){for(let t=this.#tt;true;){if(!this.#vt(t)){break}if(e||!this.#dt(t)){yield t}if(t===this.#et){break}else{t=this.#$e[t]}}}}*#ht({allowStale:e=this.allowStale}={}){if(this.#te){for(let t=this.#et;true;){if(!this.#vt(t)){break}if(e||!this.#dt(t)){yield t}if(t===this.#tt){break}else{t=this.#Ke[t]}}}}#vt(e){return e!==undefined&&this.#ze.get(this.#Ze[e])===e}*entries(){for(const e of this.#gt()){if(this.#Xe[e]!==undefined&&this.#Ze[e]!==undefined&&!this.#lt(this.#Xe[e])){yield[this.#Ze[e],this.#Xe[e]]}}}*rentries(){for(const e of this.#ht()){if(this.#Xe[e]!==undefined&&this.#Ze[e]!==undefined&&!this.#lt(this.#Xe[e])){yield[this.#Ze[e],this.#Xe[e]]}}}*keys(){for(const e of this.#gt()){const t=this.#Ze[e];if(t!==undefined&&!this.#lt(this.#Xe[e])){yield t}}}*rkeys(){for(const e of this.#ht()){const t=this.#Ze[e];if(t!==undefined&&!this.#lt(this.#Xe[e])){yield t}}}*values(){for(const e of this.#gt()){const t=this.#Xe[e];if(t!==undefined&&!this.#lt(this.#Xe[e])){yield this.#Xe[e]}}}*rvalues(){for(const e of this.#ht()){const t=this.#Xe[e];if(t!==undefined&&!this.#lt(this.#Xe[e])){yield this.#Xe[e]}}}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(e,t={}){for(const s of this.#gt()){const i=this.#Xe[s];const A=this.#lt(i)?i.__staleWhileFetching:i;if(A===undefined)continue;if(e(A,this.#Ze[s],this)){return this.get(this.#Ze[s],t)}}}forEach(e,t=this){for(const s of this.#gt()){const i=this.#Xe[s];const A=this.#lt(i)?i.__staleWhileFetching:i;if(A===undefined)continue;e.call(t,A,this.#Ze[s],this)}}rforEach(e,t=this){for(const s of this.#ht()){const i=this.#Xe[s];const A=this.#lt(i)?i.__staleWhileFetching:i;if(A===undefined)continue;e.call(t,A,this.#Ze[s],this)}}purgeStale(){let e=false;for(const t of this.#ht({allowStale:true})){if(this.#dt(t)){this.#Ct(this.#Ze[t],"expire");e=true}}return e}info(e){const t=this.#ze.get(e);if(t===undefined)return undefined;const i=this.#Xe[t];const A=this.#lt(i)?i.__staleWhileFetching:i;if(A===undefined)return undefined;const o={value:A};if(this.#rt&&this.#ot){const e=this.#rt[t];const i=this.#ot[t];if(e&&i){const t=e-(s.now()-i);o.ttl=t;o.start=Date.now()}}if(this.#At){o.size=this.#At[t]}return o}dump(){const e=[];for(const t of this.#gt({allowStale:true})){const i=this.#Ze[t];const A=this.#Xe[t];const o=this.#lt(A)?A.__staleWhileFetching:A;if(o===undefined||i===undefined)continue;const r={value:o};if(this.#rt&&this.#ot){r.ttl=this.#rt[t];const e=s.now()-this.#ot[t];r.start=Math.floor(Date.now()-e)}if(this.#At){r.size=this.#At[t]}e.unshift([i,r])}return e}load(e){this.clear();for(const[t,i]of e){if(i.start){const e=Date.now()-i.start;i.start=s.now()-e}this.set(t,i.value,i)}}set(e,t,s={}){if(t===undefined){this.delete(e);return this}const{ttl:i=this.ttl,start:A,noDisposeOnSet:o=this.noDisposeOnSet,sizeCalculation:r=this.sizeCalculation,status:n}=s;let{noUpdateTTL:a=this.noUpdateTTL}=s;const c=this.#bt(e,t,s.size||0,r);if(this.maxEntrySize&&c>this.maxEntrySize){if(n){n.set="miss";n.maxEntrySizeExceeded=true}this.#Ct(e,"set");return this}let l=this.#te===0?undefined:this.#ze.get(e);if(l===undefined){l=this.#te===0?this.#tt:this.#st.length!==0?this.#st.pop():this.#te===this.#He?this.#wt(false):this.#te;this.#Ze[l]=e;this.#Xe[l]=t;this.#ze.set(e,l);this.#Ke[this.#tt]=l;this.#$e[l]=this.#tt;this.#tt=l;this.#te++;this.#yt(l,c,n);if(n)n.set="add";a=false}else{this.#pt(l);const s=this.#Xe[l];if(t!==s){if(this.#at&&this.#lt(s)){s.__abortController.abort(new Error("replaced"));const{__staleWhileFetching:t}=s;if(t!==undefined&&!o){if(this.#nt){this.#Je?.(t,e,"set")}if(this.#ct){this.#it?.push([t,e,"set"])}}}else if(!o){if(this.#nt){this.#Je?.(s,e,"set")}if(this.#ct){this.#it?.push([s,e,"set"])}}this.#It(l);this.#yt(l,c,n);this.#Xe[l]=t;if(n){n.set="replace";const e=s&&this.#lt(s)?s.__staleWhileFetching:s;if(e!==undefined)n.oldValue=e}}else if(n){n.set="update"}}if(i!==0&&!this.#rt){this.#ft()}if(this.#rt){if(!a){this.#Qt(l,i,A)}if(n)this.#Bt(n,l)}if(!o&&this.#ct&&this.#it){const e=this.#it;let t;while(t=e?.shift()){this.#Ve?.(...t)}}return this}pop(){try{while(this.#te){const e=this.#Xe[this.#et];this.#wt(true);if(this.#lt(e)){if(e.__staleWhileFetching){return e.__staleWhileFetching}}else if(e!==undefined){return e}}}finally{if(this.#ct&&this.#it){const e=this.#it;let t;while(t=e?.shift()){this.#Ve?.(...t)}}}}#wt(e){const t=this.#et;const s=this.#Ze[t];const i=this.#Xe[t];if(this.#at&&this.#lt(i)){i.__abortController.abort(new Error("evicted"))}else if(this.#nt||this.#ct){if(this.#nt){this.#Je?.(i,s,"evict")}if(this.#ct){this.#it?.push([i,s,"evict"])}}this.#It(t);if(e){this.#Ze[t]=undefined;this.#Xe[t]=undefined;this.#st.push(t)}if(this.#te===1){this.#et=this.#tt=0;this.#st.length=0}else{this.#et=this.#Ke[t]}this.#ze.delete(s);this.#te--;return t}has(e,t={}){const{updateAgeOnHas:s=this.updateAgeOnHas,status:i}=t;const A=this.#ze.get(e);if(A!==undefined){const e=this.#Xe[A];if(this.#lt(e)&&e.__staleWhileFetching===undefined){return false}if(!this.#dt(A)){if(s){this.#mt(A)}if(i){i.has="hit";this.#Bt(i,A)}return true}else if(i){i.has="stale";this.#Bt(i,A)}}else if(i){i.has="miss"}return false}peek(e,t={}){const{allowStale:s=this.allowStale}=t;const i=this.#ze.get(e);if(i===undefined||!s&&this.#dt(i)){return}const A=this.#Xe[i];return this.#lt(A)?A.__staleWhileFetching:A}#ut(e,t,s,i){const A=t===undefined?undefined:this.#Xe[t];if(this.#lt(A)){return A}const r=new o;const{signal:n}=s;n?.addEventListener("abort",(()=>r.abort(n.reason)),{signal:r.signal});const a={signal:r.signal,options:s,context:i};const cb=(i,A=false)=>{const{aborted:o}=r.signal;const n=s.ignoreFetchAbort&&i!==undefined;if(s.status){if(o&&!A){s.status.fetchAborted=true;s.status.fetchError=r.signal.reason;if(n)s.status.fetchAbortIgnored=true}else{s.status.fetchResolved=true}}if(o&&!n&&!A){return fetchFail(r.signal.reason)}const l=c;if(this.#Xe[t]===c){if(i===undefined){if(l.__staleWhileFetching){this.#Xe[t]=l.__staleWhileFetching}else{this.#Ct(e,"fetch")}}else{if(s.status)s.status.fetchUpdated=true;this.set(e,i,a.options)}}return i};const eb=e=>{if(s.status){s.status.fetchRejected=true;s.status.fetchError=e}return fetchFail(e)};const fetchFail=i=>{const{aborted:A}=r.signal;const o=A&&s.allowStaleOnFetchAbort;const n=o||s.allowStaleOnFetchRejection;const a=n||s.noDeleteOnFetchRejection;const l=c;if(this.#Xe[t]===c){const s=!a||l.__staleWhileFetching===undefined;if(s){this.#Ct(e,"fetch")}else if(!o){this.#Xe[t]=l.__staleWhileFetching}}if(n){if(s.status&&l.__staleWhileFetching!==undefined){s.status.returnedStale=true}return l.__staleWhileFetching}else if(l.__returned===l){throw i}};const pcall=(t,i)=>{const o=this.#qe?.(e,A,a);if(o&&o instanceof Promise){o.then((e=>t(e===undefined?undefined:e)),i)}r.signal.addEventListener("abort",(()=>{if(!s.ignoreFetchAbort||s.allowStaleOnFetchAbort){t(undefined);if(s.allowStaleOnFetchAbort){t=e=>cb(e,true)}}}))};if(s.status)s.status.fetchDispatched=true;const c=new Promise(pcall).then(cb,eb);const l=Object.assign(c,{__abortController:r,__staleWhileFetching:A,__returned:undefined});if(t===undefined){this.set(e,l,{...a.options,status:undefined});t=this.#ze.get(e)}else{this.#Xe[t]=l}return l}#lt(e){if(!this.#at)return false;const t=e;return!!t&&t instanceof Promise&&t.hasOwnProperty("__staleWhileFetching")&&t.__abortController instanceof o}async fetch(e,t={}){const{allowStale:s=this.allowStale,updateAgeOnGet:i=this.updateAgeOnGet,noDeleteOnStaleGet:A=this.noDeleteOnStaleGet,ttl:o=this.ttl,noDisposeOnSet:r=this.noDisposeOnSet,size:n=0,sizeCalculation:a=this.sizeCalculation,noUpdateTTL:c=this.noUpdateTTL,noDeleteOnFetchRejection:l=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:u=this.allowStaleOnFetchRejection,ignoreFetchAbort:p=this.ignoreFetchAbort,allowStaleOnFetchAbort:g=this.allowStaleOnFetchAbort,context:h,forceRefresh:d=false,status:E,signal:Q}=t;if(!this.#at){if(E)E.fetch="get";return this.get(e,{allowStale:s,updateAgeOnGet:i,noDeleteOnStaleGet:A,status:E})}const C={allowStale:s,updateAgeOnGet:i,noDeleteOnStaleGet:A,ttl:o,noDisposeOnSet:r,size:n,sizeCalculation:a,noUpdateTTL:c,noDeleteOnFetchRejection:l,allowStaleOnFetchRejection:u,allowStaleOnFetchAbort:g,ignoreFetchAbort:p,status:E,signal:Q};let B=this.#ze.get(e);if(B===undefined){if(E)E.fetch="miss";const t=this.#ut(e,B,C,h);return t.__returned=t}else{const t=this.#Xe[B];if(this.#lt(t)){const e=s&&t.__staleWhileFetching!==undefined;if(E){E.fetch="inflight";if(e)E.returnedStale=true}return e?t.__staleWhileFetching:t.__returned=t}const A=this.#dt(B);if(!d&&!A){if(E)E.fetch="hit";this.#pt(B);if(i){this.#mt(B)}if(E)this.#Bt(E,B);return t}const o=this.#ut(e,B,C,h);const r=o.__staleWhileFetching!==undefined;const n=r&&s;if(E){E.fetch=A?"stale":"refresh";if(n&&A)E.returnedStale=true}return n?o.__staleWhileFetching:o.__returned=o}}async forceFetch(e,t={}){const s=await this.fetch(e,t);if(s===undefined)throw new Error("fetch() returned undefined");return s}memo(e,t={}){const s=this.#We;if(!s){throw new Error("no memoMethod provided to constructor")}const{context:i,forceRefresh:A,...o}=t;const r=this.get(e,o);if(!A&&r!==undefined)return r;const n=s(e,r,{options:o,context:i});this.set(e,n,o);return n}get(e,t={}){const{allowStale:s=this.allowStale,updateAgeOnGet:i=this.updateAgeOnGet,noDeleteOnStaleGet:A=this.noDeleteOnStaleGet,status:o}=t;const r=this.#ze.get(e);if(r!==undefined){const t=this.#Xe[r];const n=this.#lt(t);if(o)this.#Bt(o,r);if(this.#dt(r)){if(o)o.get="stale";if(!n){if(!A){this.#Ct(e,"expire")}if(o&&s)o.returnedStale=true;return s?t:undefined}else{if(o&&s&&t.__staleWhileFetching!==undefined){o.returnedStale=true}return s?t.__staleWhileFetching:undefined}}else{if(o)o.get="hit";if(n){return t.__staleWhileFetching}this.#pt(r);if(i){this.#mt(r)}return t}}else if(o){o.get="miss"}}#kt(e,t){this.#$e[t]=e;this.#Ke[e]=t}#pt(e){if(e!==this.#tt){if(e===this.#et){this.#et=this.#Ke[e]}else{this.#kt(this.#$e[e],this.#Ke[e])}this.#kt(this.#tt,e);this.#tt=e}}delete(e){return this.#Ct(e,"delete")}#Ct(e,t){let s=false;if(this.#te!==0){const i=this.#ze.get(e);if(i!==undefined){s=true;if(this.#te===1){this.#Rt(t)}else{this.#It(i);const s=this.#Xe[i];if(this.#lt(s)){s.__abortController.abort(new Error("deleted"))}else if(this.#nt||this.#ct){if(this.#nt){this.#Je?.(s,e,t)}if(this.#ct){this.#it?.push([s,e,t])}}this.#ze.delete(e);this.#Ze[i]=undefined;this.#Xe[i]=undefined;if(i===this.#tt){this.#tt=this.#$e[i]}else if(i===this.#et){this.#et=this.#Ke[i]}else{const e=this.#$e[i];this.#Ke[e]=this.#Ke[i];const t=this.#Ke[i];this.#$e[t]=this.#$e[i]}this.#te--;this.#st.push(i)}}}if(this.#ct&&this.#it?.length){const e=this.#it;let t;while(t=e?.shift()){this.#Ve?.(...t)}}return s}clear(){return this.#Rt("delete")}#Rt(e){for(const t of this.#ht({allowStale:true})){const s=this.#Xe[t];if(this.#lt(s)){s.__abortController.abort(new Error("deleted"))}else{const i=this.#Ze[t];if(this.#nt){this.#Je?.(s,i,e)}if(this.#ct){this.#it?.push([s,i,e])}}}this.#ze.clear();this.#Xe.fill(undefined);this.#Ze.fill(undefined);if(this.#rt&&this.#ot){this.#rt.fill(0);this.#ot.fill(0)}if(this.#At){this.#At.fill(0)}this.#et=0;this.#tt=0;this.#st.length=0;this.#je=0;this.#te=0;if(this.#ct&&this.#it){const e=this.#it;let t;while(t=e?.shift()){this.#Ve?.(...t)}}}}t.LRUCache=LRUCache},1813:e=>{"use strict";e.exports=JSON.parse('{"application/1d-interleaved-parityfec":{"source":"iana"},"application/3gpdash-qoe-report+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/3gpp-ims+xml":{"source":"iana","compressible":true},"application/3gpphal+json":{"source":"iana","compressible":true},"application/3gpphalforms+json":{"source":"iana","compressible":true},"application/a2l":{"source":"iana"},"application/ace+cbor":{"source":"iana"},"application/ace+json":{"source":"iana","compressible":true},"application/ace-groupcomm+cbor":{"source":"iana"},"application/ace-trl+cbor":{"source":"iana"},"application/activemessage":{"source":"iana"},"application/activity+json":{"source":"iana","compressible":true},"application/aif+cbor":{"source":"iana"},"application/aif+json":{"source":"iana","compressible":true},"application/alto-cdni+json":{"source":"iana","compressible":true},"application/alto-cdnifilter+json":{"source":"iana","compressible":true},"application/alto-costmap+json":{"source":"iana","compressible":true},"application/alto-costmapfilter+json":{"source":"iana","compressible":true},"application/alto-directory+json":{"source":"iana","compressible":true},"application/alto-endpointcost+json":{"source":"iana","compressible":true},"application/alto-endpointcostparams+json":{"source":"iana","compressible":true},"application/alto-endpointprop+json":{"source":"iana","compressible":true},"application/alto-endpointpropparams+json":{"source":"iana","compressible":true},"application/alto-error+json":{"source":"iana","compressible":true},"application/alto-networkmap+json":{"source":"iana","compressible":true},"application/alto-networkmapfilter+json":{"source":"iana","compressible":true},"application/alto-propmap+json":{"source":"iana","compressible":true},"application/alto-propmapparams+json":{"source":"iana","compressible":true},"application/alto-tips+json":{"source":"iana","compressible":true},"application/alto-tipsparams+json":{"source":"iana","compressible":true},"application/alto-updatestreamcontrol+json":{"source":"iana","compressible":true},"application/alto-updatestreamparams+json":{"source":"iana","compressible":true},"application/aml":{"source":"iana"},"application/andrew-inset":{"source":"iana","extensions":["ez"]},"application/appinstaller":{"compressible":false,"extensions":["appinstaller"]},"application/applefile":{"source":"iana"},"application/applixware":{"source":"apache","extensions":["aw"]},"application/appx":{"compressible":false,"extensions":["appx"]},"application/appxbundle":{"compressible":false,"extensions":["appxbundle"]},"application/at+jwt":{"source":"iana"},"application/atf":{"source":"iana"},"application/atfx":{"source":"iana"},"application/atom+xml":{"source":"iana","compressible":true,"extensions":["atom"]},"application/atomcat+xml":{"source":"iana","compressible":true,"extensions":["atomcat"]},"application/atomdeleted+xml":{"source":"iana","compressible":true,"extensions":["atomdeleted"]},"application/atomicmail":{"source":"iana"},"application/atomsvc+xml":{"source":"iana","compressible":true,"extensions":["atomsvc"]},"application/atsc-dwd+xml":{"source":"iana","compressible":true,"extensions":["dwd"]},"application/atsc-dynamic-event-message":{"source":"iana"},"application/atsc-held+xml":{"source":"iana","compressible":true,"extensions":["held"]},"application/atsc-rdt+json":{"source":"iana","compressible":true},"application/atsc-rsat+xml":{"source":"iana","compressible":true,"extensions":["rsat"]},"application/atxml":{"source":"iana"},"application/auth-policy+xml":{"source":"iana","compressible":true},"application/automationml-aml+xml":{"source":"iana","compressible":true,"extensions":["aml"]},"application/automationml-amlx+zip":{"source":"iana","compressible":false,"extensions":["amlx"]},"application/bacnet-xdd+zip":{"source":"iana","compressible":false},"application/batch-smtp":{"source":"iana"},"application/bdoc":{"compressible":false,"extensions":["bdoc"]},"application/beep+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/bufr":{"source":"iana"},"application/c2pa":{"source":"iana"},"application/calendar+json":{"source":"iana","compressible":true},"application/calendar+xml":{"source":"iana","compressible":true,"extensions":["xcs"]},"application/call-completion":{"source":"iana"},"application/cals-1840":{"source":"iana"},"application/captive+json":{"source":"iana","compressible":true},"application/cbor":{"source":"iana"},"application/cbor-seq":{"source":"iana"},"application/cccex":{"source":"iana"},"application/ccmp+xml":{"source":"iana","compressible":true},"application/ccxml+xml":{"source":"iana","compressible":true,"extensions":["ccxml"]},"application/cda+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/cdfx+xml":{"source":"iana","compressible":true,"extensions":["cdfx"]},"application/cdmi-capability":{"source":"iana","extensions":["cdmia"]},"application/cdmi-container":{"source":"iana","extensions":["cdmic"]},"application/cdmi-domain":{"source":"iana","extensions":["cdmid"]},"application/cdmi-object":{"source":"iana","extensions":["cdmio"]},"application/cdmi-queue":{"source":"iana","extensions":["cdmiq"]},"application/cdni":{"source":"iana"},"application/ce+cbor":{"source":"iana"},"application/cea":{"source":"iana"},"application/cea-2018+xml":{"source":"iana","compressible":true},"application/cellml+xml":{"source":"iana","compressible":true},"application/cfw":{"source":"iana"},"application/cid-edhoc+cbor-seq":{"source":"iana"},"application/city+json":{"source":"iana","compressible":true},"application/city+json-seq":{"source":"iana"},"application/clr":{"source":"iana"},"application/clue+xml":{"source":"iana","compressible":true},"application/clue_info+xml":{"source":"iana","compressible":true},"application/cms":{"source":"iana"},"application/cnrp+xml":{"source":"iana","compressible":true},"application/coap-eap":{"source":"iana"},"application/coap-group+json":{"source":"iana","compressible":true},"application/coap-payload":{"source":"iana"},"application/commonground":{"source":"iana"},"application/concise-problem-details+cbor":{"source":"iana"},"application/conference-info+xml":{"source":"iana","compressible":true},"application/cose":{"source":"iana"},"application/cose-key":{"source":"iana"},"application/cose-key-set":{"source":"iana"},"application/cose-x509":{"source":"iana"},"application/cpl+xml":{"source":"iana","compressible":true,"extensions":["cpl"]},"application/csrattrs":{"source":"iana"},"application/csta+xml":{"source":"iana","compressible":true},"application/cstadata+xml":{"source":"iana","compressible":true},"application/csvm+json":{"source":"iana","compressible":true},"application/cu-seeme":{"source":"apache","extensions":["cu"]},"application/cwl":{"source":"iana","extensions":["cwl"]},"application/cwl+json":{"source":"iana","compressible":true},"application/cwl+yaml":{"source":"iana"},"application/cwt":{"source":"iana"},"application/cybercash":{"source":"iana"},"application/dart":{"compressible":true},"application/dash+xml":{"source":"iana","compressible":true,"extensions":["mpd"]},"application/dash-patch+xml":{"source":"iana","compressible":true,"extensions":["mpp"]},"application/dashdelta":{"source":"iana"},"application/davmount+xml":{"source":"iana","compressible":true,"extensions":["davmount"]},"application/dca-rft":{"source":"iana"},"application/dcd":{"source":"iana"},"application/dec-dx":{"source":"iana"},"application/dialog-info+xml":{"source":"iana","compressible":true},"application/dicom":{"source":"iana","extensions":["dcm"]},"application/dicom+json":{"source":"iana","compressible":true},"application/dicom+xml":{"source":"iana","compressible":true},"application/dii":{"source":"iana"},"application/dit":{"source":"iana"},"application/dns":{"source":"iana"},"application/dns+json":{"source":"iana","compressible":true},"application/dns-message":{"source":"iana"},"application/docbook+xml":{"source":"apache","compressible":true,"extensions":["dbk"]},"application/dots+cbor":{"source":"iana"},"application/dpop+jwt":{"source":"iana"},"application/dskpp+xml":{"source":"iana","compressible":true},"application/dssc+der":{"source":"iana","extensions":["dssc"]},"application/dssc+xml":{"source":"iana","compressible":true,"extensions":["xdssc"]},"application/dvcs":{"source":"iana"},"application/eat+cwt":{"source":"iana"},"application/eat+jwt":{"source":"iana"},"application/eat-bun+cbor":{"source":"iana"},"application/eat-bun+json":{"source":"iana","compressible":true},"application/eat-ucs+cbor":{"source":"iana"},"application/eat-ucs+json":{"source":"iana","compressible":true},"application/ecmascript":{"source":"apache","compressible":true,"extensions":["ecma"]},"application/edhoc+cbor-seq":{"source":"iana"},"application/edi-consent":{"source":"iana"},"application/edi-x12":{"source":"iana","compressible":false},"application/edifact":{"source":"iana","compressible":false},"application/efi":{"source":"iana"},"application/elm+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/elm+xml":{"source":"iana","compressible":true},"application/emergencycalldata.cap+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/emergencycalldata.comment+xml":{"source":"iana","compressible":true},"application/emergencycalldata.control+xml":{"source":"iana","compressible":true},"application/emergencycalldata.deviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.ecall.msd":{"source":"iana"},"application/emergencycalldata.legacyesn+json":{"source":"iana","compressible":true},"application/emergencycalldata.providerinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.serviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.subscriberinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.veds+xml":{"source":"iana","compressible":true},"application/emma+xml":{"source":"iana","compressible":true,"extensions":["emma"]},"application/emotionml+xml":{"source":"iana","compressible":true,"extensions":["emotionml"]},"application/encaprtp":{"source":"iana"},"application/entity-statement+jwt":{"source":"iana"},"application/epp+xml":{"source":"iana","compressible":true},"application/epub+zip":{"source":"iana","compressible":false,"extensions":["epub"]},"application/eshop":{"source":"iana"},"application/exi":{"source":"iana","extensions":["exi"]},"application/expect-ct-report+json":{"source":"iana","compressible":true},"application/express":{"source":"iana","extensions":["exp"]},"application/fastinfoset":{"source":"iana"},"application/fastsoap":{"source":"iana"},"application/fdf":{"source":"iana","extensions":["fdf"]},"application/fdt+xml":{"source":"iana","compressible":true,"extensions":["fdt"]},"application/fhir+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/fhir+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/fido.trusted-apps+json":{"compressible":true},"application/fits":{"source":"iana"},"application/flexfec":{"source":"iana"},"application/font-sfnt":{"source":"iana"},"application/font-tdpfr":{"source":"iana","extensions":["pfr"]},"application/font-woff":{"source":"iana","compressible":false},"application/framework-attributes+xml":{"source":"iana","compressible":true},"application/geo+json":{"source":"iana","compressible":true,"extensions":["geojson"]},"application/geo+json-seq":{"source":"iana"},"application/geopackage+sqlite3":{"source":"iana"},"application/geopose+json":{"source":"iana","compressible":true},"application/geoxacml+json":{"source":"iana","compressible":true},"application/geoxacml+xml":{"source":"iana","compressible":true},"application/gltf-buffer":{"source":"iana"},"application/gml+xml":{"source":"iana","compressible":true,"extensions":["gml"]},"application/gnap-binding-jws":{"source":"iana"},"application/gnap-binding-jwsd":{"source":"iana"},"application/gnap-binding-rotation-jws":{"source":"iana"},"application/gnap-binding-rotation-jwsd":{"source":"iana"},"application/gpx+xml":{"source":"apache","compressible":true,"extensions":["gpx"]},"application/grib":{"source":"iana"},"application/gxf":{"source":"apache","extensions":["gxf"]},"application/gzip":{"source":"iana","compressible":false,"extensions":["gz"]},"application/h224":{"source":"iana"},"application/held+xml":{"source":"iana","compressible":true},"application/hjson":{"extensions":["hjson"]},"application/hl7v2+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/http":{"source":"iana"},"application/hyperstudio":{"source":"iana","extensions":["stk"]},"application/ibe-key-request+xml":{"source":"iana","compressible":true},"application/ibe-pkg-reply+xml":{"source":"iana","compressible":true},"application/ibe-pp-data":{"source":"iana"},"application/iges":{"source":"iana"},"application/im-iscomposing+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/index":{"source":"iana"},"application/index.cmd":{"source":"iana"},"application/index.obj":{"source":"iana"},"application/index.response":{"source":"iana"},"application/index.vnd":{"source":"iana"},"application/inkml+xml":{"source":"iana","compressible":true,"extensions":["ink","inkml"]},"application/iotp":{"source":"iana"},"application/ipfix":{"source":"iana","extensions":["ipfix"]},"application/ipp":{"source":"iana"},"application/isup":{"source":"iana"},"application/its+xml":{"source":"iana","compressible":true,"extensions":["its"]},"application/java-archive":{"source":"iana","compressible":false,"extensions":["jar","war","ear"]},"application/java-serialized-object":{"source":"apache","compressible":false,"extensions":["ser"]},"application/java-vm":{"source":"apache","compressible":false,"extensions":["class"]},"application/javascript":{"source":"apache","charset":"UTF-8","compressible":true,"extensions":["js"]},"application/jf2feed+json":{"source":"iana","compressible":true},"application/jose":{"source":"iana"},"application/jose+json":{"source":"iana","compressible":true},"application/jrd+json":{"source":"iana","compressible":true},"application/jscalendar+json":{"source":"iana","compressible":true},"application/jscontact+json":{"source":"iana","compressible":true},"application/json":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["json","map"]},"application/json-patch+json":{"source":"iana","compressible":true},"application/json-seq":{"source":"iana"},"application/json5":{"extensions":["json5"]},"application/jsonml+json":{"source":"apache","compressible":true,"extensions":["jsonml"]},"application/jsonpath":{"source":"iana"},"application/jwk+json":{"source":"iana","compressible":true},"application/jwk-set+json":{"source":"iana","compressible":true},"application/jwk-set+jwt":{"source":"iana"},"application/jwt":{"source":"iana"},"application/kpml-request+xml":{"source":"iana","compressible":true},"application/kpml-response+xml":{"source":"iana","compressible":true},"application/ld+json":{"source":"iana","compressible":true,"extensions":["jsonld"]},"application/lgr+xml":{"source":"iana","compressible":true,"extensions":["lgr"]},"application/link-format":{"source":"iana"},"application/linkset":{"source":"iana"},"application/linkset+json":{"source":"iana","compressible":true},"application/load-control+xml":{"source":"iana","compressible":true},"application/logout+jwt":{"source":"iana"},"application/lost+xml":{"source":"iana","compressible":true,"extensions":["lostxml"]},"application/lostsync+xml":{"source":"iana","compressible":true},"application/lpf+zip":{"source":"iana","compressible":false},"application/lxf":{"source":"iana"},"application/mac-binhex40":{"source":"iana","extensions":["hqx"]},"application/mac-compactpro":{"source":"apache","extensions":["cpt"]},"application/macwriteii":{"source":"iana"},"application/mads+xml":{"source":"iana","compressible":true,"extensions":["mads"]},"application/manifest+json":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["webmanifest"]},"application/marc":{"source":"iana","extensions":["mrc"]},"application/marcxml+xml":{"source":"iana","compressible":true,"extensions":["mrcx"]},"application/mathematica":{"source":"iana","extensions":["ma","nb","mb"]},"application/mathml+xml":{"source":"iana","compressible":true,"extensions":["mathml"]},"application/mathml-content+xml":{"source":"iana","compressible":true},"application/mathml-presentation+xml":{"source":"iana","compressible":true},"application/mbms-associated-procedure-description+xml":{"source":"iana","compressible":true},"application/mbms-deregister+xml":{"source":"iana","compressible":true},"application/mbms-envelope+xml":{"source":"iana","compressible":true},"application/mbms-msk+xml":{"source":"iana","compressible":true},"application/mbms-msk-response+xml":{"source":"iana","compressible":true},"application/mbms-protection-description+xml":{"source":"iana","compressible":true},"application/mbms-reception-report+xml":{"source":"iana","compressible":true},"application/mbms-register+xml":{"source":"iana","compressible":true},"application/mbms-register-response+xml":{"source":"iana","compressible":true},"application/mbms-schedule+xml":{"source":"iana","compressible":true},"application/mbms-user-service-description+xml":{"source":"iana","compressible":true},"application/mbox":{"source":"iana","extensions":["mbox"]},"application/media-policy-dataset+xml":{"source":"iana","compressible":true,"extensions":["mpf"]},"application/media_control+xml":{"source":"iana","compressible":true},"application/mediaservercontrol+xml":{"source":"iana","compressible":true,"extensions":["mscml"]},"application/merge-patch+json":{"source":"iana","compressible":true},"application/metalink+xml":{"source":"apache","compressible":true,"extensions":["metalink"]},"application/metalink4+xml":{"source":"iana","compressible":true,"extensions":["meta4"]},"application/mets+xml":{"source":"iana","compressible":true,"extensions":["mets"]},"application/mf4":{"source":"iana"},"application/mikey":{"source":"iana"},"application/mipc":{"source":"iana"},"application/missing-blocks+cbor-seq":{"source":"iana"},"application/mmt-aei+xml":{"source":"iana","compressible":true,"extensions":["maei"]},"application/mmt-usd+xml":{"source":"iana","compressible":true,"extensions":["musd"]},"application/mods+xml":{"source":"iana","compressible":true,"extensions":["mods"]},"application/moss-keys":{"source":"iana"},"application/moss-signature":{"source":"iana"},"application/mosskey-data":{"source":"iana"},"application/mosskey-request":{"source":"iana"},"application/mp21":{"source":"iana","extensions":["m21","mp21"]},"application/mp4":{"source":"iana","extensions":["mp4","mpg4","mp4s","m4p"]},"application/mpeg4-generic":{"source":"iana"},"application/mpeg4-iod":{"source":"iana"},"application/mpeg4-iod-xmt":{"source":"iana"},"application/mrb-consumer+xml":{"source":"iana","compressible":true},"application/mrb-publish+xml":{"source":"iana","compressible":true},"application/msc-ivr+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msc-mixer+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msix":{"compressible":false,"extensions":["msix"]},"application/msixbundle":{"compressible":false,"extensions":["msixbundle"]},"application/msword":{"source":"iana","compressible":false,"extensions":["doc","dot"]},"application/mud+json":{"source":"iana","compressible":true},"application/multipart-core":{"source":"iana"},"application/mxf":{"source":"iana","extensions":["mxf"]},"application/n-quads":{"source":"iana","extensions":["nq"]},"application/n-triples":{"source":"iana","extensions":["nt"]},"application/nasdata":{"source":"iana"},"application/news-checkgroups":{"source":"iana","charset":"US-ASCII"},"application/news-groupinfo":{"source":"iana","charset":"US-ASCII"},"application/news-transmission":{"source":"iana"},"application/nlsml+xml":{"source":"iana","compressible":true},"application/node":{"source":"iana","extensions":["cjs"]},"application/nss":{"source":"iana"},"application/oauth-authz-req+jwt":{"source":"iana"},"application/oblivious-dns-message":{"source":"iana"},"application/ocsp-request":{"source":"iana"},"application/ocsp-response":{"source":"iana"},"application/octet-stream":{"source":"iana","compressible":true,"extensions":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{"source":"iana","extensions":["oda"]},"application/odm+xml":{"source":"iana","compressible":true},"application/odx":{"source":"iana"},"application/oebps-package+xml":{"source":"iana","compressible":true,"extensions":["opf"]},"application/ogg":{"source":"iana","compressible":false,"extensions":["ogx"]},"application/ohttp-keys":{"source":"iana"},"application/omdoc+xml":{"source":"apache","compressible":true,"extensions":["omdoc"]},"application/onenote":{"source":"apache","extensions":["onetoc","onetoc2","onetmp","onepkg","one","onea"]},"application/opc-nodeset+xml":{"source":"iana","compressible":true},"application/oscore":{"source":"iana"},"application/oxps":{"source":"iana","extensions":["oxps"]},"application/p21":{"source":"iana"},"application/p21+zip":{"source":"iana","compressible":false},"application/p2p-overlay+xml":{"source":"iana","compressible":true,"extensions":["relo"]},"application/parityfec":{"source":"iana"},"application/passport":{"source":"iana"},"application/patch-ops-error+xml":{"source":"iana","compressible":true,"extensions":["xer"]},"application/pdf":{"source":"iana","compressible":false,"extensions":["pdf"]},"application/pdx":{"source":"iana"},"application/pem-certificate-chain":{"source":"iana"},"application/pgp-encrypted":{"source":"iana","compressible":false,"extensions":["pgp"]},"application/pgp-keys":{"source":"iana","extensions":["asc"]},"application/pgp-signature":{"source":"iana","extensions":["sig","asc"]},"application/pics-rules":{"source":"apache","extensions":["prf"]},"application/pidf+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pidf-diff+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pkcs10":{"source":"iana","extensions":["p10"]},"application/pkcs12":{"source":"iana"},"application/pkcs7-mime":{"source":"iana","extensions":["p7m","p7c"]},"application/pkcs7-signature":{"source":"iana","extensions":["p7s"]},"application/pkcs8":{"source":"iana","extensions":["p8"]},"application/pkcs8-encrypted":{"source":"iana"},"application/pkix-attr-cert":{"source":"iana","extensions":["ac"]},"application/pkix-cert":{"source":"iana","extensions":["cer"]},"application/pkix-crl":{"source":"iana","extensions":["crl"]},"application/pkix-pkipath":{"source":"iana","extensions":["pkipath"]},"application/pkixcmp":{"source":"iana","extensions":["pki"]},"application/pls+xml":{"source":"iana","compressible":true,"extensions":["pls"]},"application/poc-settings+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/postscript":{"source":"iana","compressible":true,"extensions":["ai","eps","ps"]},"application/ppsp-tracker+json":{"source":"iana","compressible":true},"application/private-token-issuer-directory":{"source":"iana"},"application/private-token-request":{"source":"iana"},"application/private-token-response":{"source":"iana"},"application/problem+json":{"source":"iana","compressible":true},"application/problem+xml":{"source":"iana","compressible":true},"application/provenance+xml":{"source":"iana","compressible":true,"extensions":["provx"]},"application/provided-claims+jwt":{"source":"iana"},"application/prs.alvestrand.titrax-sheet":{"source":"iana"},"application/prs.cww":{"source":"iana","extensions":["cww"]},"application/prs.cyn":{"source":"iana","charset":"7-BIT"},"application/prs.hpub+zip":{"source":"iana","compressible":false},"application/prs.implied-document+xml":{"source":"iana","compressible":true},"application/prs.implied-executable":{"source":"iana"},"application/prs.implied-object+json":{"source":"iana","compressible":true},"application/prs.implied-object+json-seq":{"source":"iana"},"application/prs.implied-object+yaml":{"source":"iana"},"application/prs.implied-structure":{"source":"iana"},"application/prs.mayfile":{"source":"iana"},"application/prs.nprend":{"source":"iana"},"application/prs.plucker":{"source":"iana"},"application/prs.rdf-xml-crypt":{"source":"iana"},"application/prs.vcfbzip2":{"source":"iana"},"application/prs.xsf+xml":{"source":"iana","compressible":true,"extensions":["xsf"]},"application/pskc+xml":{"source":"iana","compressible":true,"extensions":["pskcxml"]},"application/pvd+json":{"source":"iana","compressible":true},"application/qsig":{"source":"iana"},"application/raml+yaml":{"compressible":true,"extensions":["raml"]},"application/raptorfec":{"source":"iana"},"application/rdap+json":{"source":"iana","compressible":true},"application/rdf+xml":{"source":"iana","compressible":true,"extensions":["rdf","owl"]},"application/reginfo+xml":{"source":"iana","compressible":true,"extensions":["rif"]},"application/relax-ng-compact-syntax":{"source":"iana","extensions":["rnc"]},"application/remote-printing":{"source":"apache"},"application/reputon+json":{"source":"iana","compressible":true},"application/resolve-response+jwt":{"source":"iana"},"application/resource-lists+xml":{"source":"iana","compressible":true,"extensions":["rl"]},"application/resource-lists-diff+xml":{"source":"iana","compressible":true,"extensions":["rld"]},"application/rfc+xml":{"source":"iana","compressible":true},"application/riscos":{"source":"iana"},"application/rlmi+xml":{"source":"iana","compressible":true},"application/rls-services+xml":{"source":"iana","compressible":true,"extensions":["rs"]},"application/route-apd+xml":{"source":"iana","compressible":true,"extensions":["rapd"]},"application/route-s-tsid+xml":{"source":"iana","compressible":true,"extensions":["sls"]},"application/route-usd+xml":{"source":"iana","compressible":true,"extensions":["rusd"]},"application/rpki-checklist":{"source":"iana"},"application/rpki-ghostbusters":{"source":"iana","extensions":["gbr"]},"application/rpki-manifest":{"source":"iana","extensions":["mft"]},"application/rpki-publication":{"source":"iana"},"application/rpki-roa":{"source":"iana","extensions":["roa"]},"application/rpki-signed-tal":{"source":"iana"},"application/rpki-updown":{"source":"iana"},"application/rsd+xml":{"source":"apache","compressible":true,"extensions":["rsd"]},"application/rss+xml":{"source":"apache","compressible":true,"extensions":["rss"]},"application/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"application/rtploopback":{"source":"iana"},"application/rtx":{"source":"iana"},"application/samlassertion+xml":{"source":"iana","compressible":true},"application/samlmetadata+xml":{"source":"iana","compressible":true},"application/sarif+json":{"source":"iana","compressible":true},"application/sarif-external-properties+json":{"source":"iana","compressible":true},"application/sbe":{"source":"iana"},"application/sbml+xml":{"source":"iana","compressible":true,"extensions":["sbml"]},"application/scaip+xml":{"source":"iana","compressible":true},"application/scim+json":{"source":"iana","compressible":true},"application/scvp-cv-request":{"source":"iana","extensions":["scq"]},"application/scvp-cv-response":{"source":"iana","extensions":["scs"]},"application/scvp-vp-request":{"source":"iana","extensions":["spq"]},"application/scvp-vp-response":{"source":"iana","extensions":["spp"]},"application/sdp":{"source":"iana","extensions":["sdp"]},"application/secevent+jwt":{"source":"iana"},"application/senml+cbor":{"source":"iana"},"application/senml+json":{"source":"iana","compressible":true},"application/senml+xml":{"source":"iana","compressible":true,"extensions":["senmlx"]},"application/senml-etch+cbor":{"source":"iana"},"application/senml-etch+json":{"source":"iana","compressible":true},"application/senml-exi":{"source":"iana"},"application/sensml+cbor":{"source":"iana"},"application/sensml+json":{"source":"iana","compressible":true},"application/sensml+xml":{"source":"iana","compressible":true,"extensions":["sensmlx"]},"application/sensml-exi":{"source":"iana"},"application/sep+xml":{"source":"iana","compressible":true},"application/sep-exi":{"source":"iana"},"application/session-info":{"source":"iana"},"application/set-payment":{"source":"iana"},"application/set-payment-initiation":{"source":"iana","extensions":["setpay"]},"application/set-registration":{"source":"iana"},"application/set-registration-initiation":{"source":"iana","extensions":["setreg"]},"application/sgml":{"source":"iana"},"application/sgml-open-catalog":{"source":"iana"},"application/shf+xml":{"source":"iana","compressible":true,"extensions":["shf"]},"application/sieve":{"source":"iana","extensions":["siv","sieve"]},"application/simple-filter+xml":{"source":"iana","compressible":true},"application/simple-message-summary":{"source":"iana"},"application/simplesymbolcontainer":{"source":"iana"},"application/sipc":{"source":"iana"},"application/slate":{"source":"iana"},"application/smil":{"source":"apache"},"application/smil+xml":{"source":"iana","compressible":true,"extensions":["smi","smil"]},"application/smpte336m":{"source":"iana"},"application/soap+fastinfoset":{"source":"iana"},"application/soap+xml":{"source":"iana","compressible":true},"application/sparql-query":{"source":"iana","extensions":["rq"]},"application/sparql-results+xml":{"source":"iana","compressible":true,"extensions":["srx"]},"application/spdx+json":{"source":"iana","compressible":true},"application/spirits-event+xml":{"source":"iana","compressible":true},"application/sql":{"source":"iana","extensions":["sql"]},"application/srgs":{"source":"iana","extensions":["gram"]},"application/srgs+xml":{"source":"iana","compressible":true,"extensions":["grxml"]},"application/sru+xml":{"source":"iana","compressible":true,"extensions":["sru"]},"application/ssdl+xml":{"source":"apache","compressible":true,"extensions":["ssdl"]},"application/sslkeylogfile":{"source":"iana"},"application/ssml+xml":{"source":"iana","compressible":true,"extensions":["ssml"]},"application/st2110-41":{"source":"iana"},"application/stix+json":{"source":"iana","compressible":true},"application/stratum":{"source":"iana"},"application/swid+cbor":{"source":"iana"},"application/swid+xml":{"source":"iana","compressible":true,"extensions":["swidtag"]},"application/tamp-apex-update":{"source":"iana"},"application/tamp-apex-update-confirm":{"source":"iana"},"application/tamp-community-update":{"source":"iana"},"application/tamp-community-update-confirm":{"source":"iana"},"application/tamp-error":{"source":"iana"},"application/tamp-sequence-adjust":{"source":"iana"},"application/tamp-sequence-adjust-confirm":{"source":"iana"},"application/tamp-status-query":{"source":"iana"},"application/tamp-status-response":{"source":"iana"},"application/tamp-update":{"source":"iana"},"application/tamp-update-confirm":{"source":"iana"},"application/tar":{"compressible":true},"application/taxii+json":{"source":"iana","compressible":true},"application/td+json":{"source":"iana","compressible":true},"application/tei+xml":{"source":"iana","compressible":true,"extensions":["tei","teicorpus"]},"application/tetra_isi":{"source":"iana"},"application/thraud+xml":{"source":"iana","compressible":true,"extensions":["tfi"]},"application/timestamp-query":{"source":"iana"},"application/timestamp-reply":{"source":"iana"},"application/timestamped-data":{"source":"iana","extensions":["tsd"]},"application/tlsrpt+gzip":{"source":"iana"},"application/tlsrpt+json":{"source":"iana","compressible":true},"application/tm+json":{"source":"iana","compressible":true},"application/tnauthlist":{"source":"iana"},"application/toc+cbor":{"source":"iana"},"application/token-introspection+jwt":{"source":"iana"},"application/toml":{"source":"iana","compressible":true,"extensions":["toml"]},"application/trickle-ice-sdpfrag":{"source":"iana"},"application/trig":{"source":"iana","extensions":["trig"]},"application/trust-chain+json":{"source":"iana","compressible":true},"application/trust-mark+jwt":{"source":"iana"},"application/trust-mark-delegation+jwt":{"source":"iana"},"application/ttml+xml":{"source":"iana","compressible":true,"extensions":["ttml"]},"application/tve-trigger":{"source":"iana"},"application/tzif":{"source":"iana"},"application/tzif-leap":{"source":"iana"},"application/ubjson":{"compressible":false,"extensions":["ubj"]},"application/uccs+cbor":{"source":"iana"},"application/ujcs+json":{"source":"iana","compressible":true},"application/ulpfec":{"source":"iana"},"application/urc-grpsheet+xml":{"source":"iana","compressible":true},"application/urc-ressheet+xml":{"source":"iana","compressible":true,"extensions":["rsheet"]},"application/urc-targetdesc+xml":{"source":"iana","compressible":true,"extensions":["td"]},"application/urc-uisocketdesc+xml":{"source":"iana","compressible":true},"application/vc":{"source":"iana"},"application/vc+cose":{"source":"iana"},"application/vc+jwt":{"source":"iana"},"application/vcard+json":{"source":"iana","compressible":true},"application/vcard+xml":{"source":"iana","compressible":true},"application/vemmi":{"source":"iana"},"application/vividence.scriptfile":{"source":"apache"},"application/vnd.1000minds.decision-model+xml":{"source":"iana","compressible":true,"extensions":["1km"]},"application/vnd.1ob":{"source":"iana"},"application/vnd.3gpp-prose+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-prose-pc3a+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-prose-pc3ach+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-prose-pc3ch+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-prose-pc8+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-v2x-local-service-information":{"source":"iana"},"application/vnd.3gpp.5gnas":{"source":"iana"},"application/vnd.3gpp.5gsa2x":{"source":"iana"},"application/vnd.3gpp.5gsa2x-local-service-information":{"source":"iana"},"application/vnd.3gpp.5gsv2x":{"source":"iana"},"application/vnd.3gpp.5gsv2x-local-service-information":{"source":"iana"},"application/vnd.3gpp.access-transfer-events+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.bsf+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.crs+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.current-location-discovery+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.gmop+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.gtpc":{"source":"iana"},"application/vnd.3gpp.interworking-data":{"source":"iana"},"application/vnd.3gpp.lpp":{"source":"iana"},"application/vnd.3gpp.mc-signalling-ear":{"source":"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-msgstore-ctrl-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-payload":{"source":"iana"},"application/vnd.3gpp.mcdata-regroup+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-signalling":{"source":"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-floor-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-regroup+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-signed+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-init-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-regroup+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-transmission-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mid-call+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.ngap":{"source":"iana"},"application/vnd.3gpp.pfcp":{"source":"iana"},"application/vnd.3gpp.pic-bw-large":{"source":"iana","extensions":["plb"]},"application/vnd.3gpp.pic-bw-small":{"source":"iana","extensions":["psb"]},"application/vnd.3gpp.pic-bw-var":{"source":"iana","extensions":["pvb"]},"application/vnd.3gpp.pinapp-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.s1ap":{"source":"iana"},"application/vnd.3gpp.seal-group-doc+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.seal-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.seal-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.seal-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.seal-network-qos-management-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.seal-ue-config-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.seal-unicast-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.seal-user-profile-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.sms":{"source":"iana"},"application/vnd.3gpp.sms+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-ext+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.state-and-event-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.ussd+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.v2x":{"source":"iana"},"application/vnd.3gpp.vae-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.bcmcsinfo+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.sms":{"source":"iana"},"application/vnd.3gpp2.tcap":{"source":"iana","extensions":["tcap"]},"application/vnd.3lightssoftware.imagescal":{"source":"iana"},"application/vnd.3m.post-it-notes":{"source":"iana","extensions":["pwn"]},"application/vnd.accpac.simply.aso":{"source":"iana","extensions":["aso"]},"application/vnd.accpac.simply.imp":{"source":"iana","extensions":["imp"]},"application/vnd.acm.addressxfer+json":{"source":"iana","compressible":true},"application/vnd.acm.chatbot+json":{"source":"iana","compressible":true},"application/vnd.acucobol":{"source":"iana","extensions":["acu"]},"application/vnd.acucorp":{"source":"iana","extensions":["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{"source":"apache","compressible":false,"extensions":["air"]},"application/vnd.adobe.flash.movie":{"source":"iana"},"application/vnd.adobe.formscentral.fcdt":{"source":"iana","extensions":["fcdt"]},"application/vnd.adobe.fxp":{"source":"iana","extensions":["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{"source":"iana"},"application/vnd.adobe.xdp+xml":{"source":"iana","compressible":true,"extensions":["xdp"]},"application/vnd.adobe.xfdf":{"source":"apache","extensions":["xfdf"]},"application/vnd.aether.imp":{"source":"iana"},"application/vnd.afpc.afplinedata":{"source":"iana"},"application/vnd.afpc.afplinedata-pagedef":{"source":"iana"},"application/vnd.afpc.cmoca-cmresource":{"source":"iana"},"application/vnd.afpc.foca-charset":{"source":"iana"},"application/vnd.afpc.foca-codedfont":{"source":"iana"},"application/vnd.afpc.foca-codepage":{"source":"iana"},"application/vnd.afpc.modca":{"source":"iana"},"application/vnd.afpc.modca-cmtable":{"source":"iana"},"application/vnd.afpc.modca-formdef":{"source":"iana"},"application/vnd.afpc.modca-mediummap":{"source":"iana"},"application/vnd.afpc.modca-objectcontainer":{"source":"iana"},"application/vnd.afpc.modca-overlay":{"source":"iana"},"application/vnd.afpc.modca-pagesegment":{"source":"iana"},"application/vnd.age":{"source":"iana","extensions":["age"]},"application/vnd.ah-barcode":{"source":"apache"},"application/vnd.ahead.space":{"source":"iana","extensions":["ahead"]},"application/vnd.airzip.filesecure.azf":{"source":"iana","extensions":["azf"]},"application/vnd.airzip.filesecure.azs":{"source":"iana","extensions":["azs"]},"application/vnd.amadeus+json":{"source":"iana","compressible":true},"application/vnd.amazon.ebook":{"source":"apache","extensions":["azw"]},"application/vnd.amazon.mobi8-ebook":{"source":"iana"},"application/vnd.americandynamics.acc":{"source":"iana","extensions":["acc"]},"application/vnd.amiga.ami":{"source":"iana","extensions":["ami"]},"application/vnd.amundsen.maze+xml":{"source":"iana","compressible":true},"application/vnd.android.ota":{"source":"iana"},"application/vnd.android.package-archive":{"source":"apache","compressible":false,"extensions":["apk"]},"application/vnd.anki":{"source":"iana"},"application/vnd.anser-web-certificate-issue-initiation":{"source":"iana","extensions":["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{"source":"apache","extensions":["fti"]},"application/vnd.antix.game-component":{"source":"iana","extensions":["atx"]},"application/vnd.apache.arrow.file":{"source":"iana"},"application/vnd.apache.arrow.stream":{"source":"iana"},"application/vnd.apache.parquet":{"source":"iana"},"application/vnd.apache.thrift.binary":{"source":"iana"},"application/vnd.apache.thrift.compact":{"source":"iana"},"application/vnd.apache.thrift.json":{"source":"iana"},"application/vnd.apexlang":{"source":"iana"},"application/vnd.api+json":{"source":"iana","compressible":true},"application/vnd.aplextor.warrp+json":{"source":"iana","compressible":true},"application/vnd.apothekende.reservation+json":{"source":"iana","compressible":true},"application/vnd.apple.installer+xml":{"source":"iana","compressible":true,"extensions":["mpkg"]},"application/vnd.apple.keynote":{"source":"iana","extensions":["key"]},"application/vnd.apple.mpegurl":{"source":"iana","extensions":["m3u8"]},"application/vnd.apple.numbers":{"source":"iana","extensions":["numbers"]},"application/vnd.apple.pages":{"source":"iana","extensions":["pages"]},"application/vnd.apple.pkpass":{"compressible":false,"extensions":["pkpass"]},"application/vnd.arastra.swi":{"source":"apache"},"application/vnd.aristanetworks.swi":{"source":"iana","extensions":["swi"]},"application/vnd.artisan+json":{"source":"iana","compressible":true},"application/vnd.artsquare":{"source":"iana"},"application/vnd.astraea-software.iota":{"source":"iana","extensions":["iota"]},"application/vnd.audiograph":{"source":"iana","extensions":["aep"]},"application/vnd.autodesk.fbx":{"extensions":["fbx"]},"application/vnd.autopackage":{"source":"iana"},"application/vnd.avalon+json":{"source":"iana","compressible":true},"application/vnd.avistar+xml":{"source":"iana","compressible":true},"application/vnd.balsamiq.bmml+xml":{"source":"iana","compressible":true,"extensions":["bmml"]},"application/vnd.balsamiq.bmpr":{"source":"iana"},"application/vnd.banana-accounting":{"source":"iana"},"application/vnd.bbf.usp.error":{"source":"iana"},"application/vnd.bbf.usp.msg":{"source":"iana"},"application/vnd.bbf.usp.msg+json":{"source":"iana","compressible":true},"application/vnd.bekitzur-stech+json":{"source":"iana","compressible":true},"application/vnd.belightsoft.lhzd+zip":{"source":"iana","compressible":false},"application/vnd.belightsoft.lhzl+zip":{"source":"iana","compressible":false},"application/vnd.bint.med-content":{"source":"iana"},"application/vnd.biopax.rdf+xml":{"source":"iana","compressible":true},"application/vnd.blink-idb-value-wrapper":{"source":"iana"},"application/vnd.blueice.multipass":{"source":"iana","extensions":["mpm"]},"application/vnd.bluetooth.ep.oob":{"source":"iana"},"application/vnd.bluetooth.le.oob":{"source":"iana"},"application/vnd.bmi":{"source":"iana","extensions":["bmi"]},"application/vnd.bpf":{"source":"iana"},"application/vnd.bpf3":{"source":"iana"},"application/vnd.businessobjects":{"source":"iana","extensions":["rep"]},"application/vnd.byu.uapi+json":{"source":"iana","compressible":true},"application/vnd.bzip3":{"source":"iana"},"application/vnd.c3voc.schedule+xml":{"source":"iana","compressible":true},"application/vnd.cab-jscript":{"source":"iana"},"application/vnd.canon-cpdl":{"source":"iana"},"application/vnd.canon-lips":{"source":"iana"},"application/vnd.capasystems-pg+json":{"source":"iana","compressible":true},"application/vnd.cendio.thinlinc.clientconf":{"source":"iana"},"application/vnd.century-systems.tcp_stream":{"source":"iana"},"application/vnd.chemdraw+xml":{"source":"iana","compressible":true,"extensions":["cdxml"]},"application/vnd.chess-pgn":{"source":"iana"},"application/vnd.chipnuts.karaoke-mmd":{"source":"iana","extensions":["mmd"]},"application/vnd.ciedi":{"source":"iana"},"application/vnd.cinderella":{"source":"iana","extensions":["cdy"]},"application/vnd.cirpack.isdn-ext":{"source":"iana"},"application/vnd.citationstyles.style+xml":{"source":"iana","compressible":true,"extensions":["csl"]},"application/vnd.claymore":{"source":"iana","extensions":["cla"]},"application/vnd.cloanto.rp9":{"source":"iana","extensions":["rp9"]},"application/vnd.clonk.c4group":{"source":"iana","extensions":["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{"source":"iana","extensions":["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{"source":"iana","extensions":["c11amz"]},"application/vnd.cncf.helm.chart.content.v1.tar+gzip":{"source":"iana"},"application/vnd.cncf.helm.chart.provenance.v1.prov":{"source":"iana"},"application/vnd.cncf.helm.config.v1+json":{"source":"iana","compressible":true},"application/vnd.coffeescript":{"source":"iana"},"application/vnd.collabio.xodocuments.document":{"source":"iana"},"application/vnd.collabio.xodocuments.document-template":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation-template":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{"source":"iana"},"application/vnd.collection+json":{"source":"iana","compressible":true},"application/vnd.collection.doc+json":{"source":"iana","compressible":true},"application/vnd.collection.next+json":{"source":"iana","compressible":true},"application/vnd.comicbook+zip":{"source":"iana","compressible":false},"application/vnd.comicbook-rar":{"source":"iana"},"application/vnd.commerce-battelle":{"source":"iana"},"application/vnd.commonspace":{"source":"iana","extensions":["csp"]},"application/vnd.contact.cmsg":{"source":"iana","extensions":["cdbcmsg"]},"application/vnd.coreos.ignition+json":{"source":"iana","compressible":true},"application/vnd.cosmocaller":{"source":"iana","extensions":["cmc"]},"application/vnd.crick.clicker":{"source":"iana","extensions":["clkx"]},"application/vnd.crick.clicker.keyboard":{"source":"iana","extensions":["clkk"]},"application/vnd.crick.clicker.palette":{"source":"iana","extensions":["clkp"]},"application/vnd.crick.clicker.template":{"source":"iana","extensions":["clkt"]},"application/vnd.crick.clicker.wordbank":{"source":"iana","extensions":["clkw"]},"application/vnd.criticaltools.wbs+xml":{"source":"iana","compressible":true,"extensions":["wbs"]},"application/vnd.cryptii.pipe+json":{"source":"iana","compressible":true},"application/vnd.crypto-shade-file":{"source":"iana"},"application/vnd.cryptomator.encrypted":{"source":"iana"},"application/vnd.cryptomator.vault":{"source":"iana"},"application/vnd.ctc-posml":{"source":"iana","extensions":["pml"]},"application/vnd.ctct.ws+xml":{"source":"iana","compressible":true},"application/vnd.cups-pdf":{"source":"iana"},"application/vnd.cups-postscript":{"source":"iana"},"application/vnd.cups-ppd":{"source":"iana","extensions":["ppd"]},"application/vnd.cups-raster":{"source":"iana"},"application/vnd.cups-raw":{"source":"iana"},"application/vnd.curl":{"source":"iana"},"application/vnd.curl.car":{"source":"apache","extensions":["car"]},"application/vnd.curl.pcurl":{"source":"apache","extensions":["pcurl"]},"application/vnd.cyan.dean.root+xml":{"source":"iana","compressible":true},"application/vnd.cybank":{"source":"iana"},"application/vnd.cyclonedx+json":{"source":"iana","compressible":true},"application/vnd.cyclonedx+xml":{"source":"iana","compressible":true},"application/vnd.d2l.coursepackage1p0+zip":{"source":"iana","compressible":false},"application/vnd.d3m-dataset":{"source":"iana"},"application/vnd.d3m-problem":{"source":"iana"},"application/vnd.dart":{"source":"iana","compressible":true,"extensions":["dart"]},"application/vnd.data-vision.rdz":{"source":"iana","extensions":["rdz"]},"application/vnd.datalog":{"source":"iana"},"application/vnd.datapackage+json":{"source":"iana","compressible":true},"application/vnd.dataresource+json":{"source":"iana","compressible":true},"application/vnd.dbf":{"source":"iana","extensions":["dbf"]},"application/vnd.dcmp+xml":{"source":"iana","compressible":true,"extensions":["dcmp"]},"application/vnd.debian.binary-package":{"source":"iana"},"application/vnd.dece.data":{"source":"iana","extensions":["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{"source":"iana","compressible":true,"extensions":["uvt","uvvt"]},"application/vnd.dece.unspecified":{"source":"iana","extensions":["uvx","uvvx"]},"application/vnd.dece.zip":{"source":"iana","extensions":["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{"source":"iana","extensions":["fe_launch"]},"application/vnd.desmume.movie":{"source":"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{"source":"iana"},"application/vnd.dm.delegation+xml":{"source":"iana","compressible":true},"application/vnd.dna":{"source":"iana","extensions":["dna"]},"application/vnd.document+json":{"source":"iana","compressible":true},"application/vnd.dolby.mlp":{"source":"apache","extensions":["mlp"]},"application/vnd.dolby.mobile.1":{"source":"iana"},"application/vnd.dolby.mobile.2":{"source":"iana"},"application/vnd.doremir.scorecloud-binary-document":{"source":"iana"},"application/vnd.dpgraph":{"source":"iana","extensions":["dpg"]},"application/vnd.dreamfactory":{"source":"iana","extensions":["dfac"]},"application/vnd.drive+json":{"source":"iana","compressible":true},"application/vnd.ds-keypoint":{"source":"apache","extensions":["kpxx"]},"application/vnd.dtg.local":{"source":"iana"},"application/vnd.dtg.local.flash":{"source":"iana"},"application/vnd.dtg.local.html":{"source":"iana"},"application/vnd.dvb.ait":{"source":"iana","extensions":["ait"]},"application/vnd.dvb.dvbisl+xml":{"source":"iana","compressible":true},"application/vnd.dvb.dvbj":{"source":"iana"},"application/vnd.dvb.esgcontainer":{"source":"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess2":{"source":"iana"},"application/vnd.dvb.ipdcesgpdd":{"source":"iana"},"application/vnd.dvb.ipdcroaming":{"source":"iana"},"application/vnd.dvb.iptv.alfec-base":{"source":"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{"source":"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-container+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-generic+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-msglist+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-request+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-response+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-init+xml":{"source":"iana","compressible":true},"application/vnd.dvb.pfr":{"source":"iana"},"application/vnd.dvb.service":{"source":"iana","extensions":["svc"]},"application/vnd.dxr":{"source":"iana"},"application/vnd.dynageo":{"source":"iana","extensions":["geo"]},"application/vnd.dzr":{"source":"iana"},"application/vnd.easykaraoke.cdgdownload":{"source":"iana"},"application/vnd.ecdis-update":{"source":"iana"},"application/vnd.ecip.rlp":{"source":"iana"},"application/vnd.eclipse.ditto+json":{"source":"iana","compressible":true},"application/vnd.ecowin.chart":{"source":"iana","extensions":["mag"]},"application/vnd.ecowin.filerequest":{"source":"iana"},"application/vnd.ecowin.fileupdate":{"source":"iana"},"application/vnd.ecowin.series":{"source":"iana"},"application/vnd.ecowin.seriesrequest":{"source":"iana"},"application/vnd.ecowin.seriesupdate":{"source":"iana"},"application/vnd.efi.img":{"source":"iana"},"application/vnd.efi.iso":{"source":"iana"},"application/vnd.eln+zip":{"source":"iana","compressible":false},"application/vnd.emclient.accessrequest+xml":{"source":"iana","compressible":true},"application/vnd.enliven":{"source":"iana","extensions":["nml"]},"application/vnd.enphase.envoy":{"source":"iana"},"application/vnd.eprints.data+xml":{"source":"iana","compressible":true},"application/vnd.epson.esf":{"source":"iana","extensions":["esf"]},"application/vnd.epson.msf":{"source":"iana","extensions":["msf"]},"application/vnd.epson.quickanime":{"source":"iana","extensions":["qam"]},"application/vnd.epson.salt":{"source":"iana","extensions":["slt"]},"application/vnd.epson.ssf":{"source":"iana","extensions":["ssf"]},"application/vnd.ericsson.quickcall":{"source":"iana"},"application/vnd.erofs":{"source":"iana"},"application/vnd.espass-espass+zip":{"source":"iana","compressible":false},"application/vnd.eszigno3+xml":{"source":"iana","compressible":true,"extensions":["es3","et3"]},"application/vnd.etsi.aoc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.asic-e+zip":{"source":"iana","compressible":false},"application/vnd.etsi.asic-s+zip":{"source":"iana","compressible":false},"application/vnd.etsi.cug+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvcommand+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-bc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-cod+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-npvr+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvservice+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsync+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvueprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mcid+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mheg5":{"source":"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{"source":"iana","compressible":true},"application/vnd.etsi.pstn+xml":{"source":"iana","compressible":true},"application/vnd.etsi.sci+xml":{"source":"iana","compressible":true},"application/vnd.etsi.simservs+xml":{"source":"iana","compressible":true},"application/vnd.etsi.timestamp-token":{"source":"iana"},"application/vnd.etsi.tsl+xml":{"source":"iana","compressible":true},"application/vnd.etsi.tsl.der":{"source":"iana"},"application/vnd.eu.kasparian.car+json":{"source":"iana","compressible":true},"application/vnd.eudora.data":{"source":"iana"},"application/vnd.evolv.ecig.profile":{"source":"iana"},"application/vnd.evolv.ecig.settings":{"source":"iana"},"application/vnd.evolv.ecig.theme":{"source":"iana"},"application/vnd.exstream-empower+zip":{"source":"iana","compressible":false},"application/vnd.exstream-package":{"source":"iana"},"application/vnd.ezpix-album":{"source":"iana","extensions":["ez2"]},"application/vnd.ezpix-package":{"source":"iana","extensions":["ez3"]},"application/vnd.f-secure.mobile":{"source":"iana"},"application/vnd.familysearch.gedcom+zip":{"source":"iana","compressible":false},"application/vnd.fastcopy-disk-image":{"source":"iana"},"application/vnd.fdf":{"source":"apache","extensions":["fdf"]},"application/vnd.fdsn.mseed":{"source":"iana","extensions":["mseed"]},"application/vnd.fdsn.seed":{"source":"iana","extensions":["seed","dataless"]},"application/vnd.fdsn.stationxml+xml":{"source":"iana","charset":"XML-BASED","compressible":true},"application/vnd.ffsns":{"source":"iana"},"application/vnd.ficlab.flb+zip":{"source":"iana","compressible":false},"application/vnd.filmit.zfc":{"source":"iana"},"application/vnd.fints":{"source":"iana"},"application/vnd.firemonkeys.cloudcell":{"source":"iana"},"application/vnd.flographit":{"source":"iana","extensions":["gph"]},"application/vnd.fluxtime.clip":{"source":"iana","extensions":["ftc"]},"application/vnd.font-fontforge-sfd":{"source":"iana"},"application/vnd.framemaker":{"source":"iana","extensions":["fm","frame","maker","book"]},"application/vnd.freelog.comic":{"source":"iana"},"application/vnd.frogans.fnc":{"source":"apache","extensions":["fnc"]},"application/vnd.frogans.ltf":{"source":"apache","extensions":["ltf"]},"application/vnd.fsc.weblaunch":{"source":"iana","extensions":["fsc"]},"application/vnd.fujifilm.fb.docuworks":{"source":"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{"source":"iana"},"application/vnd.fujifilm.fb.docuworks.container":{"source":"iana"},"application/vnd.fujifilm.fb.jfi+xml":{"source":"iana","compressible":true},"application/vnd.fujitsu.oasys":{"source":"iana","extensions":["oas"]},"application/vnd.fujitsu.oasys2":{"source":"iana","extensions":["oa2"]},"application/vnd.fujitsu.oasys3":{"source":"iana","extensions":["oa3"]},"application/vnd.fujitsu.oasysgp":{"source":"iana","extensions":["fg5"]},"application/vnd.fujitsu.oasysprs":{"source":"iana","extensions":["bh2"]},"application/vnd.fujixerox.art-ex":{"source":"iana"},"application/vnd.fujixerox.art4":{"source":"iana"},"application/vnd.fujixerox.ddd":{"source":"iana","extensions":["ddd"]},"application/vnd.fujixerox.docuworks":{"source":"iana","extensions":["xdw"]},"application/vnd.fujixerox.docuworks.binder":{"source":"iana","extensions":["xbd"]},"application/vnd.fujixerox.docuworks.container":{"source":"iana"},"application/vnd.fujixerox.hbpl":{"source":"iana"},"application/vnd.fut-misnet":{"source":"iana"},"application/vnd.futoin+cbor":{"source":"iana"},"application/vnd.futoin+json":{"source":"iana","compressible":true},"application/vnd.fuzzysheet":{"source":"iana","extensions":["fzs"]},"application/vnd.ga4gh.passport+jwt":{"source":"iana"},"application/vnd.genomatix.tuxedo":{"source":"iana","extensions":["txd"]},"application/vnd.genozip":{"source":"iana"},"application/vnd.gentics.grd+json":{"source":"iana","compressible":true},"application/vnd.gentoo.catmetadata+xml":{"source":"iana","compressible":true},"application/vnd.gentoo.ebuild":{"source":"iana"},"application/vnd.gentoo.eclass":{"source":"iana"},"application/vnd.gentoo.gpkg":{"source":"iana"},"application/vnd.gentoo.manifest":{"source":"iana"},"application/vnd.gentoo.pkgmetadata+xml":{"source":"iana","compressible":true},"application/vnd.gentoo.xpak":{"source":"iana"},"application/vnd.geo+json":{"source":"apache","compressible":true},"application/vnd.geocube+xml":{"source":"apache","compressible":true},"application/vnd.geogebra.file":{"source":"iana","extensions":["ggb"]},"application/vnd.geogebra.pinboard":{"source":"iana"},"application/vnd.geogebra.slides":{"source":"iana","extensions":["ggs"]},"application/vnd.geogebra.tool":{"source":"iana","extensions":["ggt"]},"application/vnd.geometry-explorer":{"source":"iana","extensions":["gex","gre"]},"application/vnd.geonext":{"source":"iana","extensions":["gxt"]},"application/vnd.geoplan":{"source":"iana","extensions":["g2w"]},"application/vnd.geospace":{"source":"iana","extensions":["g3w"]},"application/vnd.gerber":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt-response":{"source":"iana"},"application/vnd.gmx":{"source":"iana","extensions":["gmx"]},"application/vnd.gnu.taler.exchange+json":{"source":"iana","compressible":true},"application/vnd.gnu.taler.merchant+json":{"source":"iana","compressible":true},"application/vnd.google-apps.audio":{},"application/vnd.google-apps.document":{"compressible":false,"extensions":["gdoc"]},"application/vnd.google-apps.drawing":{"compressible":false,"extensions":["gdraw"]},"application/vnd.google-apps.drive-sdk":{"compressible":false},"application/vnd.google-apps.file":{},"application/vnd.google-apps.folder":{"compressible":false},"application/vnd.google-apps.form":{"compressible":false,"extensions":["gform"]},"application/vnd.google-apps.fusiontable":{},"application/vnd.google-apps.jam":{"compressible":false,"extensions":["gjam"]},"application/vnd.google-apps.mail-layout":{},"application/vnd.google-apps.map":{"compressible":false,"extensions":["gmap"]},"application/vnd.google-apps.photo":{},"application/vnd.google-apps.presentation":{"compressible":false,"extensions":["gslides"]},"application/vnd.google-apps.script":{"compressible":false,"extensions":["gscript"]},"application/vnd.google-apps.shortcut":{},"application/vnd.google-apps.site":{"compressible":false,"extensions":["gsite"]},"application/vnd.google-apps.spreadsheet":{"compressible":false,"extensions":["gsheet"]},"application/vnd.google-apps.unknown":{},"application/vnd.google-apps.video":{},"application/vnd.google-earth.kml+xml":{"source":"iana","compressible":true,"extensions":["kml"]},"application/vnd.google-earth.kmz":{"source":"iana","compressible":false,"extensions":["kmz"]},"application/vnd.gov.sk.e-form+xml":{"source":"apache","compressible":true},"application/vnd.gov.sk.e-form+zip":{"source":"iana","compressible":false},"application/vnd.gov.sk.xmldatacontainer+xml":{"source":"iana","compressible":true,"extensions":["xdcf"]},"application/vnd.gpxsee.map+xml":{"source":"iana","compressible":true},"application/vnd.grafeq":{"source":"iana","extensions":["gqf","gqs"]},"application/vnd.gridmp":{"source":"iana"},"application/vnd.groove-account":{"source":"iana","extensions":["gac"]},"application/vnd.groove-help":{"source":"iana","extensions":["ghf"]},"application/vnd.groove-identity-message":{"source":"iana","extensions":["gim"]},"application/vnd.groove-injector":{"source":"iana","extensions":["grv"]},"application/vnd.groove-tool-message":{"source":"iana","extensions":["gtm"]},"application/vnd.groove-tool-template":{"source":"iana","extensions":["tpl"]},"application/vnd.groove-vcard":{"source":"iana","extensions":["vcg"]},"application/vnd.hal+json":{"source":"iana","compressible":true},"application/vnd.hal+xml":{"source":"iana","compressible":true,"extensions":["hal"]},"application/vnd.handheld-entertainment+xml":{"source":"iana","compressible":true,"extensions":["zmm"]},"application/vnd.hbci":{"source":"iana","extensions":["hbci"]},"application/vnd.hc+json":{"source":"iana","compressible":true},"application/vnd.hcl-bireports":{"source":"iana"},"application/vnd.hdt":{"source":"iana"},"application/vnd.heroku+json":{"source":"iana","compressible":true},"application/vnd.hhe.lesson-player":{"source":"iana","extensions":["les"]},"application/vnd.hp-hpgl":{"source":"iana","extensions":["hpgl"]},"application/vnd.hp-hpid":{"source":"iana","extensions":["hpid"]},"application/vnd.hp-hps":{"source":"iana","extensions":["hps"]},"application/vnd.hp-jlyt":{"source":"iana","extensions":["jlt"]},"application/vnd.hp-pcl":{"source":"iana","extensions":["pcl"]},"application/vnd.hp-pclxl":{"source":"iana","extensions":["pclxl"]},"application/vnd.hsl":{"source":"iana"},"application/vnd.httphone":{"source":"iana"},"application/vnd.hydrostatix.sof-data":{"source":"iana","extensions":["sfd-hdstx"]},"application/vnd.hyper+json":{"source":"iana","compressible":true},"application/vnd.hyper-item+json":{"source":"iana","compressible":true},"application/vnd.hyperdrive+json":{"source":"iana","compressible":true},"application/vnd.hzn-3d-crossword":{"source":"iana"},"application/vnd.ibm.afplinedata":{"source":"apache"},"application/vnd.ibm.electronic-media":{"source":"iana"},"application/vnd.ibm.minipay":{"source":"iana","extensions":["mpy"]},"application/vnd.ibm.modcap":{"source":"apache","extensions":["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{"source":"iana","extensions":["irm"]},"application/vnd.ibm.secure-container":{"source":"iana","extensions":["sc"]},"application/vnd.iccprofile":{"source":"iana","extensions":["icc","icm"]},"application/vnd.ieee.1905":{"source":"iana"},"application/vnd.igloader":{"source":"iana","extensions":["igl"]},"application/vnd.imagemeter.folder+zip":{"source":"iana","compressible":false},"application/vnd.imagemeter.image+zip":{"source":"iana","compressible":false},"application/vnd.immervision-ivp":{"source":"iana","extensions":["ivp"]},"application/vnd.immervision-ivu":{"source":"iana","extensions":["ivu"]},"application/vnd.ims.imsccv1p1":{"source":"iana"},"application/vnd.ims.imsccv1p2":{"source":"iana"},"application/vnd.ims.imsccv1p3":{"source":"iana"},"application/vnd.ims.lis.v2.result+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy.id+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings.simple+json":{"source":"iana","compressible":true},"application/vnd.informedcontrol.rms+xml":{"source":"iana","compressible":true},"application/vnd.informix-visionary":{"source":"apache"},"application/vnd.infotech.project":{"source":"iana"},"application/vnd.infotech.project+xml":{"source":"iana","compressible":true},"application/vnd.innopath.wamp.notification":{"source":"iana"},"application/vnd.insors.igm":{"source":"iana","extensions":["igm"]},"application/vnd.intercon.formnet":{"source":"iana","extensions":["xpw","xpx"]},"application/vnd.intergeo":{"source":"iana","extensions":["i2g"]},"application/vnd.intertrust.digibox":{"source":"iana"},"application/vnd.intertrust.nncp":{"source":"iana"},"application/vnd.intu.qbo":{"source":"iana","extensions":["qbo"]},"application/vnd.intu.qfx":{"source":"iana","extensions":["qfx"]},"application/vnd.ipfs.ipns-record":{"source":"iana"},"application/vnd.ipld.car":{"source":"iana"},"application/vnd.ipld.dag-cbor":{"source":"iana"},"application/vnd.ipld.dag-json":{"source":"iana"},"application/vnd.ipld.raw":{"source":"iana"},"application/vnd.iptc.g2.catalogitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.conceptitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.knowledgeitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsmessage+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.packageitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.planningitem+xml":{"source":"iana","compressible":true},"application/vnd.ipunplugged.rcprofile":{"source":"iana","extensions":["rcprofile"]},"application/vnd.irepository.package+xml":{"source":"iana","compressible":true,"extensions":["irp"]},"application/vnd.is-xpr":{"source":"iana","extensions":["xpr"]},"application/vnd.isac.fcs":{"source":"iana","extensions":["fcs"]},"application/vnd.iso11783-10+zip":{"source":"iana","compressible":false},"application/vnd.jam":{"source":"iana","extensions":["jam"]},"application/vnd.japannet-directory-service":{"source":"iana"},"application/vnd.japannet-jpnstore-wakeup":{"source":"iana"},"application/vnd.japannet-payment-wakeup":{"source":"iana"},"application/vnd.japannet-registration":{"source":"iana"},"application/vnd.japannet-registration-wakeup":{"source":"iana"},"application/vnd.japannet-setstore-wakeup":{"source":"iana"},"application/vnd.japannet-verification":{"source":"iana"},"application/vnd.japannet-verification-wakeup":{"source":"iana"},"application/vnd.jcp.javame.midlet-rms":{"source":"iana","extensions":["rms"]},"application/vnd.jisp":{"source":"iana","extensions":["jisp"]},"application/vnd.joost.joda-archive":{"source":"iana","extensions":["joda"]},"application/vnd.jsk.isdn-ngn":{"source":"iana"},"application/vnd.kahootz":{"source":"iana","extensions":["ktz","ktr"]},"application/vnd.kde.karbon":{"source":"iana","extensions":["karbon"]},"application/vnd.kde.kchart":{"source":"iana","extensions":["chrt"]},"application/vnd.kde.kformula":{"source":"iana","extensions":["kfo"]},"application/vnd.kde.kivio":{"source":"iana","extensions":["flw"]},"application/vnd.kde.kontour":{"source":"iana","extensions":["kon"]},"application/vnd.kde.kpresenter":{"source":"iana","extensions":["kpr","kpt"]},"application/vnd.kde.kspread":{"source":"iana","extensions":["ksp"]},"application/vnd.kde.kword":{"source":"iana","extensions":["kwd","kwt"]},"application/vnd.kdl":{"source":"iana"},"application/vnd.kenameaapp":{"source":"iana","extensions":["htke"]},"application/vnd.keyman.kmp+zip":{"source":"iana","compressible":false},"application/vnd.keyman.kmx":{"source":"iana"},"application/vnd.kidspiration":{"source":"iana","extensions":["kia"]},"application/vnd.kinar":{"source":"iana","extensions":["kne","knp"]},"application/vnd.koan":{"source":"iana","extensions":["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{"source":"iana","extensions":["sse"]},"application/vnd.las":{"source":"iana"},"application/vnd.las.las+json":{"source":"iana","compressible":true},"application/vnd.las.las+xml":{"source":"iana","compressible":true,"extensions":["lasxml"]},"application/vnd.laszip":{"source":"iana"},"application/vnd.ldev.productlicensing":{"source":"iana"},"application/vnd.leap+json":{"source":"iana","compressible":true},"application/vnd.liberty-request+xml":{"source":"iana","compressible":true},"application/vnd.llamagraphics.life-balance.desktop":{"source":"iana","extensions":["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{"source":"iana","compressible":true,"extensions":["lbe"]},"application/vnd.logipipe.circuit+zip":{"source":"iana","compressible":false},"application/vnd.loom":{"source":"iana"},"application/vnd.lotus-1-2-3":{"source":"iana","extensions":["123"]},"application/vnd.lotus-approach":{"source":"iana","extensions":["apr"]},"application/vnd.lotus-freelance":{"source":"iana","extensions":["pre"]},"application/vnd.lotus-notes":{"source":"iana","extensions":["nsf"]},"application/vnd.lotus-organizer":{"source":"iana","extensions":["org"]},"application/vnd.lotus-screencam":{"source":"iana","extensions":["scm"]},"application/vnd.lotus-wordpro":{"source":"iana","extensions":["lwp"]},"application/vnd.macports.portpkg":{"source":"iana","extensions":["portpkg"]},"application/vnd.mapbox-vector-tile":{"source":"iana","extensions":["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.conftoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.license+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.mdcf":{"source":"iana"},"application/vnd.mason+json":{"source":"iana","compressible":true},"application/vnd.maxar.archive.3tz+zip":{"source":"iana","compressible":false},"application/vnd.maxmind.maxmind-db":{"source":"iana"},"application/vnd.mcd":{"source":"iana","extensions":["mcd"]},"application/vnd.mdl":{"source":"iana"},"application/vnd.mdl-mbsdf":{"source":"iana"},"application/vnd.medcalcdata":{"source":"iana","extensions":["mc1"]},"application/vnd.mediastation.cdkey":{"source":"iana","extensions":["cdkey"]},"application/vnd.medicalholodeck.recordxr":{"source":"iana"},"application/vnd.meridian-slingshot":{"source":"iana"},"application/vnd.mermaid":{"source":"iana"},"application/vnd.mfer":{"source":"iana","extensions":["mwf"]},"application/vnd.mfmp":{"source":"iana","extensions":["mfm"]},"application/vnd.micro+json":{"source":"iana","compressible":true},"application/vnd.micrografx.flo":{"source":"iana","extensions":["flo"]},"application/vnd.micrografx.igx":{"source":"iana","extensions":["igx"]},"application/vnd.microsoft.portable-executable":{"source":"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{"source":"iana"},"application/vnd.miele+json":{"source":"iana","compressible":true},"application/vnd.mif":{"source":"iana","extensions":["mif"]},"application/vnd.minisoft-hp3000-save":{"source":"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{"source":"iana"},"application/vnd.mobius.daf":{"source":"iana","extensions":["daf"]},"application/vnd.mobius.dis":{"source":"iana","extensions":["dis"]},"application/vnd.mobius.mbk":{"source":"iana","extensions":["mbk"]},"application/vnd.mobius.mqy":{"source":"iana","extensions":["mqy"]},"application/vnd.mobius.msl":{"source":"iana","extensions":["msl"]},"application/vnd.mobius.plc":{"source":"iana","extensions":["plc"]},"application/vnd.mobius.txf":{"source":"iana","extensions":["txf"]},"application/vnd.modl":{"source":"iana"},"application/vnd.mophun.application":{"source":"iana","extensions":["mpn"]},"application/vnd.mophun.certificate":{"source":"iana","extensions":["mpc"]},"application/vnd.motorola.flexsuite":{"source":"iana"},"application/vnd.motorola.flexsuite.adsi":{"source":"iana"},"application/vnd.motorola.flexsuite.fis":{"source":"iana"},"application/vnd.motorola.flexsuite.gotap":{"source":"iana"},"application/vnd.motorola.flexsuite.kmr":{"source":"iana"},"application/vnd.motorola.flexsuite.ttc":{"source":"iana"},"application/vnd.motorola.flexsuite.wem":{"source":"iana"},"application/vnd.motorola.iprm":{"source":"iana"},"application/vnd.mozilla.xul+xml":{"source":"iana","compressible":true,"extensions":["xul"]},"application/vnd.ms-3mfdocument":{"source":"iana"},"application/vnd.ms-artgalry":{"source":"iana","extensions":["cil"]},"application/vnd.ms-asf":{"source":"iana"},"application/vnd.ms-cab-compressed":{"source":"iana","extensions":["cab"]},"application/vnd.ms-color.iccprofile":{"source":"apache"},"application/vnd.ms-excel":{"source":"iana","compressible":false,"extensions":["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{"source":"iana","extensions":["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{"source":"iana","extensions":["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{"source":"iana","extensions":["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{"source":"iana","extensions":["xltm"]},"application/vnd.ms-fontobject":{"source":"iana","compressible":true,"extensions":["eot"]},"application/vnd.ms-htmlhelp":{"source":"iana","extensions":["chm"]},"application/vnd.ms-ims":{"source":"iana","extensions":["ims"]},"application/vnd.ms-lrm":{"source":"iana","extensions":["lrm"]},"application/vnd.ms-office.activex+xml":{"source":"iana","compressible":true},"application/vnd.ms-officetheme":{"source":"iana","extensions":["thmx"]},"application/vnd.ms-opentype":{"source":"apache","compressible":true},"application/vnd.ms-outlook":{"compressible":false,"extensions":["msg"]},"application/vnd.ms-package.obfuscated-opentype":{"source":"apache"},"application/vnd.ms-pki.seccat":{"source":"apache","extensions":["cat"]},"application/vnd.ms-pki.stl":{"source":"apache","extensions":["stl"]},"application/vnd.ms-playready.initiator+xml":{"source":"iana","compressible":true},"application/vnd.ms-powerpoint":{"source":"iana","compressible":false,"extensions":["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{"source":"iana","extensions":["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{"source":"iana","extensions":["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{"source":"iana","extensions":["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{"source":"iana","extensions":["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{"source":"iana","extensions":["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{"source":"iana","compressible":true},"application/vnd.ms-printing.printticket+xml":{"source":"apache","compressible":true},"application/vnd.ms-printschematicket+xml":{"source":"iana","compressible":true},"application/vnd.ms-project":{"source":"iana","extensions":["mpp","mpt"]},"application/vnd.ms-tnef":{"source":"iana"},"application/vnd.ms-visio.viewer":{"extensions":["vdx"]},"application/vnd.ms-windows.devicepairing":{"source":"iana"},"application/vnd.ms-windows.nwprinting.oob":{"source":"iana"},"application/vnd.ms-windows.printerpairing":{"source":"iana"},"application/vnd.ms-windows.wsd.oob":{"source":"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.lic-resp":{"source":"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.meter-resp":{"source":"iana"},"application/vnd.ms-word.document.macroenabled.12":{"source":"iana","extensions":["docm"]},"application/vnd.ms-word.template.macroenabled.12":{"source":"iana","extensions":["dotm"]},"application/vnd.ms-works":{"source":"iana","extensions":["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{"source":"iana","extensions":["wpl"]},"application/vnd.ms-xpsdocument":{"source":"iana","compressible":false,"extensions":["xps"]},"application/vnd.msa-disk-image":{"source":"iana"},"application/vnd.mseq":{"source":"iana","extensions":["mseq"]},"application/vnd.msgpack":{"source":"iana"},"application/vnd.msign":{"source":"iana"},"application/vnd.multiad.creator":{"source":"iana"},"application/vnd.multiad.creator.cif":{"source":"iana"},"application/vnd.music-niff":{"source":"iana"},"application/vnd.musician":{"source":"iana","extensions":["mus"]},"application/vnd.muvee.style":{"source":"iana","extensions":["msty"]},"application/vnd.mynfc":{"source":"iana","extensions":["taglet"]},"application/vnd.nacamar.ybrid+json":{"source":"iana","compressible":true},"application/vnd.nato.bindingdataobject+cbor":{"source":"iana"},"application/vnd.nato.bindingdataobject+json":{"source":"iana","compressible":true},"application/vnd.nato.bindingdataobject+xml":{"source":"iana","compressible":true,"extensions":["bdo"]},"application/vnd.nato.openxmlformats-package.iepd+zip":{"source":"iana","compressible":false},"application/vnd.ncd.control":{"source":"iana"},"application/vnd.ncd.reference":{"source":"iana"},"application/vnd.nearst.inv+json":{"source":"iana","compressible":true},"application/vnd.nebumind.line":{"source":"iana"},"application/vnd.nervana":{"source":"iana"},"application/vnd.netfpx":{"source":"iana"},"application/vnd.neurolanguage.nlu":{"source":"iana","extensions":["nlu"]},"application/vnd.nimn":{"source":"iana"},"application/vnd.nintendo.nitro.rom":{"source":"iana"},"application/vnd.nintendo.snes.rom":{"source":"iana"},"application/vnd.nitf":{"source":"iana","extensions":["ntf","nitf"]},"application/vnd.noblenet-directory":{"source":"iana","extensions":["nnd"]},"application/vnd.noblenet-sealer":{"source":"iana","extensions":["nns"]},"application/vnd.noblenet-web":{"source":"iana","extensions":["nnw"]},"application/vnd.nokia.catalogs":{"source":"iana"},"application/vnd.nokia.conml+wbxml":{"source":"iana"},"application/vnd.nokia.conml+xml":{"source":"iana","compressible":true},"application/vnd.nokia.iptv.config+xml":{"source":"iana","compressible":true},"application/vnd.nokia.isds-radio-presets":{"source":"iana"},"application/vnd.nokia.landmark+wbxml":{"source":"iana"},"application/vnd.nokia.landmark+xml":{"source":"iana","compressible":true},"application/vnd.nokia.landmarkcollection+xml":{"source":"iana","compressible":true},"application/vnd.nokia.n-gage.ac+xml":{"source":"iana","compressible":true,"extensions":["ac"]},"application/vnd.nokia.n-gage.data":{"source":"iana","extensions":["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{"source":"apache","extensions":["n-gage"]},"application/vnd.nokia.ncd":{"source":"iana"},"application/vnd.nokia.pcd+wbxml":{"source":"iana"},"application/vnd.nokia.pcd+xml":{"source":"iana","compressible":true},"application/vnd.nokia.radio-preset":{"source":"iana","extensions":["rpst"]},"application/vnd.nokia.radio-presets":{"source":"iana","extensions":["rpss"]},"application/vnd.novadigm.edm":{"source":"iana","extensions":["edm"]},"application/vnd.novadigm.edx":{"source":"iana","extensions":["edx"]},"application/vnd.novadigm.ext":{"source":"iana","extensions":["ext"]},"application/vnd.ntt-local.content-share":{"source":"iana"},"application/vnd.ntt-local.file-transfer":{"source":"iana"},"application/vnd.ntt-local.ogw_remote-access":{"source":"iana"},"application/vnd.ntt-local.sip-ta_remote":{"source":"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{"source":"iana"},"application/vnd.oai.workflows":{"source":"iana"},"application/vnd.oai.workflows+json":{"source":"iana","compressible":true},"application/vnd.oai.workflows+yaml":{"source":"iana"},"application/vnd.oasis.opendocument.base":{"source":"iana"},"application/vnd.oasis.opendocument.chart":{"source":"iana","extensions":["odc"]},"application/vnd.oasis.opendocument.chart-template":{"source":"iana","extensions":["otc"]},"application/vnd.oasis.opendocument.database":{"source":"apache","extensions":["odb"]},"application/vnd.oasis.opendocument.formula":{"source":"iana","extensions":["odf"]},"application/vnd.oasis.opendocument.formula-template":{"source":"iana","extensions":["odft"]},"application/vnd.oasis.opendocument.graphics":{"source":"iana","compressible":false,"extensions":["odg"]},"application/vnd.oasis.opendocument.graphics-template":{"source":"iana","extensions":["otg"]},"application/vnd.oasis.opendocument.image":{"source":"iana","extensions":["odi"]},"application/vnd.oasis.opendocument.image-template":{"source":"iana","extensions":["oti"]},"application/vnd.oasis.opendocument.presentation":{"source":"iana","compressible":false,"extensions":["odp"]},"application/vnd.oasis.opendocument.presentation-template":{"source":"iana","extensions":["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{"source":"iana","compressible":false,"extensions":["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{"source":"iana","extensions":["ots"]},"application/vnd.oasis.opendocument.text":{"source":"iana","compressible":false,"extensions":["odt"]},"application/vnd.oasis.opendocument.text-master":{"source":"iana","extensions":["odm"]},"application/vnd.oasis.opendocument.text-master-template":{"source":"iana"},"application/vnd.oasis.opendocument.text-template":{"source":"iana","extensions":["ott"]},"application/vnd.oasis.opendocument.text-web":{"source":"iana","extensions":["oth"]},"application/vnd.obn":{"source":"iana"},"application/vnd.ocf+cbor":{"source":"iana"},"application/vnd.oci.image.manifest.v1+json":{"source":"iana","compressible":true},"application/vnd.oftn.l10n+json":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessdownload+xml":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessstreaming+xml":{"source":"iana","compressible":true},"application/vnd.oipf.cspg-hexbinary":{"source":"iana"},"application/vnd.oipf.dae.svg+xml":{"source":"iana","compressible":true},"application/vnd.oipf.dae.xhtml+xml":{"source":"iana","compressible":true},"application/vnd.oipf.mippvcontrolmessage+xml":{"source":"iana","compressible":true},"application/vnd.oipf.pae.gem":{"source":"iana"},"application/vnd.oipf.spdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.oipf.spdlist+xml":{"source":"iana","compressible":true},"application/vnd.oipf.ueprofile+xml":{"source":"iana","compressible":true},"application/vnd.oipf.userprofile+xml":{"source":"iana","compressible":true},"application/vnd.olpc-sugar":{"source":"iana","extensions":["xo"]},"application/vnd.oma-scws-config":{"source":"iana"},"application/vnd.oma-scws-http-request":{"source":"iana"},"application/vnd.oma-scws-http-response":{"source":"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.drm-trigger+xml":{"source":"apache","compressible":true},"application/vnd.oma.bcast.imd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.ltkm":{"source":"iana"},"application/vnd.oma.bcast.notification+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.provisioningtrigger":{"source":"iana"},"application/vnd.oma.bcast.sgboot":{"source":"iana"},"application/vnd.oma.bcast.sgdd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.sgdu":{"source":"iana"},"application/vnd.oma.bcast.simple-symbol-container":{"source":"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{"source":"apache","compressible":true},"application/vnd.oma.bcast.sprov+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.stkm":{"source":"iana"},"application/vnd.oma.cab-address-book+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-feature-handler+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-pcc+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-subs-invite+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-user-prefs+xml":{"source":"iana","compressible":true},"application/vnd.oma.dcd":{"source":"iana"},"application/vnd.oma.dcdc":{"source":"iana"},"application/vnd.oma.dd2+xml":{"source":"iana","compressible":true,"extensions":["dd2"]},"application/vnd.oma.drm.risd+xml":{"source":"iana","compressible":true},"application/vnd.oma.group-usage-list+xml":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+cbor":{"source":"iana"},"application/vnd.oma.lwm2m+json":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+tlv":{"source":"iana"},"application/vnd.oma.pal+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.detailed-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.final-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.groups+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.invocation-descriptor+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.optimized-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.push":{"source":"iana"},"application/vnd.oma.scidm.messages+xml":{"source":"iana","compressible":true},"application/vnd.oma.xcap-directory+xml":{"source":"iana","compressible":true},"application/vnd.omads-email+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-file+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-folder+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omaloc-supl-init":{"source":"iana"},"application/vnd.onepager":{"source":"iana"},"application/vnd.onepagertamp":{"source":"iana"},"application/vnd.onepagertamx":{"source":"iana"},"application/vnd.onepagertat":{"source":"iana"},"application/vnd.onepagertatp":{"source":"iana"},"application/vnd.onepagertatx":{"source":"iana"},"application/vnd.onvif.metadata":{"source":"iana"},"application/vnd.openblox.game+xml":{"source":"iana","compressible":true,"extensions":["obgx"]},"application/vnd.openblox.game-binary":{"source":"iana"},"application/vnd.openeye.oeb":{"source":"iana"},"application/vnd.openofficeorg.extension":{"source":"apache","extensions":["oxt"]},"application/vnd.openstreetmap.data+xml":{"source":"iana","compressible":true,"extensions":["osm"]},"application/vnd.opentimestamps.ots":{"source":"iana"},"application/vnd.openvpi.dspx+json":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawing+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{"source":"iana","compressible":false,"extensions":["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slide":{"source":"iana","extensions":["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{"source":"iana","extensions":["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.template":{"source":"iana","extensions":["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{"source":"iana","compressible":false,"extensions":["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{"source":"iana","extensions":["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.theme+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.vmldrawing":{"source":"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{"source":"iana","compressible":false,"extensions":["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{"source":"iana","extensions":["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.core-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.relationships+xml":{"source":"iana","compressible":true},"application/vnd.oracle.resource+json":{"source":"iana","compressible":true},"application/vnd.orange.indata":{"source":"iana"},"application/vnd.osa.netdeploy":{"source":"iana"},"application/vnd.osgeo.mapguide.package":{"source":"iana","extensions":["mgp"]},"application/vnd.osgi.bundle":{"source":"iana"},"application/vnd.osgi.dp":{"source":"iana","extensions":["dp"]},"application/vnd.osgi.subsystem":{"source":"iana","extensions":["esa"]},"application/vnd.otps.ct-kip+xml":{"source":"iana","compressible":true},"application/vnd.oxli.countgraph":{"source":"iana"},"application/vnd.pagerduty+json":{"source":"iana","compressible":true},"application/vnd.palm":{"source":"iana","extensions":["pdb","pqa","oprc"]},"application/vnd.panoply":{"source":"iana"},"application/vnd.paos.xml":{"source":"iana"},"application/vnd.patentdive":{"source":"iana"},"application/vnd.patientecommsdoc":{"source":"iana"},"application/vnd.pawaafile":{"source":"iana","extensions":["paw"]},"application/vnd.pcos":{"source":"iana"},"application/vnd.pg.format":{"source":"iana","extensions":["str"]},"application/vnd.pg.osasli":{"source":"iana","extensions":["ei6"]},"application/vnd.piaccess.application-licence":{"source":"iana"},"application/vnd.picsel":{"source":"iana","extensions":["efif"]},"application/vnd.pmi.widget":{"source":"iana","extensions":["wg"]},"application/vnd.poc.group-advertisement+xml":{"source":"iana","compressible":true},"application/vnd.pocketlearn":{"source":"iana","extensions":["plf"]},"application/vnd.powerbuilder6":{"source":"iana","extensions":["pbd"]},"application/vnd.powerbuilder6-s":{"source":"iana"},"application/vnd.powerbuilder7":{"source":"iana"},"application/vnd.powerbuilder7-s":{"source":"iana"},"application/vnd.powerbuilder75":{"source":"iana"},"application/vnd.powerbuilder75-s":{"source":"iana"},"application/vnd.preminet":{"source":"iana"},"application/vnd.previewsystems.box":{"source":"iana","extensions":["box"]},"application/vnd.procrate.brushset":{"extensions":["brushset"]},"application/vnd.procreate.brush":{"extensions":["brush"]},"application/vnd.procreate.dream":{"extensions":["drm"]},"application/vnd.proteus.magazine":{"source":"iana","extensions":["mgz"]},"application/vnd.psfs":{"source":"iana"},"application/vnd.pt.mundusmundi":{"source":"iana"},"application/vnd.publishare-delta-tree":{"source":"iana","extensions":["qps"]},"application/vnd.pvi.ptid1":{"source":"iana","extensions":["ptid"]},"application/vnd.pwg-multiplexed":{"source":"iana"},"application/vnd.pwg-xhtml-print+xml":{"source":"iana","compressible":true,"extensions":["xhtm"]},"application/vnd.qualcomm.brew-app-res":{"source":"iana"},"application/vnd.quarantainenet":{"source":"iana"},"application/vnd.quark.quarkxpress":{"source":"iana","extensions":["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{"source":"iana"},"application/vnd.radisys.moml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conn+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-stream+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-base+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-detect+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-group+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-speech+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-transform+xml":{"source":"iana","compressible":true},"application/vnd.rainstor.data":{"source":"iana"},"application/vnd.rapid":{"source":"iana"},"application/vnd.rar":{"source":"iana","extensions":["rar"]},"application/vnd.realvnc.bed":{"source":"iana","extensions":["bed"]},"application/vnd.recordare.musicxml":{"source":"iana","extensions":["mxl"]},"application/vnd.recordare.musicxml+xml":{"source":"iana","compressible":true,"extensions":["musicxml"]},"application/vnd.relpipe":{"source":"iana"},"application/vnd.renlearn.rlprint":{"source":"iana"},"application/vnd.resilient.logic":{"source":"iana"},"application/vnd.restful+json":{"source":"iana","compressible":true},"application/vnd.rig.cryptonote":{"source":"iana","extensions":["cryptonote"]},"application/vnd.rim.cod":{"source":"apache","extensions":["cod"]},"application/vnd.rn-realmedia":{"source":"apache","extensions":["rm"]},"application/vnd.rn-realmedia-vbr":{"source":"apache","extensions":["rmvb"]},"application/vnd.route66.link66+xml":{"source":"iana","compressible":true,"extensions":["link66"]},"application/vnd.rs-274x":{"source":"iana"},"application/vnd.ruckus.download":{"source":"iana"},"application/vnd.s3sms":{"source":"iana"},"application/vnd.sailingtracker.track":{"source":"iana","extensions":["st"]},"application/vnd.sar":{"source":"iana"},"application/vnd.sbm.cid":{"source":"iana"},"application/vnd.sbm.mid2":{"source":"iana"},"application/vnd.scribus":{"source":"iana"},"application/vnd.sealed.3df":{"source":"iana"},"application/vnd.sealed.csf":{"source":"iana"},"application/vnd.sealed.doc":{"source":"iana"},"application/vnd.sealed.eml":{"source":"iana"},"application/vnd.sealed.mht":{"source":"iana"},"application/vnd.sealed.net":{"source":"iana"},"application/vnd.sealed.ppt":{"source":"iana"},"application/vnd.sealed.tiff":{"source":"iana"},"application/vnd.sealed.xls":{"source":"iana"},"application/vnd.sealedmedia.softseal.html":{"source":"iana"},"application/vnd.sealedmedia.softseal.pdf":{"source":"iana"},"application/vnd.seemail":{"source":"iana","extensions":["see"]},"application/vnd.seis+json":{"source":"iana","compressible":true},"application/vnd.sema":{"source":"iana","extensions":["sema"]},"application/vnd.semd":{"source":"iana","extensions":["semd"]},"application/vnd.semf":{"source":"iana","extensions":["semf"]},"application/vnd.shade-save-file":{"source":"iana"},"application/vnd.shana.informed.formdata":{"source":"iana","extensions":["ifm"]},"application/vnd.shana.informed.formtemplate":{"source":"iana","extensions":["itp"]},"application/vnd.shana.informed.interchange":{"source":"iana","extensions":["iif"]},"application/vnd.shana.informed.package":{"source":"iana","extensions":["ipk"]},"application/vnd.shootproof+json":{"source":"iana","compressible":true},"application/vnd.shopkick+json":{"source":"iana","compressible":true},"application/vnd.shp":{"source":"iana"},"application/vnd.shx":{"source":"iana"},"application/vnd.sigrok.session":{"source":"iana"},"application/vnd.simtech-mindmapper":{"source":"iana","extensions":["twd","twds"]},"application/vnd.siren+json":{"source":"iana","compressible":true},"application/vnd.sketchometry":{"source":"iana"},"application/vnd.smaf":{"source":"iana","extensions":["mmf"]},"application/vnd.smart.notebook":{"source":"iana"},"application/vnd.smart.teacher":{"source":"iana","extensions":["teacher"]},"application/vnd.smintio.portals.archive":{"source":"iana"},"application/vnd.snesdev-page-table":{"source":"iana"},"application/vnd.software602.filler.form+xml":{"source":"iana","compressible":true,"extensions":["fo"]},"application/vnd.software602.filler.form-xml-zip":{"source":"iana"},"application/vnd.solent.sdkm+xml":{"source":"iana","compressible":true,"extensions":["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{"source":"iana","extensions":["dxp"]},"application/vnd.spotfire.sfs":{"source":"iana","extensions":["sfs"]},"application/vnd.sqlite3":{"source":"iana"},"application/vnd.sss-cod":{"source":"iana"},"application/vnd.sss-dtf":{"source":"iana"},"application/vnd.sss-ntf":{"source":"iana"},"application/vnd.stardivision.calc":{"source":"apache","extensions":["sdc"]},"application/vnd.stardivision.draw":{"source":"apache","extensions":["sda"]},"application/vnd.stardivision.impress":{"source":"apache","extensions":["sdd"]},"application/vnd.stardivision.math":{"source":"apache","extensions":["smf"]},"application/vnd.stardivision.writer":{"source":"apache","extensions":["sdw","vor"]},"application/vnd.stardivision.writer-global":{"source":"apache","extensions":["sgl"]},"application/vnd.stepmania.package":{"source":"iana","extensions":["smzip"]},"application/vnd.stepmania.stepchart":{"source":"iana","extensions":["sm"]},"application/vnd.street-stream":{"source":"iana"},"application/vnd.sun.wadl+xml":{"source":"iana","compressible":true,"extensions":["wadl"]},"application/vnd.sun.xml.calc":{"source":"apache","extensions":["sxc"]},"application/vnd.sun.xml.calc.template":{"source":"apache","extensions":["stc"]},"application/vnd.sun.xml.draw":{"source":"apache","extensions":["sxd"]},"application/vnd.sun.xml.draw.template":{"source":"apache","extensions":["std"]},"application/vnd.sun.xml.impress":{"source":"apache","extensions":["sxi"]},"application/vnd.sun.xml.impress.template":{"source":"apache","extensions":["sti"]},"application/vnd.sun.xml.math":{"source":"apache","extensions":["sxm"]},"application/vnd.sun.xml.writer":{"source":"apache","extensions":["sxw"]},"application/vnd.sun.xml.writer.global":{"source":"apache","extensions":["sxg"]},"application/vnd.sun.xml.writer.template":{"source":"apache","extensions":["stw"]},"application/vnd.sus-calendar":{"source":"iana","extensions":["sus","susp"]},"application/vnd.svd":{"source":"iana","extensions":["svd"]},"application/vnd.swiftview-ics":{"source":"iana"},"application/vnd.sybyl.mol2":{"source":"iana"},"application/vnd.sycle+xml":{"source":"iana","compressible":true},"application/vnd.syft+json":{"source":"iana","compressible":true},"application/vnd.symbian.install":{"source":"apache","extensions":["sis","sisx"]},"application/vnd.syncml+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xsm"]},"application/vnd.syncml.dm+wbxml":{"source":"iana","charset":"UTF-8","extensions":["bdm"]},"application/vnd.syncml.dm+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xdm"]},"application/vnd.syncml.dm.notification":{"source":"iana"},"application/vnd.syncml.dmddf+wbxml":{"source":"iana"},"application/vnd.syncml.dmddf+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{"source":"iana"},"application/vnd.syncml.dmtnds+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.syncml.ds.notification":{"source":"iana"},"application/vnd.tableschema+json":{"source":"iana","compressible":true},"application/vnd.tao.intent-module-archive":{"source":"iana","extensions":["tao"]},"application/vnd.tcpdump.pcap":{"source":"iana","extensions":["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{"source":"iana","compressible":true},"application/vnd.tmd.mediaflex.api+xml":{"source":"iana","compressible":true},"application/vnd.tml":{"source":"iana"},"application/vnd.tmobile-livetv":{"source":"iana","extensions":["tmo"]},"application/vnd.tri.onesource":{"source":"iana"},"application/vnd.trid.tpt":{"source":"iana","extensions":["tpt"]},"application/vnd.triscape.mxs":{"source":"iana","extensions":["mxs"]},"application/vnd.trueapp":{"source":"iana","extensions":["tra"]},"application/vnd.truedoc":{"source":"iana"},"application/vnd.ubisoft.webplayer":{"source":"iana"},"application/vnd.ufdl":{"source":"iana","extensions":["ufd","ufdl"]},"application/vnd.uic.osdm+json":{"source":"iana","compressible":true},"application/vnd.uiq.theme":{"source":"iana","extensions":["utz"]},"application/vnd.umajin":{"source":"iana","extensions":["umj"]},"application/vnd.unity":{"source":"iana","extensions":["unityweb"]},"application/vnd.uoml+xml":{"source":"iana","compressible":true,"extensions":["uoml","uo"]},"application/vnd.uplanet.alert":{"source":"iana"},"application/vnd.uplanet.alert-wbxml":{"source":"iana"},"application/vnd.uplanet.bearer-choice":{"source":"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{"source":"iana"},"application/vnd.uplanet.cacheop":{"source":"iana"},"application/vnd.uplanet.cacheop-wbxml":{"source":"iana"},"application/vnd.uplanet.channel":{"source":"iana"},"application/vnd.uplanet.channel-wbxml":{"source":"iana"},"application/vnd.uplanet.list":{"source":"iana"},"application/vnd.uplanet.list-wbxml":{"source":"iana"},"application/vnd.uplanet.listcmd":{"source":"iana"},"application/vnd.uplanet.listcmd-wbxml":{"source":"iana"},"application/vnd.uplanet.signal":{"source":"iana"},"application/vnd.uri-map":{"source":"iana"},"application/vnd.valve.source.material":{"source":"iana"},"application/vnd.vcx":{"source":"iana","extensions":["vcx"]},"application/vnd.vd-study":{"source":"iana"},"application/vnd.vectorworks":{"source":"iana"},"application/vnd.vel+json":{"source":"iana","compressible":true},"application/vnd.veraison.tsm-report+cbor":{"source":"iana"},"application/vnd.veraison.tsm-report+json":{"source":"iana","compressible":true},"application/vnd.verimatrix.vcas":{"source":"iana"},"application/vnd.veritone.aion+json":{"source":"iana","compressible":true},"application/vnd.veryant.thin":{"source":"iana"},"application/vnd.ves.encrypted":{"source":"iana"},"application/vnd.vidsoft.vidconference":{"source":"iana"},"application/vnd.visio":{"source":"iana","extensions":["vsd","vst","vss","vsw","vsdx","vtx"]},"application/vnd.visionary":{"source":"iana","extensions":["vis"]},"application/vnd.vividence.scriptfile":{"source":"iana"},"application/vnd.vocalshaper.vsp4":{"source":"iana"},"application/vnd.vsf":{"source":"iana","extensions":["vsf"]},"application/vnd.wap.sic":{"source":"iana"},"application/vnd.wap.slc":{"source":"iana"},"application/vnd.wap.wbxml":{"source":"iana","charset":"UTF-8","extensions":["wbxml"]},"application/vnd.wap.wmlc":{"source":"iana","extensions":["wmlc"]},"application/vnd.wap.wmlscriptc":{"source":"iana","extensions":["wmlsc"]},"application/vnd.wasmflow.wafl":{"source":"iana"},"application/vnd.webturbo":{"source":"iana","extensions":["wtb"]},"application/vnd.wfa.dpp":{"source":"iana"},"application/vnd.wfa.p2p":{"source":"iana"},"application/vnd.wfa.wsc":{"source":"iana"},"application/vnd.windows.devicepairing":{"source":"iana"},"application/vnd.wmc":{"source":"iana"},"application/vnd.wmf.bootstrap":{"source":"iana"},"application/vnd.wolfram.mathematica":{"source":"iana"},"application/vnd.wolfram.mathematica.package":{"source":"iana"},"application/vnd.wolfram.player":{"source":"iana","extensions":["nbp"]},"application/vnd.wordlift":{"source":"iana"},"application/vnd.wordperfect":{"source":"iana","extensions":["wpd"]},"application/vnd.wqd":{"source":"iana","extensions":["wqd"]},"application/vnd.wrq-hp3000-labelled":{"source":"iana"},"application/vnd.wt.stf":{"source":"iana","extensions":["stf"]},"application/vnd.wv.csp+wbxml":{"source":"iana"},"application/vnd.wv.csp+xml":{"source":"iana","compressible":true},"application/vnd.wv.ssp+xml":{"source":"iana","compressible":true},"application/vnd.xacml+json":{"source":"iana","compressible":true},"application/vnd.xara":{"source":"iana","extensions":["xar"]},"application/vnd.xarin.cpj":{"source":"iana"},"application/vnd.xecrets-encrypted":{"source":"iana"},"application/vnd.xfdl":{"source":"iana","extensions":["xfdl"]},"application/vnd.xfdl.webform":{"source":"iana"},"application/vnd.xmi+xml":{"source":"iana","compressible":true},"application/vnd.xmpie.cpkg":{"source":"iana"},"application/vnd.xmpie.dpkg":{"source":"iana"},"application/vnd.xmpie.plan":{"source":"iana"},"application/vnd.xmpie.ppkg":{"source":"iana"},"application/vnd.xmpie.xlim":{"source":"iana"},"application/vnd.yamaha.hv-dic":{"source":"iana","extensions":["hvd"]},"application/vnd.yamaha.hv-script":{"source":"iana","extensions":["hvs"]},"application/vnd.yamaha.hv-voice":{"source":"iana","extensions":["hvp"]},"application/vnd.yamaha.openscoreformat":{"source":"iana","extensions":["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{"source":"iana","compressible":true,"extensions":["osfpvg"]},"application/vnd.yamaha.remote-setup":{"source":"iana"},"application/vnd.yamaha.smaf-audio":{"source":"iana","extensions":["saf"]},"application/vnd.yamaha.smaf-phrase":{"source":"iana","extensions":["spf"]},"application/vnd.yamaha.through-ngn":{"source":"iana"},"application/vnd.yamaha.tunnel-udpencap":{"source":"iana"},"application/vnd.yaoweme":{"source":"iana"},"application/vnd.yellowriver-custom-menu":{"source":"iana","extensions":["cmp"]},"application/vnd.zul":{"source":"iana","extensions":["zir","zirz"]},"application/vnd.zzazz.deck+xml":{"source":"iana","compressible":true,"extensions":["zaz"]},"application/voicexml+xml":{"source":"iana","compressible":true,"extensions":["vxml"]},"application/voucher-cms+json":{"source":"iana","compressible":true},"application/voucher-jws+json":{"source":"iana","compressible":true},"application/vp":{"source":"iana"},"application/vp+cose":{"source":"iana"},"application/vp+jwt":{"source":"iana"},"application/vq-rtcpxr":{"source":"iana"},"application/wasm":{"source":"iana","compressible":true,"extensions":["wasm"]},"application/watcherinfo+xml":{"source":"iana","compressible":true,"extensions":["wif"]},"application/webpush-options+json":{"source":"iana","compressible":true},"application/whoispp-query":{"source":"iana"},"application/whoispp-response":{"source":"iana"},"application/widget":{"source":"iana","extensions":["wgt"]},"application/winhlp":{"source":"apache","extensions":["hlp"]},"application/wita":{"source":"iana"},"application/wordperfect5.1":{"source":"iana"},"application/wsdl+xml":{"source":"iana","compressible":true,"extensions":["wsdl"]},"application/wspolicy+xml":{"source":"iana","compressible":true,"extensions":["wspolicy"]},"application/x-7z-compressed":{"source":"apache","compressible":false,"extensions":["7z"]},"application/x-abiword":{"source":"apache","extensions":["abw"]},"application/x-ace-compressed":{"source":"apache","extensions":["ace"]},"application/x-amf":{"source":"apache"},"application/x-apple-diskimage":{"source":"apache","extensions":["dmg"]},"application/x-arj":{"compressible":false,"extensions":["arj"]},"application/x-authorware-bin":{"source":"apache","extensions":["aab","x32","u32","vox"]},"application/x-authorware-map":{"source":"apache","extensions":["aam"]},"application/x-authorware-seg":{"source":"apache","extensions":["aas"]},"application/x-bcpio":{"source":"apache","extensions":["bcpio"]},"application/x-bdoc":{"compressible":false,"extensions":["bdoc"]},"application/x-bittorrent":{"source":"apache","extensions":["torrent"]},"application/x-blender":{"extensions":["blend"]},"application/x-blorb":{"source":"apache","extensions":["blb","blorb"]},"application/x-bzip":{"source":"apache","compressible":false,"extensions":["bz"]},"application/x-bzip2":{"source":"apache","compressible":false,"extensions":["bz2","boz"]},"application/x-cbr":{"source":"apache","extensions":["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{"source":"apache","extensions":["vcd"]},"application/x-cfs-compressed":{"source":"apache","extensions":["cfs"]},"application/x-chat":{"source":"apache","extensions":["chat"]},"application/x-chess-pgn":{"source":"apache","extensions":["pgn"]},"application/x-chrome-extension":{"extensions":["crx"]},"application/x-cocoa":{"source":"nginx","extensions":["cco"]},"application/x-compress":{"source":"apache"},"application/x-compressed":{"extensions":["rar"]},"application/x-conference":{"source":"apache","extensions":["nsc"]},"application/x-cpio":{"source":"apache","extensions":["cpio"]},"application/x-csh":{"source":"apache","extensions":["csh"]},"application/x-deb":{"compressible":false},"application/x-debian-package":{"source":"apache","extensions":["deb","udeb"]},"application/x-dgc-compressed":{"source":"apache","extensions":["dgc"]},"application/x-director":{"source":"apache","extensions":["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{"source":"apache","extensions":["wad"]},"application/x-dtbncx+xml":{"source":"apache","compressible":true,"extensions":["ncx"]},"application/x-dtbook+xml":{"source":"apache","compressible":true,"extensions":["dtb"]},"application/x-dtbresource+xml":{"source":"apache","compressible":true,"extensions":["res"]},"application/x-dvi":{"source":"apache","compressible":false,"extensions":["dvi"]},"application/x-envoy":{"source":"apache","extensions":["evy"]},"application/x-eva":{"source":"apache","extensions":["eva"]},"application/x-font-bdf":{"source":"apache","extensions":["bdf"]},"application/x-font-dos":{"source":"apache"},"application/x-font-framemaker":{"source":"apache"},"application/x-font-ghostscript":{"source":"apache","extensions":["gsf"]},"application/x-font-libgrx":{"source":"apache"},"application/x-font-linux-psf":{"source":"apache","extensions":["psf"]},"application/x-font-pcf":{"source":"apache","extensions":["pcf"]},"application/x-font-snf":{"source":"apache","extensions":["snf"]},"application/x-font-speedo":{"source":"apache"},"application/x-font-sunos-news":{"source":"apache"},"application/x-font-type1":{"source":"apache","extensions":["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{"source":"apache"},"application/x-freearc":{"source":"apache","extensions":["arc"]},"application/x-futuresplash":{"source":"apache","extensions":["spl"]},"application/x-gca-compressed":{"source":"apache","extensions":["gca"]},"application/x-glulx":{"source":"apache","extensions":["ulx"]},"application/x-gnumeric":{"source":"apache","extensions":["gnumeric"]},"application/x-gramps-xml":{"source":"apache","extensions":["gramps"]},"application/x-gtar":{"source":"apache","extensions":["gtar"]},"application/x-gzip":{"source":"apache"},"application/x-hdf":{"source":"apache","extensions":["hdf"]},"application/x-httpd-php":{"compressible":true,"extensions":["php"]},"application/x-install-instructions":{"source":"apache","extensions":["install"]},"application/x-ipynb+json":{"compressible":true,"extensions":["ipynb"]},"application/x-iso9660-image":{"source":"apache","extensions":["iso"]},"application/x-iwork-keynote-sffkey":{"extensions":["key"]},"application/x-iwork-numbers-sffnumbers":{"extensions":["numbers"]},"application/x-iwork-pages-sffpages":{"extensions":["pages"]},"application/x-java-archive-diff":{"source":"nginx","extensions":["jardiff"]},"application/x-java-jnlp-file":{"source":"apache","compressible":false,"extensions":["jnlp"]},"application/x-javascript":{"compressible":true},"application/x-keepass2":{"extensions":["kdbx"]},"application/x-latex":{"source":"apache","compressible":false,"extensions":["latex"]},"application/x-lua-bytecode":{"extensions":["luac"]},"application/x-lzh-compressed":{"source":"apache","extensions":["lzh","lha"]},"application/x-makeself":{"source":"nginx","extensions":["run"]},"application/x-mie":{"source":"apache","extensions":["mie"]},"application/x-mobipocket-ebook":{"source":"apache","extensions":["prc","mobi"]},"application/x-mpegurl":{"compressible":false},"application/x-ms-application":{"source":"apache","extensions":["application"]},"application/x-ms-shortcut":{"source":"apache","extensions":["lnk"]},"application/x-ms-wmd":{"source":"apache","extensions":["wmd"]},"application/x-ms-wmz":{"source":"apache","extensions":["wmz"]},"application/x-ms-xbap":{"source":"apache","extensions":["xbap"]},"application/x-msaccess":{"source":"apache","extensions":["mdb"]},"application/x-msbinder":{"source":"apache","extensions":["obd"]},"application/x-mscardfile":{"source":"apache","extensions":["crd"]},"application/x-msclip":{"source":"apache","extensions":["clp"]},"application/x-msdos-program":{"extensions":["exe"]},"application/x-msdownload":{"source":"apache","extensions":["exe","dll","com","bat","msi"]},"application/x-msmediaview":{"source":"apache","extensions":["mvb","m13","m14"]},"application/x-msmetafile":{"source":"apache","extensions":["wmf","wmz","emf","emz"]},"application/x-msmoney":{"source":"apache","extensions":["mny"]},"application/x-mspublisher":{"source":"apache","extensions":["pub"]},"application/x-msschedule":{"source":"apache","extensions":["scd"]},"application/x-msterminal":{"source":"apache","extensions":["trm"]},"application/x-mswrite":{"source":"apache","extensions":["wri"]},"application/x-netcdf":{"source":"apache","extensions":["nc","cdf"]},"application/x-ns-proxy-autoconfig":{"compressible":true,"extensions":["pac"]},"application/x-nzb":{"source":"apache","extensions":["nzb"]},"application/x-perl":{"source":"nginx","extensions":["pl","pm"]},"application/x-pilot":{"source":"nginx","extensions":["prc","pdb"]},"application/x-pkcs12":{"source":"apache","compressible":false,"extensions":["p12","pfx"]},"application/x-pkcs7-certificates":{"source":"apache","extensions":["p7b","spc"]},"application/x-pkcs7-certreqresp":{"source":"apache","extensions":["p7r"]},"application/x-pki-message":{"source":"iana"},"application/x-rar-compressed":{"source":"apache","compressible":false,"extensions":["rar"]},"application/x-redhat-package-manager":{"source":"nginx","extensions":["rpm"]},"application/x-research-info-systems":{"source":"apache","extensions":["ris"]},"application/x-sea":{"source":"nginx","extensions":["sea"]},"application/x-sh":{"source":"apache","compressible":true,"extensions":["sh"]},"application/x-shar":{"source":"apache","extensions":["shar"]},"application/x-shockwave-flash":{"source":"apache","compressible":false,"extensions":["swf"]},"application/x-silverlight-app":{"source":"apache","extensions":["xap"]},"application/x-sql":{"source":"apache","extensions":["sql"]},"application/x-stuffit":{"source":"apache","compressible":false,"extensions":["sit"]},"application/x-stuffitx":{"source":"apache","extensions":["sitx"]},"application/x-subrip":{"source":"apache","extensions":["srt"]},"application/x-sv4cpio":{"source":"apache","extensions":["sv4cpio"]},"application/x-sv4crc":{"source":"apache","extensions":["sv4crc"]},"application/x-t3vm-image":{"source":"apache","extensions":["t3"]},"application/x-tads":{"source":"apache","extensions":["gam"]},"application/x-tar":{"source":"apache","compressible":true,"extensions":["tar"]},"application/x-tcl":{"source":"apache","extensions":["tcl","tk"]},"application/x-tex":{"source":"apache","extensions":["tex"]},"application/x-tex-tfm":{"source":"apache","extensions":["tfm"]},"application/x-texinfo":{"source":"apache","extensions":["texinfo","texi"]},"application/x-tgif":{"source":"apache","extensions":["obj"]},"application/x-ustar":{"source":"apache","extensions":["ustar"]},"application/x-virtualbox-hdd":{"compressible":true,"extensions":["hdd"]},"application/x-virtualbox-ova":{"compressible":true,"extensions":["ova"]},"application/x-virtualbox-ovf":{"compressible":true,"extensions":["ovf"]},"application/x-virtualbox-vbox":{"compressible":true,"extensions":["vbox"]},"application/x-virtualbox-vbox-extpack":{"compressible":false,"extensions":["vbox-extpack"]},"application/x-virtualbox-vdi":{"compressible":true,"extensions":["vdi"]},"application/x-virtualbox-vhd":{"compressible":true,"extensions":["vhd"]},"application/x-virtualbox-vmdk":{"compressible":true,"extensions":["vmdk"]},"application/x-wais-source":{"source":"apache","extensions":["src"]},"application/x-web-app-manifest+json":{"compressible":true,"extensions":["webapp"]},"application/x-www-form-urlencoded":{"source":"iana","compressible":true},"application/x-x509-ca-cert":{"source":"iana","extensions":["der","crt","pem"]},"application/x-x509-ca-ra-cert":{"source":"iana"},"application/x-x509-next-ca-cert":{"source":"iana"},"application/x-xfig":{"source":"apache","extensions":["fig"]},"application/x-xliff+xml":{"source":"apache","compressible":true,"extensions":["xlf"]},"application/x-xpinstall":{"source":"apache","compressible":false,"extensions":["xpi"]},"application/x-xz":{"source":"apache","extensions":["xz"]},"application/x-zip-compressed":{"extensions":["zip"]},"application/x-zmachine":{"source":"apache","extensions":["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{"source":"iana"},"application/xacml+xml":{"source":"iana","compressible":true},"application/xaml+xml":{"source":"apache","compressible":true,"extensions":["xaml"]},"application/xcap-att+xml":{"source":"iana","compressible":true,"extensions":["xav"]},"application/xcap-caps+xml":{"source":"iana","compressible":true,"extensions":["xca"]},"application/xcap-diff+xml":{"source":"iana","compressible":true,"extensions":["xdf"]},"application/xcap-el+xml":{"source":"iana","compressible":true,"extensions":["xel"]},"application/xcap-error+xml":{"source":"iana","compressible":true},"application/xcap-ns+xml":{"source":"iana","compressible":true,"extensions":["xns"]},"application/xcon-conference-info+xml":{"source":"iana","compressible":true},"application/xcon-conference-info-diff+xml":{"source":"iana","compressible":true},"application/xenc+xml":{"source":"iana","compressible":true,"extensions":["xenc"]},"application/xfdf":{"source":"iana","extensions":["xfdf"]},"application/xhtml+xml":{"source":"iana","compressible":true,"extensions":["xhtml","xht"]},"application/xhtml-voice+xml":{"source":"apache","compressible":true},"application/xliff+xml":{"source":"iana","compressible":true,"extensions":["xlf"]},"application/xml":{"source":"iana","compressible":true,"extensions":["xml","xsl","xsd","rng"]},"application/xml-dtd":{"source":"iana","compressible":true,"extensions":["dtd"]},"application/xml-external-parsed-entity":{"source":"iana"},"application/xml-patch+xml":{"source":"iana","compressible":true},"application/xmpp+xml":{"source":"iana","compressible":true},"application/xop+xml":{"source":"iana","compressible":true,"extensions":["xop"]},"application/xproc+xml":{"source":"apache","compressible":true,"extensions":["xpl"]},"application/xslt+xml":{"source":"iana","compressible":true,"extensions":["xsl","xslt"]},"application/xspf+xml":{"source":"apache","compressible":true,"extensions":["xspf"]},"application/xv+xml":{"source":"iana","compressible":true,"extensions":["mxml","xhvml","xvml","xvm"]},"application/yaml":{"source":"iana"},"application/yang":{"source":"iana","extensions":["yang"]},"application/yang-data+cbor":{"source":"iana"},"application/yang-data+json":{"source":"iana","compressible":true},"application/yang-data+xml":{"source":"iana","compressible":true},"application/yang-patch+json":{"source":"iana","compressible":true},"application/yang-patch+xml":{"source":"iana","compressible":true},"application/yang-sid+json":{"source":"iana","compressible":true},"application/yin+xml":{"source":"iana","compressible":true,"extensions":["yin"]},"application/zip":{"source":"iana","compressible":false,"extensions":["zip"]},"application/zip+dotlottie":{"extensions":["lottie"]},"application/zlib":{"source":"iana"},"application/zstd":{"source":"iana"},"audio/1d-interleaved-parityfec":{"source":"iana"},"audio/32kadpcm":{"source":"iana"},"audio/3gpp":{"source":"iana","compressible":false,"extensions":["3gpp"]},"audio/3gpp2":{"source":"iana"},"audio/aac":{"source":"iana","extensions":["adts","aac"]},"audio/ac3":{"source":"iana"},"audio/adpcm":{"source":"apache","extensions":["adp"]},"audio/amr":{"source":"iana","extensions":["amr"]},"audio/amr-wb":{"source":"iana"},"audio/amr-wb+":{"source":"iana"},"audio/aptx":{"source":"iana"},"audio/asc":{"source":"iana"},"audio/atrac-advanced-lossless":{"source":"iana"},"audio/atrac-x":{"source":"iana"},"audio/atrac3":{"source":"iana"},"audio/basic":{"source":"iana","compressible":false,"extensions":["au","snd"]},"audio/bv16":{"source":"iana"},"audio/bv32":{"source":"iana"},"audio/clearmode":{"source":"iana"},"audio/cn":{"source":"iana"},"audio/dat12":{"source":"iana"},"audio/dls":{"source":"iana"},"audio/dsr-es201108":{"source":"iana"},"audio/dsr-es202050":{"source":"iana"},"audio/dsr-es202211":{"source":"iana"},"audio/dsr-es202212":{"source":"iana"},"audio/dv":{"source":"iana"},"audio/dvi4":{"source":"iana"},"audio/eac3":{"source":"iana"},"audio/encaprtp":{"source":"iana"},"audio/evrc":{"source":"iana"},"audio/evrc-qcp":{"source":"iana"},"audio/evrc0":{"source":"iana"},"audio/evrc1":{"source":"iana"},"audio/evrcb":{"source":"iana"},"audio/evrcb0":{"source":"iana"},"audio/evrcb1":{"source":"iana"},"audio/evrcnw":{"source":"iana"},"audio/evrcnw0":{"source":"iana"},"audio/evrcnw1":{"source":"iana"},"audio/evrcwb":{"source":"iana"},"audio/evrcwb0":{"source":"iana"},"audio/evrcwb1":{"source":"iana"},"audio/evs":{"source":"iana"},"audio/flac":{"source":"iana"},"audio/flexfec":{"source":"iana"},"audio/fwdred":{"source":"iana"},"audio/g711-0":{"source":"iana"},"audio/g719":{"source":"iana"},"audio/g722":{"source":"iana"},"audio/g7221":{"source":"iana"},"audio/g723":{"source":"iana"},"audio/g726-16":{"source":"iana"},"audio/g726-24":{"source":"iana"},"audio/g726-32":{"source":"iana"},"audio/g726-40":{"source":"iana"},"audio/g728":{"source":"iana"},"audio/g729":{"source":"iana"},"audio/g7291":{"source":"iana"},"audio/g729d":{"source":"iana"},"audio/g729e":{"source":"iana"},"audio/gsm":{"source":"iana"},"audio/gsm-efr":{"source":"iana"},"audio/gsm-hr-08":{"source":"iana"},"audio/ilbc":{"source":"iana"},"audio/ip-mr_v2.5":{"source":"iana"},"audio/isac":{"source":"apache"},"audio/l16":{"source":"iana"},"audio/l20":{"source":"iana"},"audio/l24":{"source":"iana","compressible":false},"audio/l8":{"source":"iana"},"audio/lpc":{"source":"iana"},"audio/matroska":{"source":"iana"},"audio/melp":{"source":"iana"},"audio/melp1200":{"source":"iana"},"audio/melp2400":{"source":"iana"},"audio/melp600":{"source":"iana"},"audio/mhas":{"source":"iana"},"audio/midi":{"source":"apache","extensions":["mid","midi","kar","rmi"]},"audio/midi-clip":{"source":"iana"},"audio/mobile-xmf":{"source":"iana","extensions":["mxmf"]},"audio/mp3":{"compressible":false,"extensions":["mp3"]},"audio/mp4":{"source":"iana","compressible":false,"extensions":["m4a","mp4a","m4b"]},"audio/mp4a-latm":{"source":"iana"},"audio/mpa":{"source":"iana"},"audio/mpa-robust":{"source":"iana"},"audio/mpeg":{"source":"iana","compressible":false,"extensions":["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{"source":"iana"},"audio/musepack":{"source":"apache"},"audio/ogg":{"source":"iana","compressible":false,"extensions":["oga","ogg","spx","opus"]},"audio/opus":{"source":"iana"},"audio/parityfec":{"source":"iana"},"audio/pcma":{"source":"iana"},"audio/pcma-wb":{"source":"iana"},"audio/pcmu":{"source":"iana"},"audio/pcmu-wb":{"source":"iana"},"audio/prs.sid":{"source":"iana"},"audio/qcelp":{"source":"iana"},"audio/raptorfec":{"source":"iana"},"audio/red":{"source":"iana"},"audio/rtp-enc-aescm128":{"source":"iana"},"audio/rtp-midi":{"source":"iana"},"audio/rtploopback":{"source":"iana"},"audio/rtx":{"source":"iana"},"audio/s3m":{"source":"apache","extensions":["s3m"]},"audio/scip":{"source":"iana"},"audio/silk":{"source":"apache","extensions":["sil"]},"audio/smv":{"source":"iana"},"audio/smv-qcp":{"source":"iana"},"audio/smv0":{"source":"iana"},"audio/sofa":{"source":"iana"},"audio/sp-midi":{"source":"iana"},"audio/speex":{"source":"iana"},"audio/t140c":{"source":"iana"},"audio/t38":{"source":"iana"},"audio/telephone-event":{"source":"iana"},"audio/tetra_acelp":{"source":"iana"},"audio/tetra_acelp_bb":{"source":"iana"},"audio/tone":{"source":"iana"},"audio/tsvcis":{"source":"iana"},"audio/uemclip":{"source":"iana"},"audio/ulpfec":{"source":"iana"},"audio/usac":{"source":"iana"},"audio/vdvi":{"source":"iana"},"audio/vmr-wb":{"source":"iana"},"audio/vnd.3gpp.iufp":{"source":"iana"},"audio/vnd.4sb":{"source":"iana"},"audio/vnd.audiokoz":{"source":"iana"},"audio/vnd.celp":{"source":"iana"},"audio/vnd.cisco.nse":{"source":"iana"},"audio/vnd.cmles.radio-events":{"source":"iana"},"audio/vnd.cns.anp1":{"source":"iana"},"audio/vnd.cns.inf1":{"source":"iana"},"audio/vnd.dece.audio":{"source":"iana","extensions":["uva","uvva"]},"audio/vnd.digital-winds":{"source":"iana","extensions":["eol"]},"audio/vnd.dlna.adts":{"source":"iana"},"audio/vnd.dolby.heaac.1":{"source":"iana"},"audio/vnd.dolby.heaac.2":{"source":"iana"},"audio/vnd.dolby.mlp":{"source":"iana"},"audio/vnd.dolby.mps":{"source":"iana"},"audio/vnd.dolby.pl2":{"source":"iana"},"audio/vnd.dolby.pl2x":{"source":"iana"},"audio/vnd.dolby.pl2z":{"source":"iana"},"audio/vnd.dolby.pulse.1":{"source":"iana"},"audio/vnd.dra":{"source":"iana","extensions":["dra"]},"audio/vnd.dts":{"source":"iana","extensions":["dts"]},"audio/vnd.dts.hd":{"source":"iana","extensions":["dtshd"]},"audio/vnd.dts.uhd":{"source":"iana"},"audio/vnd.dvb.file":{"source":"iana"},"audio/vnd.everad.plj":{"source":"iana"},"audio/vnd.hns.audio":{"source":"iana"},"audio/vnd.lucent.voice":{"source":"iana","extensions":["lvp"]},"audio/vnd.ms-playready.media.pya":{"source":"iana","extensions":["pya"]},"audio/vnd.nokia.mobile-xmf":{"source":"iana"},"audio/vnd.nortel.vbk":{"source":"iana"},"audio/vnd.nuera.ecelp4800":{"source":"iana","extensions":["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{"source":"iana","extensions":["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{"source":"iana","extensions":["ecelp9600"]},"audio/vnd.octel.sbc":{"source":"iana"},"audio/vnd.presonus.multitrack":{"source":"iana"},"audio/vnd.qcelp":{"source":"apache"},"audio/vnd.rhetorex.32kadpcm":{"source":"iana"},"audio/vnd.rip":{"source":"iana","extensions":["rip"]},"audio/vnd.rn-realaudio":{"compressible":false},"audio/vnd.sealedmedia.softseal.mpeg":{"source":"iana"},"audio/vnd.vmx.cvsd":{"source":"iana"},"audio/vnd.wave":{"compressible":false},"audio/vorbis":{"source":"iana","compressible":false},"audio/vorbis-config":{"source":"iana"},"audio/wav":{"compressible":false,"extensions":["wav"]},"audio/wave":{"compressible":false,"extensions":["wav"]},"audio/webm":{"source":"apache","compressible":false,"extensions":["weba"]},"audio/x-aac":{"source":"apache","compressible":false,"extensions":["aac"]},"audio/x-aiff":{"source":"apache","extensions":["aif","aiff","aifc"]},"audio/x-caf":{"source":"apache","compressible":false,"extensions":["caf"]},"audio/x-flac":{"source":"apache","extensions":["flac"]},"audio/x-m4a":{"source":"nginx","extensions":["m4a"]},"audio/x-matroska":{"source":"apache","extensions":["mka"]},"audio/x-mpegurl":{"source":"apache","extensions":["m3u"]},"audio/x-ms-wax":{"source":"apache","extensions":["wax"]},"audio/x-ms-wma":{"source":"apache","extensions":["wma"]},"audio/x-pn-realaudio":{"source":"apache","extensions":["ram","ra"]},"audio/x-pn-realaudio-plugin":{"source":"apache","extensions":["rmp"]},"audio/x-realaudio":{"source":"nginx","extensions":["ra"]},"audio/x-tta":{"source":"apache"},"audio/x-wav":{"source":"apache","extensions":["wav"]},"audio/xm":{"source":"apache","extensions":["xm"]},"chemical/x-cdx":{"source":"apache","extensions":["cdx"]},"chemical/x-cif":{"source":"apache","extensions":["cif"]},"chemical/x-cmdf":{"source":"apache","extensions":["cmdf"]},"chemical/x-cml":{"source":"apache","extensions":["cml"]},"chemical/x-csml":{"source":"apache","extensions":["csml"]},"chemical/x-pdb":{"source":"apache"},"chemical/x-xyz":{"source":"apache","extensions":["xyz"]},"font/collection":{"source":"iana","extensions":["ttc"]},"font/otf":{"source":"iana","compressible":true,"extensions":["otf"]},"font/sfnt":{"source":"iana"},"font/ttf":{"source":"iana","compressible":true,"extensions":["ttf"]},"font/woff":{"source":"iana","extensions":["woff"]},"font/woff2":{"source":"iana","extensions":["woff2"]},"image/aces":{"source":"iana","extensions":["exr"]},"image/apng":{"source":"iana","compressible":false,"extensions":["apng"]},"image/avci":{"source":"iana","extensions":["avci"]},"image/avcs":{"source":"iana","extensions":["avcs"]},"image/avif":{"source":"iana","compressible":false,"extensions":["avif"]},"image/bmp":{"source":"iana","compressible":true,"extensions":["bmp","dib"]},"image/cgm":{"source":"iana","extensions":["cgm"]},"image/dicom-rle":{"source":"iana","extensions":["drle"]},"image/dpx":{"source":"iana","extensions":["dpx"]},"image/emf":{"source":"iana","extensions":["emf"]},"image/fits":{"source":"iana","extensions":["fits"]},"image/g3fax":{"source":"iana","extensions":["g3"]},"image/gif":{"source":"iana","compressible":false,"extensions":["gif"]},"image/heic":{"source":"iana","extensions":["heic"]},"image/heic-sequence":{"source":"iana","extensions":["heics"]},"image/heif":{"source":"iana","extensions":["heif"]},"image/heif-sequence":{"source":"iana","extensions":["heifs"]},"image/hej2k":{"source":"iana","extensions":["hej2"]},"image/ief":{"source":"iana","extensions":["ief"]},"image/j2c":{"source":"iana"},"image/jaii":{"source":"iana","extensions":["jaii"]},"image/jais":{"source":"iana","extensions":["jais"]},"image/jls":{"source":"iana","extensions":["jls"]},"image/jp2":{"source":"iana","compressible":false,"extensions":["jp2","jpg2"]},"image/jpeg":{"source":"iana","compressible":false,"extensions":["jpg","jpeg","jpe"]},"image/jph":{"source":"iana","extensions":["jph"]},"image/jphc":{"source":"iana","extensions":["jhc"]},"image/jpm":{"source":"iana","compressible":false,"extensions":["jpm","jpgm"]},"image/jpx":{"source":"iana","compressible":false,"extensions":["jpx","jpf"]},"image/jxl":{"source":"iana","extensions":["jxl"]},"image/jxr":{"source":"iana","extensions":["jxr"]},"image/jxra":{"source":"iana","extensions":["jxra"]},"image/jxrs":{"source":"iana","extensions":["jxrs"]},"image/jxs":{"source":"iana","extensions":["jxs"]},"image/jxsc":{"source":"iana","extensions":["jxsc"]},"image/jxsi":{"source":"iana","extensions":["jxsi"]},"image/jxss":{"source":"iana","extensions":["jxss"]},"image/ktx":{"source":"iana","extensions":["ktx"]},"image/ktx2":{"source":"iana","extensions":["ktx2"]},"image/naplps":{"source":"iana"},"image/pjpeg":{"compressible":false,"extensions":["jfif"]},"image/png":{"source":"iana","compressible":false,"extensions":["png"]},"image/prs.btif":{"source":"iana","extensions":["btif","btf"]},"image/prs.pti":{"source":"iana","extensions":["pti"]},"image/pwg-raster":{"source":"iana"},"image/sgi":{"source":"apache","extensions":["sgi"]},"image/svg+xml":{"source":"iana","compressible":true,"extensions":["svg","svgz"]},"image/t38":{"source":"iana","extensions":["t38"]},"image/tiff":{"source":"iana","compressible":false,"extensions":["tif","tiff"]},"image/tiff-fx":{"source":"iana","extensions":["tfx"]},"image/vnd.adobe.photoshop":{"source":"iana","compressible":true,"extensions":["psd"]},"image/vnd.airzip.accelerator.azv":{"source":"iana","extensions":["azv"]},"image/vnd.clip":{"source":"iana"},"image/vnd.cns.inf2":{"source":"iana"},"image/vnd.dece.graphic":{"source":"iana","extensions":["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{"source":"iana","extensions":["djvu","djv"]},"image/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"image/vnd.dwg":{"source":"iana","extensions":["dwg"]},"image/vnd.dxf":{"source":"iana","extensions":["dxf"]},"image/vnd.fastbidsheet":{"source":"iana","extensions":["fbs"]},"image/vnd.fpx":{"source":"iana","extensions":["fpx"]},"image/vnd.fst":{"source":"iana","extensions":["fst"]},"image/vnd.fujixerox.edmics-mmr":{"source":"iana","extensions":["mmr"]},"image/vnd.fujixerox.edmics-rlc":{"source":"iana","extensions":["rlc"]},"image/vnd.globalgraphics.pgb":{"source":"iana"},"image/vnd.microsoft.icon":{"source":"iana","compressible":true,"extensions":["ico"]},"image/vnd.mix":{"source":"iana"},"image/vnd.mozilla.apng":{"source":"iana"},"image/vnd.ms-dds":{"compressible":true,"extensions":["dds"]},"image/vnd.ms-modi":{"source":"iana","extensions":["mdi"]},"image/vnd.ms-photo":{"source":"apache","extensions":["wdp"]},"image/vnd.net-fpx":{"source":"iana","extensions":["npx"]},"image/vnd.pco.b16":{"source":"iana","extensions":["b16"]},"image/vnd.radiance":{"source":"iana"},"image/vnd.sealed.png":{"source":"iana"},"image/vnd.sealedmedia.softseal.gif":{"source":"iana"},"image/vnd.sealedmedia.softseal.jpg":{"source":"iana"},"image/vnd.svf":{"source":"iana"},"image/vnd.tencent.tap":{"source":"iana","extensions":["tap"]},"image/vnd.valve.source.texture":{"source":"iana","extensions":["vtf"]},"image/vnd.wap.wbmp":{"source":"iana","extensions":["wbmp"]},"image/vnd.xiff":{"source":"iana","extensions":["xif"]},"image/vnd.zbrush.pcx":{"source":"iana","extensions":["pcx"]},"image/webp":{"source":"iana","extensions":["webp"]},"image/wmf":{"source":"iana","extensions":["wmf"]},"image/x-3ds":{"source":"apache","extensions":["3ds"]},"image/x-adobe-dng":{"extensions":["dng"]},"image/x-cmu-raster":{"source":"apache","extensions":["ras"]},"image/x-cmx":{"source":"apache","extensions":["cmx"]},"image/x-emf":{"source":"iana"},"image/x-freehand":{"source":"apache","extensions":["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{"source":"apache","compressible":true,"extensions":["ico"]},"image/x-jng":{"source":"nginx","extensions":["jng"]},"image/x-mrsid-image":{"source":"apache","extensions":["sid"]},"image/x-ms-bmp":{"source":"nginx","compressible":true,"extensions":["bmp"]},"image/x-pcx":{"source":"apache","extensions":["pcx"]},"image/x-pict":{"source":"apache","extensions":["pic","pct"]},"image/x-portable-anymap":{"source":"apache","extensions":["pnm"]},"image/x-portable-bitmap":{"source":"apache","extensions":["pbm"]},"image/x-portable-graymap":{"source":"apache","extensions":["pgm"]},"image/x-portable-pixmap":{"source":"apache","extensions":["ppm"]},"image/x-rgb":{"source":"apache","extensions":["rgb"]},"image/x-tga":{"source":"apache","extensions":["tga"]},"image/x-wmf":{"source":"iana"},"image/x-xbitmap":{"source":"apache","extensions":["xbm"]},"image/x-xcf":{"compressible":false},"image/x-xpixmap":{"source":"apache","extensions":["xpm"]},"image/x-xwindowdump":{"source":"apache","extensions":["xwd"]},"message/bhttp":{"source":"iana"},"message/cpim":{"source":"iana"},"message/delivery-status":{"source":"iana"},"message/disposition-notification":{"source":"iana","extensions":["disposition-notification"]},"message/external-body":{"source":"iana"},"message/feedback-report":{"source":"iana"},"message/global":{"source":"iana","extensions":["u8msg"]},"message/global-delivery-status":{"source":"iana","extensions":["u8dsn"]},"message/global-disposition-notification":{"source":"iana","extensions":["u8mdn"]},"message/global-headers":{"source":"iana","extensions":["u8hdr"]},"message/http":{"source":"iana","compressible":false},"message/imdn+xml":{"source":"iana","compressible":true},"message/mls":{"source":"iana"},"message/news":{"source":"apache"},"message/ohttp-req":{"source":"iana"},"message/ohttp-res":{"source":"iana"},"message/partial":{"source":"iana","compressible":false},"message/rfc822":{"source":"iana","compressible":true,"extensions":["eml","mime","mht","mhtml"]},"message/s-http":{"source":"apache"},"message/sip":{"source":"iana"},"message/sipfrag":{"source":"iana"},"message/tracking-status":{"source":"iana"},"message/vnd.si.simp":{"source":"apache"},"message/vnd.wfa.wsc":{"source":"iana","extensions":["wsc"]},"model/3mf":{"source":"iana","extensions":["3mf"]},"model/e57":{"source":"iana"},"model/gltf+json":{"source":"iana","compressible":true,"extensions":["gltf"]},"model/gltf-binary":{"source":"iana","compressible":true,"extensions":["glb"]},"model/iges":{"source":"iana","compressible":false,"extensions":["igs","iges"]},"model/jt":{"source":"iana","extensions":["jt"]},"model/mesh":{"source":"iana","compressible":false,"extensions":["msh","mesh","silo"]},"model/mtl":{"source":"iana","extensions":["mtl"]},"model/obj":{"source":"iana","extensions":["obj"]},"model/prc":{"source":"iana","extensions":["prc"]},"model/step":{"source":"iana","extensions":["step","stp","stpnc","p21","210"]},"model/step+xml":{"source":"iana","compressible":true,"extensions":["stpx"]},"model/step+zip":{"source":"iana","compressible":false,"extensions":["stpz"]},"model/step-xml+zip":{"source":"iana","compressible":false,"extensions":["stpxz"]},"model/stl":{"source":"iana","extensions":["stl"]},"model/u3d":{"source":"iana","extensions":["u3d"]},"model/vnd.bary":{"source":"iana","extensions":["bary"]},"model/vnd.cld":{"source":"iana","extensions":["cld"]},"model/vnd.collada+xml":{"source":"iana","compressible":true,"extensions":["dae"]},"model/vnd.dwf":{"source":"iana","extensions":["dwf"]},"model/vnd.flatland.3dml":{"source":"iana"},"model/vnd.gdl":{"source":"iana","extensions":["gdl"]},"model/vnd.gs-gdl":{"source":"apache"},"model/vnd.gs.gdl":{"source":"iana"},"model/vnd.gtw":{"source":"iana","extensions":["gtw"]},"model/vnd.moml+xml":{"source":"iana","compressible":true},"model/vnd.mts":{"source":"iana","extensions":["mts"]},"model/vnd.opengex":{"source":"iana","extensions":["ogex"]},"model/vnd.parasolid.transmit.binary":{"source":"iana","extensions":["x_b"]},"model/vnd.parasolid.transmit.text":{"source":"iana","extensions":["x_t"]},"model/vnd.pytha.pyox":{"source":"iana","extensions":["pyo","pyox"]},"model/vnd.rosette.annotated-data-model":{"source":"iana"},"model/vnd.sap.vds":{"source":"iana","extensions":["vds"]},"model/vnd.usda":{"source":"iana","extensions":["usda"]},"model/vnd.usdz+zip":{"source":"iana","compressible":false,"extensions":["usdz"]},"model/vnd.valve.source.compiled-map":{"source":"iana","extensions":["bsp"]},"model/vnd.vtu":{"source":"iana","extensions":["vtu"]},"model/vrml":{"source":"iana","compressible":false,"extensions":["wrl","vrml"]},"model/x3d+binary":{"source":"apache","compressible":false,"extensions":["x3db","x3dbz"]},"model/x3d+fastinfoset":{"source":"iana","extensions":["x3db"]},"model/x3d+vrml":{"source":"apache","compressible":false,"extensions":["x3dv","x3dvz"]},"model/x3d+xml":{"source":"iana","compressible":true,"extensions":["x3d","x3dz"]},"model/x3d-vrml":{"source":"iana","extensions":["x3dv"]},"multipart/alternative":{"source":"iana","compressible":false},"multipart/appledouble":{"source":"iana"},"multipart/byteranges":{"source":"iana"},"multipart/digest":{"source":"iana"},"multipart/encrypted":{"source":"iana","compressible":false},"multipart/form-data":{"source":"iana","compressible":false},"multipart/header-set":{"source":"iana"},"multipart/mixed":{"source":"iana"},"multipart/multilingual":{"source":"iana"},"multipart/parallel":{"source":"iana"},"multipart/related":{"source":"iana","compressible":false},"multipart/report":{"source":"iana"},"multipart/signed":{"source":"iana","compressible":false},"multipart/vnd.bint.med-plus":{"source":"iana"},"multipart/voice-message":{"source":"iana"},"multipart/x-mixed-replace":{"source":"iana"},"text/1d-interleaved-parityfec":{"source":"iana"},"text/cache-manifest":{"source":"iana","compressible":true,"extensions":["appcache","manifest"]},"text/calendar":{"source":"iana","extensions":["ics","ifb"]},"text/calender":{"compressible":true},"text/cmd":{"compressible":true},"text/coffeescript":{"extensions":["coffee","litcoffee"]},"text/cql":{"source":"iana"},"text/cql-expression":{"source":"iana"},"text/cql-identifier":{"source":"iana"},"text/css":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["css"]},"text/csv":{"source":"iana","compressible":true,"extensions":["csv"]},"text/csv-schema":{"source":"iana"},"text/directory":{"source":"iana"},"text/dns":{"source":"iana"},"text/ecmascript":{"source":"apache"},"text/encaprtp":{"source":"iana"},"text/enriched":{"source":"iana"},"text/fhirpath":{"source":"iana"},"text/flexfec":{"source":"iana"},"text/fwdred":{"source":"iana"},"text/gff3":{"source":"iana"},"text/grammar-ref-list":{"source":"iana"},"text/hl7v2":{"source":"iana"},"text/html":{"source":"iana","compressible":true,"extensions":["html","htm","shtml"]},"text/jade":{"extensions":["jade"]},"text/javascript":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["js","mjs"]},"text/jcr-cnd":{"source":"iana"},"text/jsx":{"compressible":true,"extensions":["jsx"]},"text/less":{"compressible":true,"extensions":["less"]},"text/markdown":{"source":"iana","compressible":true,"extensions":["md","markdown"]},"text/mathml":{"source":"nginx","extensions":["mml"]},"text/mdx":{"compressible":true,"extensions":["mdx"]},"text/mizar":{"source":"iana"},"text/n3":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["n3"]},"text/parameters":{"source":"iana","charset":"UTF-8"},"text/parityfec":{"source":"iana"},"text/plain":{"source":"iana","compressible":true,"extensions":["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{"source":"iana","charset":"UTF-8"},"text/prs.fallenstein.rst":{"source":"iana"},"text/prs.lines.tag":{"source":"iana","extensions":["dsc"]},"text/prs.prop.logic":{"source":"iana"},"text/prs.texi":{"source":"iana"},"text/raptorfec":{"source":"iana"},"text/red":{"source":"iana"},"text/rfc822-headers":{"source":"iana"},"text/richtext":{"source":"iana","compressible":true,"extensions":["rtx"]},"text/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"text/rtp-enc-aescm128":{"source":"iana"},"text/rtploopback":{"source":"iana"},"text/rtx":{"source":"iana"},"text/sgml":{"source":"iana","extensions":["sgml","sgm"]},"text/shaclc":{"source":"iana"},"text/shex":{"source":"iana","extensions":["shex"]},"text/slim":{"extensions":["slim","slm"]},"text/spdx":{"source":"iana","extensions":["spdx"]},"text/strings":{"source":"iana"},"text/stylus":{"extensions":["stylus","styl"]},"text/t140":{"source":"iana"},"text/tab-separated-values":{"source":"iana","compressible":true,"extensions":["tsv"]},"text/troff":{"source":"iana","extensions":["t","tr","roff","man","me","ms"]},"text/turtle":{"source":"iana","charset":"UTF-8","extensions":["ttl"]},"text/ulpfec":{"source":"iana"},"text/uri-list":{"source":"iana","compressible":true,"extensions":["uri","uris","urls"]},"text/vcard":{"source":"iana","compressible":true,"extensions":["vcard"]},"text/vnd.a":{"source":"iana"},"text/vnd.abc":{"source":"iana"},"text/vnd.ascii-art":{"source":"iana"},"text/vnd.curl":{"source":"iana","extensions":["curl"]},"text/vnd.curl.dcurl":{"source":"apache","extensions":["dcurl"]},"text/vnd.curl.mcurl":{"source":"apache","extensions":["mcurl"]},"text/vnd.curl.scurl":{"source":"apache","extensions":["scurl"]},"text/vnd.debian.copyright":{"source":"iana","charset":"UTF-8"},"text/vnd.dmclientscript":{"source":"iana"},"text/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"text/vnd.esmertec.theme-descriptor":{"source":"iana","charset":"UTF-8"},"text/vnd.exchangeable":{"source":"iana"},"text/vnd.familysearch.gedcom":{"source":"iana","extensions":["ged"]},"text/vnd.ficlab.flt":{"source":"iana"},"text/vnd.fly":{"source":"iana","extensions":["fly"]},"text/vnd.fmi.flexstor":{"source":"iana","extensions":["flx"]},"text/vnd.gml":{"source":"iana"},"text/vnd.graphviz":{"source":"iana","extensions":["gv"]},"text/vnd.hans":{"source":"iana"},"text/vnd.hgl":{"source":"iana"},"text/vnd.in3d.3dml":{"source":"iana","extensions":["3dml"]},"text/vnd.in3d.spot":{"source":"iana","extensions":["spot"]},"text/vnd.iptc.newsml":{"source":"iana"},"text/vnd.iptc.nitf":{"source":"iana"},"text/vnd.latex-z":{"source":"iana"},"text/vnd.motorola.reflex":{"source":"iana"},"text/vnd.ms-mediapackage":{"source":"iana"},"text/vnd.net2phone.commcenter.command":{"source":"iana"},"text/vnd.radisys.msml-basic-layout":{"source":"iana"},"text/vnd.senx.warpscript":{"source":"iana"},"text/vnd.si.uricatalogue":{"source":"apache"},"text/vnd.sosi":{"source":"iana"},"text/vnd.sun.j2me.app-descriptor":{"source":"iana","charset":"UTF-8","extensions":["jad"]},"text/vnd.trolltech.linguist":{"source":"iana","charset":"UTF-8"},"text/vnd.vcf":{"source":"iana"},"text/vnd.wap.si":{"source":"iana"},"text/vnd.wap.sl":{"source":"iana"},"text/vnd.wap.wml":{"source":"iana","extensions":["wml"]},"text/vnd.wap.wmlscript":{"source":"iana","extensions":["wmls"]},"text/vnd.zoo.kcl":{"source":"iana"},"text/vtt":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["vtt"]},"text/wgsl":{"source":"iana","extensions":["wgsl"]},"text/x-asm":{"source":"apache","extensions":["s","asm"]},"text/x-c":{"source":"apache","extensions":["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{"source":"nginx","extensions":["htc"]},"text/x-fortran":{"source":"apache","extensions":["f","for","f77","f90"]},"text/x-gwt-rpc":{"compressible":true},"text/x-handlebars-template":{"extensions":["hbs"]},"text/x-java-source":{"source":"apache","extensions":["java"]},"text/x-jquery-tmpl":{"compressible":true},"text/x-lua":{"extensions":["lua"]},"text/x-markdown":{"compressible":true,"extensions":["mkd"]},"text/x-nfo":{"source":"apache","extensions":["nfo"]},"text/x-opml":{"source":"apache","extensions":["opml"]},"text/x-org":{"compressible":true,"extensions":["org"]},"text/x-pascal":{"source":"apache","extensions":["p","pas"]},"text/x-processing":{"compressible":true,"extensions":["pde"]},"text/x-sass":{"extensions":["sass"]},"text/x-scss":{"extensions":["scss"]},"text/x-setext":{"source":"apache","extensions":["etx"]},"text/x-sfv":{"source":"apache","extensions":["sfv"]},"text/x-suse-ymp":{"compressible":true,"extensions":["ymp"]},"text/x-uuencode":{"source":"apache","extensions":["uu"]},"text/x-vcalendar":{"source":"apache","extensions":["vcs"]},"text/x-vcard":{"source":"apache","extensions":["vcf"]},"text/xml":{"source":"iana","compressible":true,"extensions":["xml"]},"text/xml-external-parsed-entity":{"source":"iana"},"text/yaml":{"compressible":true,"extensions":["yaml","yml"]},"video/1d-interleaved-parityfec":{"source":"iana"},"video/3gpp":{"source":"iana","extensions":["3gp","3gpp"]},"video/3gpp-tt":{"source":"iana"},"video/3gpp2":{"source":"iana","extensions":["3g2"]},"video/av1":{"source":"iana"},"video/bmpeg":{"source":"iana"},"video/bt656":{"source":"iana"},"video/celb":{"source":"iana"},"video/dv":{"source":"iana"},"video/encaprtp":{"source":"iana"},"video/evc":{"source":"iana"},"video/ffv1":{"source":"iana"},"video/flexfec":{"source":"iana"},"video/h261":{"source":"iana","extensions":["h261"]},"video/h263":{"source":"iana","extensions":["h263"]},"video/h263-1998":{"source":"iana"},"video/h263-2000":{"source":"iana"},"video/h264":{"source":"iana","extensions":["h264"]},"video/h264-rcdo":{"source":"iana"},"video/h264-svc":{"source":"iana"},"video/h265":{"source":"iana"},"video/h266":{"source":"iana"},"video/iso.segment":{"source":"iana","extensions":["m4s"]},"video/jpeg":{"source":"iana","extensions":["jpgv"]},"video/jpeg2000":{"source":"iana"},"video/jpm":{"source":"apache","extensions":["jpm","jpgm"]},"video/jxsv":{"source":"iana"},"video/lottie+json":{"source":"iana","compressible":true},"video/matroska":{"source":"iana"},"video/matroska-3d":{"source":"iana"},"video/mj2":{"source":"iana","extensions":["mj2","mjp2"]},"video/mp1s":{"source":"iana"},"video/mp2p":{"source":"iana"},"video/mp2t":{"source":"iana","extensions":["ts","m2t","m2ts","mts"]},"video/mp4":{"source":"iana","compressible":false,"extensions":["mp4","mp4v","mpg4"]},"video/mp4v-es":{"source":"iana"},"video/mpeg":{"source":"iana","compressible":false,"extensions":["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{"source":"iana"},"video/mpv":{"source":"iana"},"video/nv":{"source":"iana"},"video/ogg":{"source":"iana","compressible":false,"extensions":["ogv"]},"video/parityfec":{"source":"iana"},"video/pointer":{"source":"iana"},"video/quicktime":{"source":"iana","compressible":false,"extensions":["qt","mov"]},"video/raptorfec":{"source":"iana"},"video/raw":{"source":"iana"},"video/rtp-enc-aescm128":{"source":"iana"},"video/rtploopback":{"source":"iana"},"video/rtx":{"source":"iana"},"video/scip":{"source":"iana"},"video/smpte291":{"source":"iana"},"video/smpte292m":{"source":"iana"},"video/ulpfec":{"source":"iana"},"video/vc1":{"source":"iana"},"video/vc2":{"source":"iana"},"video/vnd.cctv":{"source":"iana"},"video/vnd.dece.hd":{"source":"iana","extensions":["uvh","uvvh"]},"video/vnd.dece.mobile":{"source":"iana","extensions":["uvm","uvvm"]},"video/vnd.dece.mp4":{"source":"iana"},"video/vnd.dece.pd":{"source":"iana","extensions":["uvp","uvvp"]},"video/vnd.dece.sd":{"source":"iana","extensions":["uvs","uvvs"]},"video/vnd.dece.video":{"source":"iana","extensions":["uvv","uvvv"]},"video/vnd.directv.mpeg":{"source":"iana"},"video/vnd.directv.mpeg-tts":{"source":"iana"},"video/vnd.dlna.mpeg-tts":{"source":"iana"},"video/vnd.dvb.file":{"source":"iana","extensions":["dvb"]},"video/vnd.fvt":{"source":"iana","extensions":["fvt"]},"video/vnd.hns.video":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.ttsavc":{"source":"iana"},"video/vnd.iptvforum.ttsmpeg2":{"source":"iana"},"video/vnd.motorola.video":{"source":"iana"},"video/vnd.motorola.videop":{"source":"iana"},"video/vnd.mpegurl":{"source":"iana","extensions":["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{"source":"iana","extensions":["pyv"]},"video/vnd.nokia.interleaved-multimedia":{"source":"iana"},"video/vnd.nokia.mp4vr":{"source":"iana"},"video/vnd.nokia.videovoip":{"source":"iana"},"video/vnd.objectvideo":{"source":"iana"},"video/vnd.planar":{"source":"iana"},"video/vnd.radgamettools.bink":{"source":"iana"},"video/vnd.radgamettools.smacker":{"source":"apache"},"video/vnd.sealed.mpeg1":{"source":"iana"},"video/vnd.sealed.mpeg4":{"source":"iana"},"video/vnd.sealed.swf":{"source":"iana"},"video/vnd.sealedmedia.softseal.mov":{"source":"iana"},"video/vnd.uvvu.mp4":{"source":"iana","extensions":["uvu","uvvu"]},"video/vnd.vivo":{"source":"iana","extensions":["viv"]},"video/vnd.youtube.yt":{"source":"iana"},"video/vp8":{"source":"iana"},"video/vp9":{"source":"iana"},"video/webm":{"source":"apache","compressible":false,"extensions":["webm"]},"video/x-f4v":{"source":"apache","extensions":["f4v"]},"video/x-fli":{"source":"apache","extensions":["fli"]},"video/x-flv":{"source":"apache","compressible":false,"extensions":["flv"]},"video/x-m4v":{"source":"apache","extensions":["m4v"]},"video/x-matroska":{"source":"apache","compressible":false,"extensions":["mkv","mk3d","mks"]},"video/x-mng":{"source":"apache","extensions":["mng"]},"video/x-ms-asf":{"source":"apache","extensions":["asf","asx"]},"video/x-ms-vob":{"source":"apache","extensions":["vob"]},"video/x-ms-wm":{"source":"apache","extensions":["wm"]},"video/x-ms-wmv":{"source":"apache","compressible":false,"extensions":["wmv"]},"video/x-ms-wmx":{"source":"apache","extensions":["wmx"]},"video/x-ms-wvx":{"source":"apache","extensions":["wvx"]},"video/x-msvideo":{"source":"apache","extensions":["avi"]},"video/x-sgi-movie":{"source":"apache","extensions":["movie"]},"video/x-smv":{"source":"apache","extensions":["smv"]},"x-conference/x-cooltalk":{"source":"apache","extensions":["ice"]},"x-shader/x-fragment":{"compressible":true},"x-shader/x-vertex":{"compressible":true}}')}};var t={};function __nccwpck_require__(s){var i=t[s];if(i!==undefined){return i.exports}var A=t[s]={exports:{}};var o=true;try{e[s].call(A.exports,A,A.exports,__nccwpck_require__);o=false}finally{if(o)delete t[s]}return A.exports}if(typeof __nccwpck_require__!=="undefined")__nccwpck_require__.ab=__dirname+"/";var s={};(()=>{"use strict";var e=s;Object.defineProperty(e,"__esModule",{value:true});const t=__nccwpck_require__(7484);const i=__nccwpck_require__(3228);const A=__nccwpck_require__(9248);const o=__nccwpck_require__(4527);const r=__nccwpck_require__(932);async function run(){try{const e=(0,o.parseConfig)(r.env);if(!e.input_tag_name&&!(0,o.isTag)(e.github_ref)&&!e.input_draft){throw new Error(`⚠️ GitHub Releases requires a tag`)}if(e.input_files){const t=(0,o.unmatchedPatterns)(e.input_files);t.forEach((t=>{if(e.input_fail_on_unmatched_files){throw new Error(`⚠️ Pattern '${t}' does not match any files.`)}else{console.warn(`🤔 Pattern '${t}' does not match any files.`)}}));if(t.length>0&&e.input_fail_on_unmatched_files){throw new Error(`⚠️ There were unmatched files`)}}const s=(0,i.getOctokit)(e.github_token,{throttle:{onRateLimit:(e,t)=>{console.warn(`Request quota exhausted for request ${t.method} ${t.url}`);if(t.request.retryCount===0){console.log(`Retrying after ${e} seconds!`);return true}},onAbuseLimit:(e,t)=>{console.warn(`Abuse detected for request ${t.method} ${t.url}`)}}});const n=await(0,A.release)(e,new A.GitHubReleaser(s));if(e.input_files&&e.input_files.length>0){const i=(0,o.paths)(e.input_files);if(i.length==0){if(e.input_fail_on_unmatched_files){throw new Error(`⚠️ ${e.input_files} does not include a valid file.`)}else{console.warn(`🤔 ${e.input_files} does not include a valid file.`)}}const r=n.assets;const uploadFile=async t=>{const i=await(0,A.upload)(e,s,(0,o.uploadUrl)(n.upload_url),t,r);if(i){delete i.uploader}return i};let a;if(!e.input_preserve_order){a=await Promise.all(i.map(uploadFile))}else{a=[];for(const e of i){a.push(await uploadFile(e))}}const c=a.filter(Boolean);(0,t.setOutput)("assets",c)}console.log(`🎉 Release ready at ${n.html_url}`);(0,t.setOutput)("url",n.html_url);(0,t.setOutput)("id",n.id.toString());(0,t.setOutput)("upload_url",n.upload_url)}catch(e){(0,t.setFailed)(e.message)}}run()})();module.exports=s})();
\ No newline at end of file
diff --git a/jest.config.js b/jest.config.js
new file mode 100644
index 0000000..563d4cc
--- /dev/null
+++ b/jest.config.js
@@ -0,0 +1,11 @@
+module.exports = {
+ clearMocks: true,
+ moduleFileExtensions: ['js', 'ts'],
+ testEnvironment: 'node',
+ testMatch: ['**/*.test.ts'],
+ testRunner: 'jest-circus/runner',
+ transform: {
+ '^.+\\.ts$': 'ts-jest'
+ },
+ verbose: true
+}
\ No newline at end of file
diff --git a/lib/github.js b/lib/github.js
new file mode 100644
index 0000000..d83ef87
--- /dev/null
+++ b/lib/github.js
@@ -0,0 +1,127 @@
+"use strict";
+var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
+ return new (P || (P = Promise))(function (resolve, reject) {
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
+ });
+};
+var __asyncValues = (this && this.__asyncValues) || function (o) {
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
+ var m = o[Symbol.asyncIterator], i;
+ return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
+ function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+const fs_1 = require("fs");
+const mime_1 = require("mime");
+const path_1 = require("path");
+class GitHubReleaser {
+ constructor(github) {
+ this.github = github;
+ }
+ getReleaseByTag(params) {
+ return this.github.repos.getReleaseByTag(params);
+ }
+ createRelease(params) {
+ return this.github.repos.createRelease(params);
+ }
+ allReleases(params) {
+ return this.github.paginate.iterator(this.github.repos.listReleases.endpoint.merge(params));
+ }
+}
+exports.GitHubReleaser = GitHubReleaser;
+exports.asset = (path) => {
+ return {
+ name: path_1.basename(path),
+ mime: exports.mimeOrDefault(path),
+ size: fs_1.lstatSync(path).size,
+ file: fs_1.readFileSync(path)
+ };
+};
+exports.mimeOrDefault = (path) => {
+ return mime_1.getType(path) || "application/octet-stream";
+};
+exports.upload = (gh, url, path) => __awaiter(void 0, void 0, void 0, function* () {
+ let { name, size, mime, file } = exports.asset(path);
+ console.log(`⬆️ Uploading ${name}...`);
+ return yield gh.repos.uploadReleaseAsset({
+ url,
+ headers: {
+ "content-length": size,
+ "content-type": mime
+ },
+ name,
+ file
+ });
+});
+exports.release = (config, releaser) => __awaiter(void 0, void 0, void 0, function* () {
+ var e_1, _a;
+ const [owner, repo] = config.github_repository.split("/");
+ const tag = config.github_ref.replace("refs/tags/", "");
+ try {
+ // you can't get a an existing draft by tag
+ // so we must find one in the list of all releases
+ if (config.input_draft) {
+ try {
+ for (var _b = __asyncValues(releaser.allReleases({
+ owner,
+ repo
+ })), _c; _c = yield _b.next(), !_c.done;) {
+ const response = _c.value;
+ let release = response.data.find(release => release.tag_name === tag);
+ if (release) {
+ return release;
+ }
+ }
+ }
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
+ finally {
+ try {
+ if (_c && !_c.done && (_a = _b.return)) yield _a.call(_b);
+ }
+ finally { if (e_1) throw e_1.error; }
+ }
+ }
+ let release = yield releaser.getReleaseByTag({
+ owner,
+ repo,
+ tag
+ });
+ return release.data;
+ }
+ catch (error) {
+ if (error.status === 404) {
+ try {
+ const tag_name = tag;
+ const name = config.input_name || tag;
+ const body = config.input_body;
+ const draft = config.input_draft;
+ const prerelease = config.input_prerelease;
+ console.log(`👩🏭 Creating new GitHub release for tag ${tag_name}...`);
+ let release = yield releaser.createRelease({
+ owner,
+ repo,
+ tag_name,
+ name,
+ body,
+ draft,
+ prerelease
+ });
+ return release.data;
+ }
+ catch (error) {
+ // presume a race with competing metrix runs
+ console.log(`⚠️ GitHub release failed with status: ${error.status}, retrying...`);
+ return exports.release(config, releaser);
+ }
+ }
+ else {
+ console.log(`⚠️ Unexpected error fetching GitHub release for tag ${config.github_ref}: ${error}`);
+ throw error;
+ }
+ }
+});
diff --git a/lib/main.js b/lib/main.js
new file mode 100644
index 0000000..ddc454b
--- /dev/null
+++ b/lib/main.js
@@ -0,0 +1,38 @@
+"use strict";
+var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
+ return new (P || (P = Promise))(function (resolve, reject) {
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
+ });
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+const util_1 = require("./util");
+const github_1 = require("./github");
+const core_1 = require("@actions/core");
+const github_2 = require("@actions/github");
+const process_1 = require("process");
+function run() {
+ return __awaiter(this, void 0, void 0, function* () {
+ try {
+ const config = util_1.parseConfig(process_1.env);
+ if (!util_1.isTag(config.github_ref)) {
+ throw new Error(`⚠️ GitHub Releases requires a tag`);
+ }
+ const gh = new github_2.GitHub(config.github_token);
+ let rel = yield github_1.release(config, new github_1.GitHubReleaser(gh));
+ if (config.input_files) {
+ util_1.paths(config.input_files).forEach((path) => __awaiter(this, void 0, void 0, function* () {
+ yield github_1.upload(gh, rel.upload_url, path);
+ }));
+ }
+ console.log(`🎉 Release ready at ${rel.html_url}`);
+ }
+ catch (error) {
+ core_1.setFailed(error.message);
+ }
+ });
+}
+run();
diff --git a/lib/util.js b/lib/util.js
new file mode 100644
index 0000000..e71e322
--- /dev/null
+++ b/lib/util.js
@@ -0,0 +1,38 @@
+"use strict";
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
+ result["default"] = mod;
+ return result;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+const glob = __importStar(require("glob"));
+const fs_1 = require("fs");
+exports.parseInputFiles = (files) => {
+ return files.split(/\r?\n/).reduce((acc, line) => acc
+ .concat(line.split(","))
+ .filter(pat => pat)
+ .map(pat => pat.trim()), []);
+};
+exports.parseConfig = (env) => {
+ return {
+ github_token: env.GITHUB_TOKEN || "",
+ github_ref: env.GITHUB_REF || "",
+ github_repository: env.GITHUB_REPOSITORY || "",
+ input_name: env.INPUT_NAME,
+ input_body: env.INPUT_BODY,
+ input_body_path: env.INPUT_BODY_PATH,
+ input_files: exports.parseInputFiles(env.INPUT_FILES || ""),
+ input_draft: env.INPUT_DRAFT === "true",
+ input_prerelease: env.INPUT_PRERELEASE == "true"
+ };
+};
+exports.paths = (patterns) => {
+ return patterns.reduce((acc, pattern) => {
+ return acc.concat(glob.sync(pattern).filter(path => fs_1.lstatSync(path).isFile()));
+ }, []);
+};
+exports.isTag = (ref) => {
+ return ref.startsWith("refs/tags/");
+};
diff --git a/node_modules/.bin/mime b/node_modules/.bin/mime
new file mode 120000
index 0000000..fbb7ee0
--- /dev/null
+++ b/node_modules/.bin/mime
@@ -0,0 +1 @@
+../mime/cli.js
\ No newline at end of file
diff --git a/node_modules/.bin/semver b/node_modules/.bin/semver
new file mode 120000
index 0000000..317eb29
--- /dev/null
+++ b/node_modules/.bin/semver
@@ -0,0 +1 @@
+../semver/bin/semver
\ No newline at end of file
diff --git a/node_modules/.bin/which b/node_modules/.bin/which
new file mode 120000
index 0000000..f62471c
--- /dev/null
+++ b/node_modules/.bin/which
@@ -0,0 +1 @@
+../which/bin/which
\ No newline at end of file
diff --git a/node_modules/@actions/core/LICENSE.md b/node_modules/@actions/core/LICENSE.md
new file mode 100644
index 0000000..e5a73f4
--- /dev/null
+++ b/node_modules/@actions/core/LICENSE.md
@@ -0,0 +1,7 @@
+Copyright 2019 GitHub
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
\ No newline at end of file
diff --git a/node_modules/@actions/core/README.md b/node_modules/@actions/core/README.md
new file mode 100644
index 0000000..58a8287
--- /dev/null
+++ b/node_modules/@actions/core/README.md
@@ -0,0 +1,97 @@
+# `@actions/core`
+
+> Core functions for setting results, logging, registering secrets and exporting variables across actions
+
+## Usage
+
+#### Inputs/Outputs
+
+You can use this library to get inputs or set outputs:
+
+```js
+const core = require('@actions/core');
+
+const myInput = core.getInput('inputName', { required: true });
+
+// Do stuff
+
+core.setOutput('outputKey', 'outputVal');
+```
+
+#### Exporting variables
+
+You can also export variables for future steps. Variables get set in the environment.
+
+```js
+const core = require('@actions/core');
+
+// Do stuff
+
+core.exportVariable('envVar', 'Val');
+```
+
+#### PATH Manipulation
+
+You can explicitly add items to the path for all remaining steps in a workflow:
+
+```js
+const core = require('@actions/core');
+
+core.addPath('pathToTool');
+```
+
+#### Exit codes
+
+You should use this library to set the failing exit code for your action:
+
+```js
+const core = require('@actions/core');
+
+try {
+ // Do stuff
+}
+catch (err) {
+ // setFailed logs the message and sets a failing exit code
+ core.setFailed(`Action failed with error ${err}`);
+}
+
+```
+
+#### Logging
+
+Finally, this library provides some utilities for logging. Note that debug logging is hidden from the logs by default. This behavior can be toggled by enabling the [Step Debug Logs](../../docs/action-debugging.md#step-debug-logs).
+
+```js
+const core = require('@actions/core');
+
+const myInput = core.getInput('input');
+try {
+ core.debug('Inside try block');
+
+ if (!myInput) {
+ core.warning('myInput was not set');
+ }
+
+ // Do stuff
+}
+catch (err) {
+ core.error(`Error ${err}, action may still succeed though`);
+}
+```
+
+This library can also wrap chunks of output in foldable groups.
+
+```js
+const core = require('@actions/core')
+
+// Manually wrap output
+core.startGroup('Do some function')
+doSomeFunction()
+core.endGroup()
+
+// Wrap an asynchronous function call
+const result = await core.group('Do something async', async () => {
+ const response = await doSomeHTTPRequest()
+ return response
+})
+```
\ No newline at end of file
diff --git a/node_modules/@actions/core/lib/command.d.ts b/node_modules/@actions/core/lib/command.d.ts
new file mode 100644
index 0000000..7f6fecb
--- /dev/null
+++ b/node_modules/@actions/core/lib/command.d.ts
@@ -0,0 +1,16 @@
+interface CommandProperties {
+ [key: string]: string;
+}
+/**
+ * Commands
+ *
+ * Command Format:
+ * ##[name key=value;key=value]message
+ *
+ * Examples:
+ * ##[warning]This is the user warning message
+ * ##[set-secret name=mypassword]definitelyNotAPassword!
+ */
+export declare function issueCommand(command: string, properties: CommandProperties, message: string): void;
+export declare function issue(name: string, message?: string): void;
+export {};
diff --git a/node_modules/@actions/core/lib/command.js b/node_modules/@actions/core/lib/command.js
new file mode 100644
index 0000000..f2297f5
--- /dev/null
+++ b/node_modules/@actions/core/lib/command.js
@@ -0,0 +1,66 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+const os = require("os");
+/**
+ * Commands
+ *
+ * Command Format:
+ * ##[name key=value;key=value]message
+ *
+ * Examples:
+ * ##[warning]This is the user warning message
+ * ##[set-secret name=mypassword]definitelyNotAPassword!
+ */
+function issueCommand(command, properties, message) {
+ const cmd = new Command(command, properties, message);
+ process.stdout.write(cmd.toString() + os.EOL);
+}
+exports.issueCommand = issueCommand;
+function issue(name, message = '') {
+ issueCommand(name, {}, message);
+}
+exports.issue = issue;
+const CMD_PREFIX = '##[';
+class Command {
+ constructor(command, properties, message) {
+ if (!command) {
+ command = 'missing.command';
+ }
+ this.command = command;
+ this.properties = properties;
+ this.message = message;
+ }
+ toString() {
+ let cmdStr = CMD_PREFIX + this.command;
+ if (this.properties && Object.keys(this.properties).length > 0) {
+ cmdStr += ' ';
+ for (const key in this.properties) {
+ if (this.properties.hasOwnProperty(key)) {
+ const val = this.properties[key];
+ if (val) {
+ // safely append the val - avoid blowing up when attempting to
+ // call .replace() if message is not a string for some reason
+ cmdStr += `${key}=${escape(`${val || ''}`)};`;
+ }
+ }
+ }
+ }
+ cmdStr += ']';
+ // safely append the message - avoid blowing up when attempting to
+ // call .replace() if message is not a string for some reason
+ const message = `${this.message || ''}`;
+ cmdStr += escapeData(message);
+ return cmdStr;
+ }
+}
+function escapeData(s) {
+ return s.replace(/\r/g, '%0D').replace(/\n/g, '%0A');
+}
+function escape(s) {
+ return s
+ .replace(/\r/g, '%0D')
+ .replace(/\n/g, '%0A')
+ .replace(/]/g, '%5D')
+ .replace(/;/g, '%3B');
+}
+//# sourceMappingURL=command.js.map
\ No newline at end of file
diff --git a/node_modules/@actions/core/lib/command.js.map b/node_modules/@actions/core/lib/command.js.map
new file mode 100644
index 0000000..6d3dacc
--- /dev/null
+++ b/node_modules/@actions/core/lib/command.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"command.js","sourceRoot":"","sources":["../src/command.ts"],"names":[],"mappings":";;AAAA,yBAAwB;AAQxB;;;;;;;;;GASG;AACH,SAAgB,YAAY,CAC1B,OAAe,EACf,UAA6B,EAC7B,OAAe;IAEf,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;IACrD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;AAC/C,CAAC;AAPD,oCAOC;AAED,SAAgB,KAAK,CAAC,IAAY,EAAE,UAAkB,EAAE;IACtD,YAAY,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC,CAAA;AACjC,CAAC;AAFD,sBAEC;AAED,MAAM,UAAU,GAAG,KAAK,CAAA;AAExB,MAAM,OAAO;IAKX,YAAY,OAAe,EAAE,UAA6B,EAAE,OAAe;QACzE,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,GAAG,iBAAiB,CAAA;SAC5B;QAED,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;IAED,QAAQ;QACN,IAAI,MAAM,GAAG,UAAU,GAAG,IAAI,CAAC,OAAO,CAAA;QAEtC,IAAI,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YAC9D,MAAM,IAAI,GAAG,CAAA;YACb,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,UAAU,EAAE;gBACjC,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;oBACvC,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;oBAChC,IAAI,GAAG,EAAE;wBACP,8DAA8D;wBAC9D,6DAA6D;wBAC7D,MAAM,IAAI,GAAG,GAAG,IAAI,MAAM,CAAC,GAAG,GAAG,IAAI,EAAE,EAAE,CAAC,GAAG,CAAA;qBAC9C;iBACF;aACF;SACF;QAED,MAAM,IAAI,GAAG,CAAA;QAEb,kEAAkE;QAClE,6DAA6D;QAC7D,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,CAAA;QACvC,MAAM,IAAI,UAAU,CAAC,OAAO,CAAC,CAAA;QAE7B,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAED,SAAS,UAAU,CAAC,CAAS;IAC3B,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;AACtD,CAAC;AAED,SAAS,MAAM,CAAC,CAAS;IACvB,OAAO,CAAC;SACL,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;SACrB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;SACpB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;AACzB,CAAC"}
\ No newline at end of file
diff --git a/node_modules/@actions/core/lib/core.d.ts b/node_modules/@actions/core/lib/core.d.ts
new file mode 100644
index 0000000..b741d43
--- /dev/null
+++ b/node_modules/@actions/core/lib/core.d.ts
@@ -0,0 +1,94 @@
+/**
+ * Interface for getInput options
+ */
+export interface InputOptions {
+ /** Optional. Whether the input is required. If required and not present, will throw. Defaults to false */
+ required?: boolean;
+}
+/**
+ * The code to exit an action
+ */
+export declare enum ExitCode {
+ /**
+ * A code indicating that the action was successful
+ */
+ Success = 0,
+ /**
+ * A code indicating that the action was a failure
+ */
+ Failure = 1
+}
+/**
+ * sets env variable for this action and future actions in the job
+ * @param name the name of the variable to set
+ * @param val the value of the variable
+ */
+export declare function exportVariable(name: string, val: string): void;
+/**
+ * exports the variable and registers a secret which will get masked from logs
+ * @param name the name of the variable to set
+ * @param val value of the secret
+ */
+export declare function exportSecret(name: string, val: string): void;
+/**
+ * Prepends inputPath to the PATH (for this action and future actions)
+ * @param inputPath
+ */
+export declare function addPath(inputPath: string): void;
+/**
+ * Gets the value of an input. The value is also trimmed.
+ *
+ * @param name name of the input to get
+ * @param options optional. See InputOptions.
+ * @returns string
+ */
+export declare function getInput(name: string, options?: InputOptions): string;
+/**
+ * Sets the value of an output.
+ *
+ * @param name name of the output to set
+ * @param value value to store
+ */
+export declare function setOutput(name: string, value: string): void;
+/**
+ * Sets the action status to failed.
+ * When the action exits it will be with an exit code of 1
+ * @param message add error issue message
+ */
+export declare function setFailed(message: string): void;
+/**
+ * Writes debug message to user log
+ * @param message debug message
+ */
+export declare function debug(message: string): void;
+/**
+ * Adds an error issue
+ * @param message error issue message
+ */
+export declare function error(message: string): void;
+/**
+ * Adds an warning issue
+ * @param message warning issue message
+ */
+export declare function warning(message: string): void;
+/**
+ * Begin an output group.
+ *
+ * Output until the next `groupEnd` will be foldable in this group
+ *
+ * @param name The name of the output group
+ */
+export declare function startGroup(name: string): void;
+/**
+ * End an output group.
+ */
+export declare function endGroup(): void;
+/**
+ * Wrap an asynchronous function call in a group.
+ *
+ * Returns the same type as the function itself.
+ *
+ * @param name The name of the group
+ * @param fn The function to wrap in the group
+ */
+export declare function group(name: string, fn: () => Promise): Promise;
diff --git a/node_modules/@actions/core/lib/core.js b/node_modules/@actions/core/lib/core.js
new file mode 100644
index 0000000..54ce8e8
--- /dev/null
+++ b/node_modules/@actions/core/lib/core.js
@@ -0,0 +1,168 @@
+"use strict";
+var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
+ return new (P || (P = Promise))(function (resolve, reject) {
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
+ });
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+const command_1 = require("./command");
+const path = require("path");
+/**
+ * The code to exit an action
+ */
+var ExitCode;
+(function (ExitCode) {
+ /**
+ * A code indicating that the action was successful
+ */
+ ExitCode[ExitCode["Success"] = 0] = "Success";
+ /**
+ * A code indicating that the action was a failure
+ */
+ ExitCode[ExitCode["Failure"] = 1] = "Failure";
+})(ExitCode = exports.ExitCode || (exports.ExitCode = {}));
+//-----------------------------------------------------------------------
+// Variables
+//-----------------------------------------------------------------------
+/**
+ * sets env variable for this action and future actions in the job
+ * @param name the name of the variable to set
+ * @param val the value of the variable
+ */
+function exportVariable(name, val) {
+ process.env[name] = val;
+ command_1.issueCommand('set-env', { name }, val);
+}
+exports.exportVariable = exportVariable;
+/**
+ * exports the variable and registers a secret which will get masked from logs
+ * @param name the name of the variable to set
+ * @param val value of the secret
+ */
+function exportSecret(name, val) {
+ exportVariable(name, val);
+ // the runner will error with not implemented
+ // leaving the function but raising the error earlier
+ command_1.issueCommand('set-secret', {}, val);
+ throw new Error('Not implemented.');
+}
+exports.exportSecret = exportSecret;
+/**
+ * Prepends inputPath to the PATH (for this action and future actions)
+ * @param inputPath
+ */
+function addPath(inputPath) {
+ command_1.issueCommand('add-path', {}, inputPath);
+ process.env['PATH'] = `${inputPath}${path.delimiter}${process.env['PATH']}`;
+}
+exports.addPath = addPath;
+/**
+ * Gets the value of an input. The value is also trimmed.
+ *
+ * @param name name of the input to get
+ * @param options optional. See InputOptions.
+ * @returns string
+ */
+function getInput(name, options) {
+ const val = process.env[`INPUT_${name.replace(' ', '_').toUpperCase()}`] || '';
+ if (options && options.required && !val) {
+ throw new Error(`Input required and not supplied: ${name}`);
+ }
+ return val.trim();
+}
+exports.getInput = getInput;
+/**
+ * Sets the value of an output.
+ *
+ * @param name name of the output to set
+ * @param value value to store
+ */
+function setOutput(name, value) {
+ command_1.issueCommand('set-output', { name }, value);
+}
+exports.setOutput = setOutput;
+//-----------------------------------------------------------------------
+// Results
+//-----------------------------------------------------------------------
+/**
+ * Sets the action status to failed.
+ * When the action exits it will be with an exit code of 1
+ * @param message add error issue message
+ */
+function setFailed(message) {
+ process.exitCode = ExitCode.Failure;
+ error(message);
+}
+exports.setFailed = setFailed;
+//-----------------------------------------------------------------------
+// Logging Commands
+//-----------------------------------------------------------------------
+/**
+ * Writes debug message to user log
+ * @param message debug message
+ */
+function debug(message) {
+ command_1.issueCommand('debug', {}, message);
+}
+exports.debug = debug;
+/**
+ * Adds an error issue
+ * @param message error issue message
+ */
+function error(message) {
+ command_1.issue('error', message);
+}
+exports.error = error;
+/**
+ * Adds an warning issue
+ * @param message warning issue message
+ */
+function warning(message) {
+ command_1.issue('warning', message);
+}
+exports.warning = warning;
+/**
+ * Begin an output group.
+ *
+ * Output until the next `groupEnd` will be foldable in this group
+ *
+ * @param name The name of the output group
+ */
+function startGroup(name) {
+ command_1.issue('group', name);
+}
+exports.startGroup = startGroup;
+/**
+ * End an output group.
+ */
+function endGroup() {
+ command_1.issue('endgroup');
+}
+exports.endGroup = endGroup;
+/**
+ * Wrap an asynchronous function call in a group.
+ *
+ * Returns the same type as the function itself.
+ *
+ * @param name The name of the group
+ * @param fn The function to wrap in the group
+ */
+function group(name, fn) {
+ return __awaiter(this, void 0, void 0, function* () {
+ startGroup(name);
+ let result;
+ try {
+ result = yield fn();
+ }
+ finally {
+ endGroup();
+ }
+ return result;
+ });
+}
+exports.group = group;
+//# sourceMappingURL=core.js.map
\ No newline at end of file
diff --git a/node_modules/@actions/core/lib/core.js.map b/node_modules/@actions/core/lib/core.js.map
new file mode 100644
index 0000000..e47240e
--- /dev/null
+++ b/node_modules/@actions/core/lib/core.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/@actions/core/package.json b/node_modules/@actions/core/package.json
new file mode 100644
index 0000000..b0b9a35
--- /dev/null
+++ b/node_modules/@actions/core/package.json
@@ -0,0 +1,67 @@
+{
+ "_args": [
+ [
+ "@actions/core@1.1.0",
+ "/Users/dougtangren/code/rust/action-gh-release"
+ ]
+ ],
+ "_from": "@actions/core@1.1.0",
+ "_id": "@actions/core@1.1.0",
+ "_inBundle": false,
+ "_integrity": "sha512-KKpo3xzo0Zsikni9tbOsEQkxZBGDsYSJZNkTvmo0gPSXrc98TBOcdTvKwwjitjkjHkreTggWdB1ACiAFVgsuzA==",
+ "_location": "/@actions/core",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "version",
+ "registry": true,
+ "raw": "@actions/core@1.1.0",
+ "name": "@actions/core",
+ "escapedName": "@actions%2fcore",
+ "scope": "@actions",
+ "rawSpec": "1.1.0",
+ "saveSpec": null,
+ "fetchSpec": "1.1.0"
+ },
+ "_requiredBy": [
+ "/"
+ ],
+ "_resolved": "https://registry.npmjs.org/@actions/core/-/core-1.1.0.tgz",
+ "_spec": "1.1.0",
+ "_where": "/Users/dougtangren/code/rust/action-gh-release",
+ "bugs": {
+ "url": "https://github.com/actions/toolkit/issues"
+ },
+ "description": "Actions core lib",
+ "devDependencies": {
+ "@types/node": "^12.0.2"
+ },
+ "directories": {
+ "lib": "lib",
+ "test": "__tests__"
+ },
+ "files": [
+ "lib"
+ ],
+ "gitHead": "a2ab4bcf78e4f7080f0d45856e6eeba16f0bbc52",
+ "homepage": "https://github.com/actions/toolkit/tree/master/packages/core",
+ "keywords": [
+ "github",
+ "actions",
+ "core"
+ ],
+ "license": "MIT",
+ "main": "lib/core.js",
+ "name": "@actions/core",
+ "publishConfig": {
+ "access": "public"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/actions/toolkit.git"
+ },
+ "scripts": {
+ "test": "echo \"Error: run tests from root\" && exit 1",
+ "tsc": "tsc"
+ },
+ "version": "1.1.0"
+}
diff --git a/node_modules/@actions/github/LICENSE.md b/node_modules/@actions/github/LICENSE.md
new file mode 100644
index 0000000..e5a73f4
--- /dev/null
+++ b/node_modules/@actions/github/LICENSE.md
@@ -0,0 +1,7 @@
+Copyright 2019 GitHub
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
\ No newline at end of file
diff --git a/node_modules/@actions/github/README.md b/node_modules/@actions/github/README.md
new file mode 100644
index 0000000..b431256
--- /dev/null
+++ b/node_modules/@actions/github/README.md
@@ -0,0 +1,50 @@
+# `@actions/github`
+
+> A hydrated Octokit client.
+
+## Usage
+
+Returns an Octokit client. See https://octokit.github.io/rest.js for the API.
+
+```js
+const github = require('@actions/github');
+const core = require('@actions/core');
+
+// This should be a token with access to your repository scoped in as a secret.
+const myToken = core.getInput('myToken');
+
+const octokit = new github.GitHub(myToken);
+
+const { data: pullRequest } = await octokit.pulls.get({
+ owner: 'octokit',
+ repo: 'rest.js',
+ pull_number: 123,
+ mediaType: {
+ format: 'diff'
+ }
+});
+
+console.log(pullRequest);
+```
+
+You can pass client options (except `auth`, which is handled by the token argument), as specified by [Octokit](https://octokit.github.io/rest.js/), as a second argument to the `GitHub` constructor.
+
+You can also make GraphQL requests. See https://github.com/octokit/graphql.js for the API.
+
+```js
+const result = await octokit.graphql(query, variables);
+```
+
+Finally, you can get the context of the current action:
+
+```js
+const github = require('@actions/github');
+
+const context = github.context;
+
+const newIssue = await octokit.issues.create({
+ ...context.repo,
+ title: 'New issue!',
+ body: 'Hello Universe!'
+});
+```
diff --git a/node_modules/@actions/github/lib/context.d.ts b/node_modules/@actions/github/lib/context.d.ts
new file mode 100644
index 0000000..3ee7583
--- /dev/null
+++ b/node_modules/@actions/github/lib/context.d.ts
@@ -0,0 +1,26 @@
+import { WebhookPayload } from './interfaces';
+export declare class Context {
+ /**
+ * Webhook payload object that triggered the workflow
+ */
+ payload: WebhookPayload;
+ eventName: string;
+ sha: string;
+ ref: string;
+ workflow: string;
+ action: string;
+ actor: string;
+ /**
+ * Hydrate the context from the environment
+ */
+ constructor();
+ readonly issue: {
+ owner: string;
+ repo: string;
+ number: number;
+ };
+ readonly repo: {
+ owner: string;
+ repo: string;
+ };
+}
diff --git a/node_modules/@actions/github/lib/context.js b/node_modules/@actions/github/lib/context.js
new file mode 100644
index 0000000..0df128f
--- /dev/null
+++ b/node_modules/@actions/github/lib/context.js
@@ -0,0 +1,45 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+const fs_1 = require("fs");
+const os_1 = require("os");
+class Context {
+ /**
+ * Hydrate the context from the environment
+ */
+ constructor() {
+ this.payload = {};
+ if (process.env.GITHUB_EVENT_PATH) {
+ if (fs_1.existsSync(process.env.GITHUB_EVENT_PATH)) {
+ this.payload = JSON.parse(fs_1.readFileSync(process.env.GITHUB_EVENT_PATH, { encoding: 'utf8' }));
+ }
+ else {
+ process.stdout.write(`GITHUB_EVENT_PATH ${process.env.GITHUB_EVENT_PATH} does not exist${os_1.EOL}`);
+ }
+ }
+ this.eventName = process.env.GITHUB_EVENT_NAME;
+ this.sha = process.env.GITHUB_SHA;
+ this.ref = process.env.GITHUB_REF;
+ this.workflow = process.env.GITHUB_WORKFLOW;
+ this.action = process.env.GITHUB_ACTION;
+ this.actor = process.env.GITHUB_ACTOR;
+ }
+ get issue() {
+ const payload = this.payload;
+ return Object.assign(Object.assign({}, this.repo), { number: (payload.issue || payload.pullRequest || payload).number });
+ }
+ get repo() {
+ if (process.env.GITHUB_REPOSITORY) {
+ const [owner, repo] = process.env.GITHUB_REPOSITORY.split('/');
+ return { owner, repo };
+ }
+ if (this.payload.repository) {
+ return {
+ owner: this.payload.repository.owner.login,
+ repo: this.payload.repository.name
+ };
+ }
+ throw new Error("context.repo requires a GITHUB_REPOSITORY environment variable like 'owner/repo'");
+ }
+}
+exports.Context = Context;
+//# sourceMappingURL=context.js.map
\ No newline at end of file
diff --git a/node_modules/@actions/github/lib/context.js.map b/node_modules/@actions/github/lib/context.js.map
new file mode 100644
index 0000000..24eabd8
--- /dev/null
+++ b/node_modules/@actions/github/lib/context.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":";;AAEA,2BAA2C;AAC3C,2BAAsB;AAEtB,MAAa,OAAO;IAalB;;OAEG;IACH;QACE,IAAI,CAAC,OAAO,GAAG,EAAE,CAAA;QACjB,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;YACjC,IAAI,eAAU,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE;gBAC7C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CACvB,iBAAY,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAAC,QAAQ,EAAE,MAAM,EAAC,CAAC,CAChE,CAAA;aACF;iBAAM;gBACL,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,qBACE,OAAO,CAAC,GAAG,CAAC,iBACd,kBAAkB,QAAG,EAAE,CACxB,CAAA;aACF;SACF;QACD,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,iBAA2B,CAAA;QACxD,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,UAAoB,CAAA;QAC3C,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,UAAoB,CAAA;QAC3C,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,eAAyB,CAAA;QACrD,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,aAAuB,CAAA;QACjD,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,YAAsB,CAAA;IACjD,CAAC;IAED,IAAI,KAAK;QACP,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;QAE5B,uCACK,IAAI,CAAC,IAAI,KACZ,MAAM,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,CAAC,MAAM,IACjE;IACH,CAAC;IAED,IAAI,IAAI;QACN,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;YACjC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAC9D,OAAO,EAAC,KAAK,EAAE,IAAI,EAAC,CAAA;SACrB;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YAC3B,OAAO;gBACL,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK;gBAC1C,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI;aACnC,CAAA;SACF;QAED,MAAM,IAAI,KAAK,CACb,kFAAkF,CACnF,CAAA;IACH,CAAC;CACF;AAjED,0BAiEC"}
\ No newline at end of file
diff --git a/node_modules/@actions/github/lib/github.d.ts b/node_modules/@actions/github/lib/github.d.ts
new file mode 100644
index 0000000..7c5b9f2
--- /dev/null
+++ b/node_modules/@actions/github/lib/github.d.ts
@@ -0,0 +1,8 @@
+import { GraphQlQueryResponse, Variables } from '@octokit/graphql';
+import Octokit from '@octokit/rest';
+import * as Context from './context';
+export declare const context: Context.Context;
+export declare class GitHub extends Octokit {
+ graphql: (query: string, variables?: Variables) => Promise;
+ constructor(token: string, opts?: Omit);
+}
diff --git a/node_modules/@actions/github/lib/github.js b/node_modules/@actions/github/lib/github.js
new file mode 100644
index 0000000..d5c782f
--- /dev/null
+++ b/node_modules/@actions/github/lib/github.js
@@ -0,0 +1,29 @@
+"use strict";
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
+ result["default"] = mod;
+ return result;
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+// Originally pulled from https://github.com/JasonEtco/actions-toolkit/blob/master/src/github.ts
+const graphql_1 = require("@octokit/graphql");
+const rest_1 = __importDefault(require("@octokit/rest"));
+const Context = __importStar(require("./context"));
+// We need this in order to extend Octokit
+rest_1.default.prototype = new rest_1.default();
+exports.context = new Context.Context();
+class GitHub extends rest_1.default {
+ constructor(token, opts = {}) {
+ super(Object.assign(Object.assign({}, opts), { auth: `token ${token}` }));
+ this.graphql = graphql_1.defaults({
+ headers: { authorization: `token ${token}` }
+ });
+ }
+}
+exports.GitHub = GitHub;
+//# sourceMappingURL=github.js.map
\ No newline at end of file
diff --git a/node_modules/@actions/github/lib/github.js.map b/node_modules/@actions/github/lib/github.js.map
new file mode 100644
index 0000000..0c268e8
--- /dev/null
+++ b/node_modules/@actions/github/lib/github.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"github.js","sourceRoot":"","sources":["../src/github.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gGAAgG;AAChG,8CAA0E;AAC1E,yDAAmC;AACnC,mDAAoC;AAEpC,0CAA0C;AAC1C,cAAO,CAAC,SAAS,GAAG,IAAI,cAAO,EAAE,CAAA;AAEpB,QAAA,OAAO,GAAG,IAAI,OAAO,CAAC,OAAO,EAAE,CAAA;AAE5C,MAAa,MAAO,SAAQ,cAAO;IAMjC,YAAY,KAAa,EAAE,OAAsC,EAAE;QACjE,KAAK,iCAAK,IAAI,KAAE,IAAI,EAAE,SAAS,KAAK,EAAE,IAAE,CAAA;QACxC,IAAI,CAAC,OAAO,GAAG,kBAAQ,CAAC;YACtB,OAAO,EAAE,EAAC,aAAa,EAAE,SAAS,KAAK,EAAE,EAAC;SAC3C,CAAC,CAAA;IACJ,CAAC;CACF;AAZD,wBAYC"}
\ No newline at end of file
diff --git a/node_modules/@actions/github/lib/interfaces.d.ts b/node_modules/@actions/github/lib/interfaces.d.ts
new file mode 100644
index 0000000..23788cc
--- /dev/null
+++ b/node_modules/@actions/github/lib/interfaces.d.ts
@@ -0,0 +1,36 @@
+export interface PayloadRepository {
+ [key: string]: any;
+ full_name?: string;
+ name: string;
+ owner: {
+ [key: string]: any;
+ login: string;
+ name?: string;
+ };
+ html_url?: string;
+}
+export interface WebhookPayload {
+ [key: string]: any;
+ repository?: PayloadRepository;
+ issue?: {
+ [key: string]: any;
+ number: number;
+ html_url?: string;
+ body?: string;
+ };
+ pull_request?: {
+ [key: string]: any;
+ number: number;
+ html_url?: string;
+ body?: string;
+ };
+ sender?: {
+ [key: string]: any;
+ type: string;
+ };
+ action?: string;
+ installation?: {
+ id: number;
+ [key: string]: any;
+ };
+}
diff --git a/node_modules/@actions/github/lib/interfaces.js b/node_modules/@actions/github/lib/interfaces.js
new file mode 100644
index 0000000..a660b5e
--- /dev/null
+++ b/node_modules/@actions/github/lib/interfaces.js
@@ -0,0 +1,4 @@
+"use strict";
+/* eslint-disable @typescript-eslint/no-explicit-any */
+Object.defineProperty(exports, "__esModule", { value: true });
+//# sourceMappingURL=interfaces.js.map
\ No newline at end of file
diff --git a/node_modules/@actions/github/lib/interfaces.js.map b/node_modules/@actions/github/lib/interfaces.js.map
new file mode 100644
index 0000000..dc2c960
--- /dev/null
+++ b/node_modules/@actions/github/lib/interfaces.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":";AAAA,uDAAuD"}
\ No newline at end of file
diff --git a/node_modules/@actions/github/package.json b/node_modules/@actions/github/package.json
new file mode 100644
index 0000000..453a84b
--- /dev/null
+++ b/node_modules/@actions/github/package.json
@@ -0,0 +1,71 @@
+{
+ "_args": [
+ [
+ "@actions/github@1.1.0",
+ "/Users/dougtangren/code/rust/action-gh-release"
+ ]
+ ],
+ "_from": "@actions/github@1.1.0",
+ "_id": "@actions/github@1.1.0",
+ "_inBundle": false,
+ "_integrity": "sha512-cHf6PyoNMdei13jEdGPhKprIMFmjVVW/dnM5/9QmQDJ1ZTaGVyezUSCUIC/ySNLRvDUpeFwPYMdThSEJldSbUw==",
+ "_location": "/@actions/github",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "version",
+ "registry": true,
+ "raw": "@actions/github@1.1.0",
+ "name": "@actions/github",
+ "escapedName": "@actions%2fgithub",
+ "scope": "@actions",
+ "rawSpec": "1.1.0",
+ "saveSpec": null,
+ "fetchSpec": "1.1.0"
+ },
+ "_requiredBy": [
+ "/"
+ ],
+ "_resolved": "https://registry.npmjs.org/@actions/github/-/github-1.1.0.tgz",
+ "_spec": "1.1.0",
+ "_where": "/Users/dougtangren/code/rust/action-gh-release",
+ "bugs": {
+ "url": "https://github.com/actions/toolkit/issues"
+ },
+ "dependencies": {
+ "@octokit/graphql": "^2.0.1",
+ "@octokit/rest": "^16.15.0"
+ },
+ "description": "Actions github lib",
+ "devDependencies": {
+ "jest": "^24.7.1"
+ },
+ "directories": {
+ "lib": "lib",
+ "test": "__tests__"
+ },
+ "files": [
+ "lib"
+ ],
+ "gitHead": "a2ab4bcf78e4f7080f0d45856e6eeba16f0bbc52",
+ "homepage": "https://github.com/actions/toolkit/tree/master/packages/github",
+ "keywords": [
+ "github",
+ "actions"
+ ],
+ "license": "MIT",
+ "main": "lib/github.js",
+ "name": "@actions/github",
+ "publishConfig": {
+ "access": "public"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/actions/toolkit.git"
+ },
+ "scripts": {
+ "build": "tsc",
+ "test": "jest",
+ "tsc": "tsc"
+ },
+ "version": "1.1.0"
+}
diff --git a/node_modules/@octokit/endpoint/LICENSE b/node_modules/@octokit/endpoint/LICENSE
new file mode 100644
index 0000000..af5366d
--- /dev/null
+++ b/node_modules/@octokit/endpoint/LICENSE
@@ -0,0 +1,21 @@
+The MIT License
+
+Copyright (c) 2018 Octokit contributors
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/node_modules/@octokit/endpoint/README.md b/node_modules/@octokit/endpoint/README.md
new file mode 100644
index 0000000..ad26c37
--- /dev/null
+++ b/node_modules/@octokit/endpoint/README.md
@@ -0,0 +1,421 @@
+# endpoint.js
+
+> Turns GitHub REST API endpoints into generic request options
+
+[](https://www.npmjs.com/package/@octokit/endpoint)
+[](https://travis-ci.org/octokit/endpoint.js)
+[](https://greenkeeper.io/)
+
+`@octokit/endpoint` combines [GitHub REST API routes](https://developer.github.com/v3/) with your parameters and turns them into generic request options that can be used in any request library.
+
+
+
+
+- [Usage](#usage)
+- [API](#api)
+ - [endpoint()](#endpoint)
+ - [endpoint.defaults()](#endpointdefaults)
+ - [endpoint.DEFAULTS](#endpointdefaults)
+ - [endpoint.merge()](#endpointmerge)
+ - [endpoint.parse()](#endpointparse)
+- [Special cases](#special-cases)
+ - [The `data` parameter – set request body directly](#the-data-parameter-%E2%80%93-set-request-body-directly)
+ - [Set parameters for both the URL/query and the request body](#set-parameters-for-both-the-urlquery-and-the-request-body)
+- [LICENSE](#license)
+
+
+
+## Usage
+
+
+
+
+Browsers
+ |
+Load @octokit/endpoint directly from cdn.pika.dev
+
+```html
+
+```
+
+ |
+
+Node
+ |
+
+Install with npm install @octokit/endpoint
+
+```js
+const { endpoint } = require("@octokit/endpoint");
+// or: import { endpoint } from "@octokit/endpoint";
+```
+
+ |
+
+
+
+Example for [List organization repositories](https://developer.github.com/v3/repos/#list-organization-repositories)
+
+```js
+const requestOptions = endpoint("GET /orgs/:org/repos", {
+ headers: {
+ authorization: "token 0000000000000000000000000000000000000001"
+ },
+ org: "octokit",
+ type: "private"
+});
+```
+
+The resulting `requestOptions` looks as follows
+
+```json
+{
+ "method": "GET",
+ "url": "https://api.github.com/orgs/octokit/repos?type=private",
+ "headers": {
+ "accept": "application/vnd.github.v3+json",
+ "authorization": "token 0000000000000000000000000000000000000001",
+ "user-agent": "octokit/endpoint.js v1.2.3"
+ }
+}
+```
+
+You can pass `requestOptions` to commen request libraries
+
+```js
+const { url, ...options } = requestOptions;
+// using with fetch (https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API)
+fetch(url, options);
+// using with request (https://github.com/request/request)
+request(requestOptions);
+// using with got (https://github.com/sindresorhus/got)
+got[options.method](url, options);
+// using with axios
+axios(requestOptions);
+```
+
+## API
+
+### `endpoint(route, options)` or `endpoint(options)`
+
+
+
+
+
+ name
+ |
+
+ type
+ |
+
+ description
+ |
+
+
+
+
+
+ route
+ |
+
+ String
+ |
+
+ If set, it has to be a string consisting of URL and the request method, e.g., GET /orgs/:org . If it’s set to a URL, only the method defaults to GET .
+ |
+
+
+
+ options.method
+ |
+
+ String
+ |
+
+ Required unless route is set. Any supported http verb. Defaults to GET .
+ |
+
+
+
+ options.url
+ |
+
+ String
+ |
+
+ Required unless route is set. A path or full URL which may contain :variable or {variable} placeholders,
+ e.g., /orgs/:org/repos . The url is parsed using url-template.
+ |
+
+
+
+ options.baseUrl
+ |
+
+ String
+ |
+
+ Defaults to https://api.github.com .
+ |
+
+
+
+ options.headers
+ |
+
+ Object
+ |
+
+ Custom headers. Passed headers are merged with defaults:
+ headers['user-agent'] defaults to octokit-endpoint.js/1.2.3 (where 1.2.3 is the released version).
+ headers['accept'] defaults to application/vnd.github.v3+json .
+ |
+
+
+
+ options.mediaType.format
+ |
+
+ String
+ |
+
+ Media type param, such as raw , diff , or text+json . See Media Types. Setting options.mediaType.format will amend the headers.accept value.
+ |
+
+
+
+ options.mediaType.previews
+ |
+
+ Array of Strings
+ |
+
+ Name of previews, such as mercy , symmetra , or scarlet-witch . See API Previews. If options.mediaType.previews was set as default, the new previews will be merged into the default ones. Setting options.mediaType.previews will amend the headers.accept value. options.mediaType.previews will be merged with an existing array set using .defaults() .
+ |
+
+
+
+ options.data
+ |
+
+ Any
+ |
+
+ Set request body directly instead of setting it to JSON based on additional parameters. See "The data parameter" below.
+ |
+
+
+
+ options.request
+ |
+
+ Object
+ |
+
+ Pass custom meta information for the request. The request object will be returned as is.
+ |
+
+
+
+
+All other options will be passed depending on the `method` and `url` options.
+
+1. If the option key has a placeholder in the `url`, it will be used as the replacement. For example, if the passed options are `{url: '/orgs/:org/repos', org: 'foo'}` the returned `options.url` is `https://api.github.com/orgs/foo/repos`.
+2. If the `method` is `GET` or `HEAD`, the option is passed as a query parameter.
+3. Otherwise, the parameter is passed in the request body as a JSON key.
+
+**Result**
+
+`endpoint()` is a synchronous method and returns an object with the following keys:
+
+
+
+
+
+ key
+ |
+
+ type
+ |
+
+ description
+ |
+
+
+
+
+ method |
+ String |
+ The http method. Always lowercase. |
+
+
+ url |
+ String |
+ The url with placeholders replaced with passed parameters. |
+
+
+ headers |
+ Object |
+ All header names are lowercased. |
+
+
+ body |
+ Any |
+ The request body if one is present. Only for PATCH , POST , PUT , DELETE requests. |
+
+
+ request |
+ Object |
+ Request meta option, it will be returned as it was passed into endpoint() |
+
+
+
+
+### `endpoint.defaults()`
+
+Override or set default options. Example:
+
+```js
+const request = require("request");
+const myEndpoint = require("@octokit/endpoint").defaults({
+ baseUrl: "https://github-enterprise.acme-inc.com/api/v3",
+ headers: {
+ "user-agent": "myApp/1.2.3",
+ authorization: `token 0000000000000000000000000000000000000001`
+ },
+ org: "my-project",
+ per_page: 100
+});
+
+request(myEndpoint(`GET /orgs/:org/repos`));
+```
+
+You can call `.defaults()` again on the returned method, the defaults will cascade.
+
+```js
+const myProjectEndpoint = endpoint.defaults({
+ baseUrl: "https://github-enterprise.acme-inc.com/api/v3",
+ headers: {
+ "user-agent": "myApp/1.2.3"
+ },
+ org: "my-project"
+});
+const myProjectEndpointWithAuth = myProjectEndpoint.defaults({
+ headers: {
+ authorization: `token 0000000000000000000000000000000000000001`
+ }
+});
+```
+
+`myProjectEndpointWithAuth` now defaults the `baseUrl`, `headers['user-agent']`,
+`org` and `headers['authorization']` on top of `headers['accept']` that is set
+by the global default.
+
+### `endpoint.DEFAULTS`
+
+The current default options.
+
+```js
+endpoint.DEFAULTS.baseUrl; // https://api.github.com
+const myEndpoint = endpoint.defaults({
+ baseUrl: "https://github-enterprise.acme-inc.com/api/v3"
+});
+myEndpoint.DEFAULTS.baseUrl; // https://github-enterprise.acme-inc.com/api/v3
+```
+
+### `endpoint.merge(route, options)` or `endpoint.merge(options)`
+
+Get the defaulted endpoint options, but without parsing them into request options:
+
+```js
+const myProjectEndpoint = endpoint.defaults({
+ baseUrl: "https://github-enterprise.acme-inc.com/api/v3",
+ headers: {
+ "user-agent": "myApp/1.2.3"
+ },
+ org: "my-project"
+});
+myProjectEndpoint.merge("GET /orgs/:org/repos", {
+ headers: {
+ authorization: `token 0000000000000000000000000000000000000001`
+ },
+ org: "my-secret-project",
+ type: "private"
+});
+
+// {
+// baseUrl: 'https://github-enterprise.acme-inc.com/api/v3',
+// method: 'GET',
+// url: '/orgs/:org/repos',
+// headers: {
+// accept: 'application/vnd.github.v3+json',
+// authorization: `token 0000000000000000000000000000000000000001`,
+// 'user-agent': 'myApp/1.2.3'
+// },
+// org: 'my-secret-project',
+// type: 'private'
+// }
+```
+
+### `endpoint.parse()`
+
+Stateless method to turn endpoint options into request options. Calling
+`endpoint(options)` is the same as calling `endpoint.parse(endpoint.merge(options))`.
+
+## Special cases
+
+
+
+### The `data` parameter – set request body directly
+
+Some endpoints such as [Render a Markdown document in raw mode](https://developer.github.com/v3/markdown/#render-a-markdown-document-in-raw-mode) don’t have parameters that are sent as request body keys, instead, the request body needs to be set directly. In these cases, set the `data` parameter.
+
+```js
+const options = endpoint("POST /markdown/raw", {
+ data: "Hello world github/linguist#1 **cool**, and #1!",
+ headers: {
+ accept: "text/html;charset=utf-8",
+ "content-type": "text/plain"
+ }
+});
+
+// options is
+// {
+// method: 'post',
+// url: 'https://api.github.com/markdown/raw',
+// headers: {
+// accept: 'text/html;charset=utf-8',
+// 'content-type': 'text/plain',
+// 'user-agent': userAgent
+// },
+// body: 'Hello world github/linguist#1 **cool**, and #1!'
+// }
+```
+
+### Set parameters for both the URL/query and the request body
+
+There are API endpoints that accept both query parameters as well as a body. In that case, you need to add the query parameters as templates to `options.url`, as defined in the [RFC 6570 URI Template specification](https://tools.ietf.org/html/rfc6570).
+
+Example
+
+```js
+endpoint(
+ "POST https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}",
+ {
+ name: "example.zip",
+ label: "short description",
+ headers: {
+ "content-type": "text/plain",
+ "content-length": 14,
+ authorization: `token 0000000000000000000000000000000000000001`
+ },
+ data: "Hello, world!"
+ }
+);
+```
+
+## LICENSE
+
+[MIT](LICENSE)
diff --git a/node_modules/@octokit/endpoint/dist-node/index.js b/node_modules/@octokit/endpoint/dist-node/index.js
new file mode 100644
index 0000000..fe72119
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-node/index.js
@@ -0,0 +1,377 @@
+'use strict';
+
+Object.defineProperty(exports, '__esModule', { value: true });
+
+function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
+
+var isPlainObject = _interopDefault(require('is-plain-object'));
+var universalUserAgent = require('universal-user-agent');
+
+function lowercaseKeys(object) {
+ if (!object) {
+ return {};
+ }
+
+ return Object.keys(object).reduce((newObj, key) => {
+ newObj[key.toLowerCase()] = object[key];
+ return newObj;
+ }, {});
+}
+
+function mergeDeep(defaults, options) {
+ const result = Object.assign({}, defaults);
+ Object.keys(options).forEach(key => {
+ if (isPlainObject(options[key])) {
+ if (!(key in defaults)) Object.assign(result, {
+ [key]: options[key]
+ });else result[key] = mergeDeep(defaults[key], options[key]);
+ } else {
+ Object.assign(result, {
+ [key]: options[key]
+ });
+ }
+ });
+ return result;
+}
+
+function merge(defaults, route, options) {
+ if (typeof route === "string") {
+ let [method, url] = route.split(" ");
+ options = Object.assign(url ? {
+ method,
+ url
+ } : {
+ url: method
+ }, options);
+ } else {
+ options = route || {};
+ } // lowercase header names before merging with defaults to avoid duplicates
+
+
+ options.headers = lowercaseKeys(options.headers);
+ const mergedOptions = mergeDeep(defaults || {}, options); // mediaType.previews arrays are merged, instead of overwritten
+
+ if (defaults && defaults.mediaType.previews.length) {
+ mergedOptions.mediaType.previews = defaults.mediaType.previews.filter(preview => !mergedOptions.mediaType.previews.includes(preview)).concat(mergedOptions.mediaType.previews);
+ }
+
+ mergedOptions.mediaType.previews = mergedOptions.mediaType.previews.map(preview => preview.replace(/-preview/, ""));
+ return mergedOptions;
+}
+
+function addQueryParameters(url, parameters) {
+ const separator = /\?/.test(url) ? "&" : "?";
+ const names = Object.keys(parameters);
+
+ if (names.length === 0) {
+ return url;
+ }
+
+ return url + separator + names.map(name => {
+ if (name === "q") {
+ return "q=" + parameters.q.split("+").map(encodeURIComponent).join("+");
+ }
+
+ return `${name}=${encodeURIComponent(parameters[name])}`;
+ }).join("&");
+}
+
+const urlVariableRegex = /\{[^}]+\}/g;
+
+function removeNonChars(variableName) {
+ return variableName.replace(/^\W+|\W+$/g, "").split(/,/);
+}
+
+function extractUrlVariableNames(url) {
+ const matches = url.match(urlVariableRegex);
+
+ if (!matches) {
+ return [];
+ }
+
+ return matches.map(removeNonChars).reduce((a, b) => a.concat(b), []);
+}
+
+function omit(object, keysToOmit) {
+ return Object.keys(object).filter(option => !keysToOmit.includes(option)).reduce((obj, key) => {
+ obj[key] = object[key];
+ return obj;
+ }, {});
+}
+
+// Based on https://github.com/bramstein/url-template, licensed under BSD
+// TODO: create separate package.
+//
+// Copyright (c) 2012-2014, Bram Stein
+// All rights reserved.
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions
+// are met:
+// 1. Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// 2. Redistributions in binary form must reproduce the above copyright
+// notice, this list of conditions and the following disclaimer in the
+// documentation and/or other materials provided with the distribution.
+// 3. The name of the author may not be used to endorse or promote products
+// derived from this software without specific prior written permission.
+// THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+// EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+// EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/* istanbul ignore file */
+function encodeReserved(str) {
+ return str.split(/(%[0-9A-Fa-f]{2})/g).map(function (part) {
+ if (!/%[0-9A-Fa-f]/.test(part)) {
+ part = encodeURI(part).replace(/%5B/g, "[").replace(/%5D/g, "]");
+ }
+
+ return part;
+ }).join("");
+}
+
+function encodeUnreserved(str) {
+ return encodeURIComponent(str).replace(/[!'()*]/g, function (c) {
+ return "%" + c.charCodeAt(0).toString(16).toUpperCase();
+ });
+}
+
+function encodeValue(operator, value, key) {
+ value = operator === "+" || operator === "#" ? encodeReserved(value) : encodeUnreserved(value);
+
+ if (key) {
+ return encodeUnreserved(key) + "=" + value;
+ } else {
+ return value;
+ }
+}
+
+function isDefined(value) {
+ return value !== undefined && value !== null;
+}
+
+function isKeyOperator(operator) {
+ return operator === ";" || operator === "&" || operator === "?";
+}
+
+function getValues(context, operator, key, modifier) {
+ var value = context[key],
+ result = [];
+
+ if (isDefined(value) && value !== "") {
+ if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") {
+ value = value.toString();
+
+ if (modifier && modifier !== "*") {
+ value = value.substring(0, parseInt(modifier, 10));
+ }
+
+ result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : ""));
+ } else {
+ if (modifier === "*") {
+ if (Array.isArray(value)) {
+ value.filter(isDefined).forEach(function (value) {
+ result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : ""));
+ });
+ } else {
+ Object.keys(value).forEach(function (k) {
+ if (isDefined(value[k])) {
+ result.push(encodeValue(operator, value[k], k));
+ }
+ });
+ }
+ } else {
+ const tmp = [];
+
+ if (Array.isArray(value)) {
+ value.filter(isDefined).forEach(function (value) {
+ tmp.push(encodeValue(operator, value));
+ });
+ } else {
+ Object.keys(value).forEach(function (k) {
+ if (isDefined(value[k])) {
+ tmp.push(encodeUnreserved(k));
+ tmp.push(encodeValue(operator, value[k].toString()));
+ }
+ });
+ }
+
+ if (isKeyOperator(operator)) {
+ result.push(encodeUnreserved(key) + "=" + tmp.join(","));
+ } else if (tmp.length !== 0) {
+ result.push(tmp.join(","));
+ }
+ }
+ }
+ } else {
+ if (operator === ";") {
+ if (isDefined(value)) {
+ result.push(encodeUnreserved(key));
+ }
+ } else if (value === "" && (operator === "&" || operator === "?")) {
+ result.push(encodeUnreserved(key) + "=");
+ } else if (value === "") {
+ result.push("");
+ }
+ }
+
+ return result;
+}
+
+function parseUrl(template) {
+ return {
+ expand: expand.bind(null, template)
+ };
+}
+
+function expand(template, context) {
+ var operators = ["+", "#", ".", "/", ";", "?", "&"];
+ return template.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g, function (_, expression, literal) {
+ if (expression) {
+ let operator = "";
+ const values = [];
+
+ if (operators.indexOf(expression.charAt(0)) !== -1) {
+ operator = expression.charAt(0);
+ expression = expression.substr(1);
+ }
+
+ expression.split(/,/g).forEach(function (variable) {
+ var tmp = /([^:\*]*)(?::(\d+)|(\*))?/.exec(variable);
+ values.push(getValues(context, operator, tmp[1], tmp[2] || tmp[3]));
+ });
+
+ if (operator && operator !== "+") {
+ var separator = ",";
+
+ if (operator === "?") {
+ separator = "&";
+ } else if (operator !== "#") {
+ separator = operator;
+ }
+
+ return (values.length !== 0 ? operator : "") + values.join(separator);
+ } else {
+ return values.join(",");
+ }
+ } else {
+ return encodeReserved(literal);
+ }
+ });
+}
+
+function parse(options) {
+ // https://fetch.spec.whatwg.org/#methods
+ let method = options.method.toUpperCase(); // replace :varname with {varname} to make it RFC 6570 compatible
+
+ let url = options.url.replace(/:([a-z]\w+)/g, "{+$1}");
+ let headers = Object.assign({}, options.headers);
+ let body;
+ let parameters = omit(options, ["method", "baseUrl", "url", "headers", "request", "mediaType"]); // extract variable names from URL to calculate remaining variables later
+
+ const urlVariableNames = extractUrlVariableNames(url);
+ url = parseUrl(url).expand(parameters);
+
+ if (!/^http/.test(url)) {
+ url = options.baseUrl + url;
+ }
+
+ const omittedParameters = Object.keys(options).filter(option => urlVariableNames.includes(option)).concat("baseUrl");
+ const remainingParameters = omit(parameters, omittedParameters);
+ const isBinaryRequset = /application\/octet-stream/i.test(headers.accept);
+
+ if (!isBinaryRequset) {
+ if (options.mediaType.format) {
+ // e.g. application/vnd.github.v3+json => application/vnd.github.v3.raw
+ headers.accept = headers.accept.split(/,/).map(preview => preview.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/, `application/vnd$1$2.${options.mediaType.format}`)).join(",");
+ }
+
+ if (options.mediaType.previews.length) {
+ const previewsFromAcceptHeader = headers.accept.match(/[\w-]+(?=-preview)/g) || [];
+ headers.accept = previewsFromAcceptHeader.concat(options.mediaType.previews).map(preview => {
+ const format = options.mediaType.format ? `.${options.mediaType.format}` : "+json";
+ return `application/vnd.github.${preview}-preview${format}`;
+ }).join(",");
+ }
+ } // for GET/HEAD requests, set URL query parameters from remaining parameters
+ // for PATCH/POST/PUT/DELETE requests, set request body from remaining parameters
+
+
+ if (["GET", "HEAD"].includes(method)) {
+ url = addQueryParameters(url, remainingParameters);
+ } else {
+ if ("data" in remainingParameters) {
+ body = remainingParameters.data;
+ } else {
+ if (Object.keys(remainingParameters).length) {
+ body = remainingParameters;
+ } else {
+ headers["content-length"] = 0;
+ }
+ }
+ } // default content-type for JSON if body is set
+
+
+ if (!headers["content-type"] && typeof body !== "undefined") {
+ headers["content-type"] = "application/json; charset=utf-8";
+ } // GitHub expects 'content-length: 0' header for PUT/PATCH requests without body.
+ // fetch does not allow to set `content-length` header, but we can set body to an empty string
+
+
+ if (["PATCH", "PUT"].includes(method) && typeof body === "undefined") {
+ body = "";
+ } // Only return body/request keys if present
+
+
+ return Object.assign({
+ method,
+ url,
+ headers
+ }, typeof body !== "undefined" ? {
+ body
+ } : null, options.request ? {
+ request: options.request
+ } : null);
+}
+
+function endpointWithDefaults(defaults, route, options) {
+ return parse(merge(defaults, route, options));
+}
+
+function withDefaults(oldDefaults, newDefaults) {
+ const DEFAULTS = merge(oldDefaults, newDefaults);
+ const endpoint = endpointWithDefaults.bind(null, DEFAULTS);
+ return Object.assign(endpoint, {
+ DEFAULTS,
+ defaults: withDefaults.bind(null, DEFAULTS),
+ merge: merge.bind(null, DEFAULTS),
+ parse
+ });
+}
+
+const VERSION = "0.0.0-development";
+
+const userAgent = `octokit-endpoint.js/${VERSION} ${universalUserAgent.getUserAgent()}`;
+const DEFAULTS = {
+ method: "GET",
+ baseUrl: "https://api.github.com",
+ headers: {
+ accept: "application/vnd.github.v3+json",
+ "user-agent": userAgent
+ },
+ mediaType: {
+ format: "",
+ previews: []
+ }
+};
+
+const endpoint = withDefaults(null, DEFAULTS);
+
+exports.endpoint = endpoint;
+//# sourceMappingURL=index.js.map
diff --git a/node_modules/@octokit/endpoint/dist-node/index.js.map b/node_modules/@octokit/endpoint/dist-node/index.js.map
new file mode 100644
index 0000000..ef44981
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-node/index.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"index.js","sources":["../dist-src/util/lowercase-keys.js","../dist-src/util/merge-deep.js","../dist-src/merge.js","../dist-src/util/add-query-parameters.js","../dist-src/util/extract-url-variable-names.js","../dist-src/util/omit.js","../dist-src/util/url-template.js","../dist-src/parse.js","../dist-src/endpoint-with-defaults.js","../dist-src/with-defaults.js","../dist-src/version.js","../dist-src/defaults.js","../dist-src/index.js"],"sourcesContent":["export function lowercaseKeys(object) {\n if (!object) {\n return {};\n }\n return Object.keys(object).reduce((newObj, key) => {\n newObj[key.toLowerCase()] = object[key];\n return newObj;\n }, {});\n}\n","import isPlainObject from \"is-plain-object\";\nexport function mergeDeep(defaults, options) {\n const result = Object.assign({}, defaults);\n Object.keys(options).forEach(key => {\n if (isPlainObject(options[key])) {\n if (!(key in defaults))\n Object.assign(result, { [key]: options[key] });\n else\n result[key] = mergeDeep(defaults[key], options[key]);\n }\n else {\n Object.assign(result, { [key]: options[key] });\n }\n });\n return result;\n}\n","import { lowercaseKeys } from \"./util/lowercase-keys\";\nimport { mergeDeep } from \"./util/merge-deep\";\nexport function merge(defaults, route, options) {\n if (typeof route === \"string\") {\n let [method, url] = route.split(\" \");\n options = Object.assign(url ? { method, url } : { url: method }, options);\n }\n else {\n options = route || {};\n }\n // lowercase header names before merging with defaults to avoid duplicates\n options.headers = lowercaseKeys(options.headers);\n const mergedOptions = mergeDeep(defaults || {}, options);\n // mediaType.previews arrays are merged, instead of overwritten\n if (defaults && defaults.mediaType.previews.length) {\n mergedOptions.mediaType.previews = defaults.mediaType.previews\n .filter(preview => !mergedOptions.mediaType.previews.includes(preview))\n .concat(mergedOptions.mediaType.previews);\n }\n mergedOptions.mediaType.previews = mergedOptions.mediaType.previews.map((preview) => preview.replace(/-preview/, \"\"));\n return mergedOptions;\n}\n","export function addQueryParameters(url, parameters) {\n const separator = /\\?/.test(url) ? \"&\" : \"?\";\n const names = Object.keys(parameters);\n if (names.length === 0) {\n return url;\n }\n return (url +\n separator +\n names\n .map(name => {\n if (name === \"q\") {\n return (\"q=\" +\n parameters\n .q.split(\"+\")\n .map(encodeURIComponent)\n .join(\"+\"));\n }\n return `${name}=${encodeURIComponent(parameters[name])}`;\n })\n .join(\"&\"));\n}\n","const urlVariableRegex = /\\{[^}]+\\}/g;\nfunction removeNonChars(variableName) {\n return variableName.replace(/^\\W+|\\W+$/g, \"\").split(/,/);\n}\nexport function extractUrlVariableNames(url) {\n const matches = url.match(urlVariableRegex);\n if (!matches) {\n return [];\n }\n return matches.map(removeNonChars).reduce((a, b) => a.concat(b), []);\n}\n","export function omit(object, keysToOmit) {\n return Object.keys(object)\n .filter(option => !keysToOmit.includes(option))\n .reduce((obj, key) => {\n obj[key] = object[key];\n return obj;\n }, {});\n}\n","// Based on https://github.com/bramstein/url-template, licensed under BSD\n// TODO: create separate package.\n//\n// Copyright (c) 2012-2014, Bram Stein\n// All rights reserved.\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions\n// are met:\n// 1. Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// 2. Redistributions in binary form must reproduce the above copyright\n// notice, this list of conditions and the following disclaimer in the\n// documentation and/or other materials provided with the distribution.\n// 3. The name of the author may not be used to endorse or promote products\n// derived from this software without specific prior written permission.\n// THIS SOFTWARE IS PROVIDED BY THE AUTHOR \"AS IS\" AND ANY EXPRESS OR IMPLIED\n// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO\n// EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,\n// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\n// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,\n// EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n/* istanbul ignore file */\nfunction encodeReserved(str) {\n return str\n .split(/(%[0-9A-Fa-f]{2})/g)\n .map(function (part) {\n if (!/%[0-9A-Fa-f]/.test(part)) {\n part = encodeURI(part)\n .replace(/%5B/g, \"[\")\n .replace(/%5D/g, \"]\");\n }\n return part;\n })\n .join(\"\");\n}\nfunction encodeUnreserved(str) {\n return encodeURIComponent(str).replace(/[!'()*]/g, function (c) {\n return (\"%\" +\n c\n .charCodeAt(0)\n .toString(16)\n .toUpperCase());\n });\n}\nfunction encodeValue(operator, value, key) {\n value =\n operator === \"+\" || operator === \"#\"\n ? encodeReserved(value)\n : encodeUnreserved(value);\n if (key) {\n return encodeUnreserved(key) + \"=\" + value;\n }\n else {\n return value;\n }\n}\nfunction isDefined(value) {\n return value !== undefined && value !== null;\n}\nfunction isKeyOperator(operator) {\n return operator === \";\" || operator === \"&\" || operator === \"?\";\n}\nfunction getValues(context, operator, key, modifier) {\n var value = context[key], result = [];\n if (isDefined(value) && value !== \"\") {\n if (typeof value === \"string\" ||\n typeof value === \"number\" ||\n typeof value === \"boolean\") {\n value = value.toString();\n if (modifier && modifier !== \"*\") {\n value = value.substring(0, parseInt(modifier, 10));\n }\n result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : \"\"));\n }\n else {\n if (modifier === \"*\") {\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function (value) {\n result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : \"\"));\n });\n }\n else {\n Object.keys(value).forEach(function (k) {\n if (isDefined(value[k])) {\n result.push(encodeValue(operator, value[k], k));\n }\n });\n }\n }\n else {\n const tmp = [];\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function (value) {\n tmp.push(encodeValue(operator, value));\n });\n }\n else {\n Object.keys(value).forEach(function (k) {\n if (isDefined(value[k])) {\n tmp.push(encodeUnreserved(k));\n tmp.push(encodeValue(operator, value[k].toString()));\n }\n });\n }\n if (isKeyOperator(operator)) {\n result.push(encodeUnreserved(key) + \"=\" + tmp.join(\",\"));\n }\n else if (tmp.length !== 0) {\n result.push(tmp.join(\",\"));\n }\n }\n }\n }\n else {\n if (operator === \";\") {\n if (isDefined(value)) {\n result.push(encodeUnreserved(key));\n }\n }\n else if (value === \"\" && (operator === \"&\" || operator === \"?\")) {\n result.push(encodeUnreserved(key) + \"=\");\n }\n else if (value === \"\") {\n result.push(\"\");\n }\n }\n return result;\n}\nexport function parseUrl(template) {\n return {\n expand: expand.bind(null, template)\n };\n}\nfunction expand(template, context) {\n var operators = [\"+\", \"#\", \".\", \"/\", \";\", \"?\", \"&\"];\n return template.replace(/\\{([^\\{\\}]+)\\}|([^\\{\\}]+)/g, function (_, expression, literal) {\n if (expression) {\n let operator = \"\";\n const values = [];\n if (operators.indexOf(expression.charAt(0)) !== -1) {\n operator = expression.charAt(0);\n expression = expression.substr(1);\n }\n expression.split(/,/g).forEach(function (variable) {\n var tmp = /([^:\\*]*)(?::(\\d+)|(\\*))?/.exec(variable);\n values.push(getValues(context, operator, tmp[1], tmp[2] || tmp[3]));\n });\n if (operator && operator !== \"+\") {\n var separator = \",\";\n if (operator === \"?\") {\n separator = \"&\";\n }\n else if (operator !== \"#\") {\n separator = operator;\n }\n return (values.length !== 0 ? operator : \"\") + values.join(separator);\n }\n else {\n return values.join(\",\");\n }\n }\n else {\n return encodeReserved(literal);\n }\n });\n}\n","import { addQueryParameters } from \"./util/add-query-parameters\";\nimport { extractUrlVariableNames } from \"./util/extract-url-variable-names\";\nimport { omit } from \"./util/omit\";\nimport { parseUrl } from \"./util/url-template\";\nexport function parse(options) {\n // https://fetch.spec.whatwg.org/#methods\n let method = options.method.toUpperCase();\n // replace :varname with {varname} to make it RFC 6570 compatible\n let url = options.url.replace(/:([a-z]\\w+)/g, \"{+$1}\");\n let headers = Object.assign({}, options.headers);\n let body;\n let parameters = omit(options, [\n \"method\",\n \"baseUrl\",\n \"url\",\n \"headers\",\n \"request\",\n \"mediaType\"\n ]);\n // extract variable names from URL to calculate remaining variables later\n const urlVariableNames = extractUrlVariableNames(url);\n url = parseUrl(url).expand(parameters);\n if (!/^http/.test(url)) {\n url = options.baseUrl + url;\n }\n const omittedParameters = Object.keys(options)\n .filter(option => urlVariableNames.includes(option))\n .concat(\"baseUrl\");\n const remainingParameters = omit(parameters, omittedParameters);\n const isBinaryRequset = /application\\/octet-stream/i.test(headers.accept);\n if (!isBinaryRequset) {\n if (options.mediaType.format) {\n // e.g. application/vnd.github.v3+json => application/vnd.github.v3.raw\n headers.accept = headers.accept\n .split(/,/)\n .map(preview => preview.replace(/application\\/vnd(\\.\\w+)(\\.v3)?(\\.\\w+)?(\\+json)?$/, `application/vnd$1$2.${options.mediaType.format}`))\n .join(\",\");\n }\n if (options.mediaType.previews.length) {\n const previewsFromAcceptHeader = headers.accept.match(/[\\w-]+(?=-preview)/g) || [];\n headers.accept = previewsFromAcceptHeader\n .concat(options.mediaType.previews)\n .map(preview => {\n const format = options.mediaType.format\n ? `.${options.mediaType.format}`\n : \"+json\";\n return `application/vnd.github.${preview}-preview${format}`;\n })\n .join(\",\");\n }\n }\n // for GET/HEAD requests, set URL query parameters from remaining parameters\n // for PATCH/POST/PUT/DELETE requests, set request body from remaining parameters\n if ([\"GET\", \"HEAD\"].includes(method)) {\n url = addQueryParameters(url, remainingParameters);\n }\n else {\n if (\"data\" in remainingParameters) {\n body = remainingParameters.data;\n }\n else {\n if (Object.keys(remainingParameters).length) {\n body = remainingParameters;\n }\n else {\n headers[\"content-length\"] = 0;\n }\n }\n }\n // default content-type for JSON if body is set\n if (!headers[\"content-type\"] && typeof body !== \"undefined\") {\n headers[\"content-type\"] = \"application/json; charset=utf-8\";\n }\n // GitHub expects 'content-length: 0' header for PUT/PATCH requests without body.\n // fetch does not allow to set `content-length` header, but we can set body to an empty string\n if ([\"PATCH\", \"PUT\"].includes(method) && typeof body === \"undefined\") {\n body = \"\";\n }\n // Only return body/request keys if present\n return Object.assign({ method, url, headers }, typeof body !== \"undefined\" ? { body } : null, options.request ? { request: options.request } : null);\n}\n","import { merge } from \"./merge\";\nimport { parse } from \"./parse\";\nexport function endpointWithDefaults(defaults, route, options) {\n return parse(merge(defaults, route, options));\n}\n","import { endpointWithDefaults } from \"./endpoint-with-defaults\";\nimport { merge } from \"./merge\";\nimport { parse } from \"./parse\";\nexport function withDefaults(oldDefaults, newDefaults) {\n const DEFAULTS = merge(oldDefaults, newDefaults);\n const endpoint = endpointWithDefaults.bind(null, DEFAULTS);\n return Object.assign(endpoint, {\n DEFAULTS,\n defaults: withDefaults.bind(null, DEFAULTS),\n merge: merge.bind(null, DEFAULTS),\n parse\n });\n}\n","export const VERSION = \"0.0.0-development\";\n","import { getUserAgent } from \"universal-user-agent\";\nimport { VERSION } from \"./version\";\nconst userAgent = `octokit-endpoint.js/${VERSION} ${getUserAgent()}`;\nexport const DEFAULTS = {\n method: \"GET\",\n baseUrl: \"https://api.github.com\",\n headers: {\n accept: \"application/vnd.github.v3+json\",\n \"user-agent\": userAgent\n },\n mediaType: {\n format: \"\",\n previews: []\n }\n};\n","import { withDefaults } from \"./with-defaults\";\nimport { DEFAULTS } from \"./defaults\";\nexport const endpoint = withDefaults(null, DEFAULTS);\n"],"names":["lowercaseKeys","object","Object","keys","reduce","newObj","key","toLowerCase","mergeDeep","defaults","options","result","assign","forEach","isPlainObject","merge","route","method","url","split","headers","mergedOptions","mediaType","previews","length","filter","preview","includes","concat","map","replace","addQueryParameters","parameters","separator","test","names","name","q","encodeURIComponent","join","urlVariableRegex","removeNonChars","variableName","extractUrlVariableNames","matches","match","a","b","omit","keysToOmit","option","obj","encodeReserved","str","part","encodeURI","encodeUnreserved","c","charCodeAt","toString","toUpperCase","encodeValue","operator","value","isDefined","undefined","isKeyOperator","getValues","context","modifier","substring","parseInt","push","Array","isArray","k","tmp","parseUrl","template","expand","bind","operators","_","expression","literal","values","indexOf","charAt","substr","variable","exec","parse","body","urlVariableNames","baseUrl","omittedParameters","remainingParameters","isBinaryRequset","accept","format","previewsFromAcceptHeader","data","request","endpointWithDefaults","withDefaults","oldDefaults","newDefaults","DEFAULTS","endpoint","VERSION","userAgent","getUserAgent"],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/@octokit/endpoint/dist-src/defaults.js b/node_modules/@octokit/endpoint/dist-src/defaults.js
new file mode 100644
index 0000000..0266b49
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-src/defaults.js
@@ -0,0 +1,15 @@
+import { getUserAgent } from "universal-user-agent";
+import { VERSION } from "./version";
+const userAgent = `octokit-endpoint.js/${VERSION} ${getUserAgent()}`;
+export const DEFAULTS = {
+ method: "GET",
+ baseUrl: "https://api.github.com",
+ headers: {
+ accept: "application/vnd.github.v3+json",
+ "user-agent": userAgent
+ },
+ mediaType: {
+ format: "",
+ previews: []
+ }
+};
diff --git a/node_modules/@octokit/endpoint/dist-src/endpoint-with-defaults.js b/node_modules/@octokit/endpoint/dist-src/endpoint-with-defaults.js
new file mode 100644
index 0000000..5763758
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-src/endpoint-with-defaults.js
@@ -0,0 +1,5 @@
+import { merge } from "./merge";
+import { parse } from "./parse";
+export function endpointWithDefaults(defaults, route, options) {
+ return parse(merge(defaults, route, options));
+}
diff --git a/node_modules/@octokit/endpoint/dist-src/generated/routes.js b/node_modules/@octokit/endpoint/dist-src/generated/routes.js
new file mode 100644
index 0000000..e69de29
diff --git a/node_modules/@octokit/endpoint/dist-src/index.js b/node_modules/@octokit/endpoint/dist-src/index.js
new file mode 100644
index 0000000..599917f
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-src/index.js
@@ -0,0 +1,3 @@
+import { withDefaults } from "./with-defaults";
+import { DEFAULTS } from "./defaults";
+export const endpoint = withDefaults(null, DEFAULTS);
diff --git a/node_modules/@octokit/endpoint/dist-src/merge.js b/node_modules/@octokit/endpoint/dist-src/merge.js
new file mode 100644
index 0000000..91ed1ae
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-src/merge.js
@@ -0,0 +1,22 @@
+import { lowercaseKeys } from "./util/lowercase-keys";
+import { mergeDeep } from "./util/merge-deep";
+export function merge(defaults, route, options) {
+ if (typeof route === "string") {
+ let [method, url] = route.split(" ");
+ options = Object.assign(url ? { method, url } : { url: method }, options);
+ }
+ else {
+ options = route || {};
+ }
+ // lowercase header names before merging with defaults to avoid duplicates
+ options.headers = lowercaseKeys(options.headers);
+ const mergedOptions = mergeDeep(defaults || {}, options);
+ // mediaType.previews arrays are merged, instead of overwritten
+ if (defaults && defaults.mediaType.previews.length) {
+ mergedOptions.mediaType.previews = defaults.mediaType.previews
+ .filter(preview => !mergedOptions.mediaType.previews.includes(preview))
+ .concat(mergedOptions.mediaType.previews);
+ }
+ mergedOptions.mediaType.previews = mergedOptions.mediaType.previews.map((preview) => preview.replace(/-preview/, ""));
+ return mergedOptions;
+}
diff --git a/node_modules/@octokit/endpoint/dist-src/parse.js b/node_modules/@octokit/endpoint/dist-src/parse.js
new file mode 100644
index 0000000..8cf649f
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-src/parse.js
@@ -0,0 +1,81 @@
+import { addQueryParameters } from "./util/add-query-parameters";
+import { extractUrlVariableNames } from "./util/extract-url-variable-names";
+import { omit } from "./util/omit";
+import { parseUrl } from "./util/url-template";
+export function parse(options) {
+ // https://fetch.spec.whatwg.org/#methods
+ let method = options.method.toUpperCase();
+ // replace :varname with {varname} to make it RFC 6570 compatible
+ let url = options.url.replace(/:([a-z]\w+)/g, "{+$1}");
+ let headers = Object.assign({}, options.headers);
+ let body;
+ let parameters = omit(options, [
+ "method",
+ "baseUrl",
+ "url",
+ "headers",
+ "request",
+ "mediaType"
+ ]);
+ // extract variable names from URL to calculate remaining variables later
+ const urlVariableNames = extractUrlVariableNames(url);
+ url = parseUrl(url).expand(parameters);
+ if (!/^http/.test(url)) {
+ url = options.baseUrl + url;
+ }
+ const omittedParameters = Object.keys(options)
+ .filter(option => urlVariableNames.includes(option))
+ .concat("baseUrl");
+ const remainingParameters = omit(parameters, omittedParameters);
+ const isBinaryRequset = /application\/octet-stream/i.test(headers.accept);
+ if (!isBinaryRequset) {
+ if (options.mediaType.format) {
+ // e.g. application/vnd.github.v3+json => application/vnd.github.v3.raw
+ headers.accept = headers.accept
+ .split(/,/)
+ .map(preview => preview.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/, `application/vnd$1$2.${options.mediaType.format}`))
+ .join(",");
+ }
+ if (options.mediaType.previews.length) {
+ const previewsFromAcceptHeader = headers.accept.match(/[\w-]+(?=-preview)/g) || [];
+ headers.accept = previewsFromAcceptHeader
+ .concat(options.mediaType.previews)
+ .map(preview => {
+ const format = options.mediaType.format
+ ? `.${options.mediaType.format}`
+ : "+json";
+ return `application/vnd.github.${preview}-preview${format}`;
+ })
+ .join(",");
+ }
+ }
+ // for GET/HEAD requests, set URL query parameters from remaining parameters
+ // for PATCH/POST/PUT/DELETE requests, set request body from remaining parameters
+ if (["GET", "HEAD"].includes(method)) {
+ url = addQueryParameters(url, remainingParameters);
+ }
+ else {
+ if ("data" in remainingParameters) {
+ body = remainingParameters.data;
+ }
+ else {
+ if (Object.keys(remainingParameters).length) {
+ body = remainingParameters;
+ }
+ else {
+ headers["content-length"] = 0;
+ }
+ }
+ }
+ // default content-type for JSON if body is set
+ if (!headers["content-type"] && typeof body !== "undefined") {
+ headers["content-type"] = "application/json; charset=utf-8";
+ }
+ // GitHub expects 'content-length: 0' header for PUT/PATCH requests without body.
+ // fetch does not allow to set `content-length` header, but we can set body to an empty string
+ if (["PATCH", "PUT"].includes(method) && typeof body === "undefined") {
+ body = "";
+ }
+ // Only return body/request keys if present
+ return Object.assign({ method, url, headers }, typeof body !== "undefined" ? { body } : null, options.request ? { request: options.request } : null);
+}
diff --git a/node_modules/@octokit/endpoint/dist-src/types.js b/node_modules/@octokit/endpoint/dist-src/types.js
new file mode 100644
index 0000000..e69de29
diff --git a/node_modules/@octokit/endpoint/dist-src/util/add-query-parameters.js b/node_modules/@octokit/endpoint/dist-src/util/add-query-parameters.js
new file mode 100644
index 0000000..a78812f
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-src/util/add-query-parameters.js
@@ -0,0 +1,21 @@
+export function addQueryParameters(url, parameters) {
+ const separator = /\?/.test(url) ? "&" : "?";
+ const names = Object.keys(parameters);
+ if (names.length === 0) {
+ return url;
+ }
+ return (url +
+ separator +
+ names
+ .map(name => {
+ if (name === "q") {
+ return ("q=" +
+ parameters
+ .q.split("+")
+ .map(encodeURIComponent)
+ .join("+"));
+ }
+ return `${name}=${encodeURIComponent(parameters[name])}`;
+ })
+ .join("&"));
+}
diff --git a/node_modules/@octokit/endpoint/dist-src/util/extract-url-variable-names.js b/node_modules/@octokit/endpoint/dist-src/util/extract-url-variable-names.js
new file mode 100644
index 0000000..3e75db2
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-src/util/extract-url-variable-names.js
@@ -0,0 +1,11 @@
+const urlVariableRegex = /\{[^}]+\}/g;
+function removeNonChars(variableName) {
+ return variableName.replace(/^\W+|\W+$/g, "").split(/,/);
+}
+export function extractUrlVariableNames(url) {
+ const matches = url.match(urlVariableRegex);
+ if (!matches) {
+ return [];
+ }
+ return matches.map(removeNonChars).reduce((a, b) => a.concat(b), []);
+}
diff --git a/node_modules/@octokit/endpoint/dist-src/util/lowercase-keys.js b/node_modules/@octokit/endpoint/dist-src/util/lowercase-keys.js
new file mode 100644
index 0000000..0780642
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-src/util/lowercase-keys.js
@@ -0,0 +1,9 @@
+export function lowercaseKeys(object) {
+ if (!object) {
+ return {};
+ }
+ return Object.keys(object).reduce((newObj, key) => {
+ newObj[key.toLowerCase()] = object[key];
+ return newObj;
+ }, {});
+}
diff --git a/node_modules/@octokit/endpoint/dist-src/util/merge-deep.js b/node_modules/@octokit/endpoint/dist-src/util/merge-deep.js
new file mode 100644
index 0000000..d1c5402
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-src/util/merge-deep.js
@@ -0,0 +1,16 @@
+import isPlainObject from "is-plain-object";
+export function mergeDeep(defaults, options) {
+ const result = Object.assign({}, defaults);
+ Object.keys(options).forEach(key => {
+ if (isPlainObject(options[key])) {
+ if (!(key in defaults))
+ Object.assign(result, { [key]: options[key] });
+ else
+ result[key] = mergeDeep(defaults[key], options[key]);
+ }
+ else {
+ Object.assign(result, { [key]: options[key] });
+ }
+ });
+ return result;
+}
diff --git a/node_modules/@octokit/endpoint/dist-src/util/omit.js b/node_modules/@octokit/endpoint/dist-src/util/omit.js
new file mode 100644
index 0000000..7e1aa6b
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-src/util/omit.js
@@ -0,0 +1,8 @@
+export function omit(object, keysToOmit) {
+ return Object.keys(object)
+ .filter(option => !keysToOmit.includes(option))
+ .reduce((obj, key) => {
+ obj[key] = object[key];
+ return obj;
+ }, {});
+}
diff --git a/node_modules/@octokit/endpoint/dist-src/util/url-template.js b/node_modules/@octokit/endpoint/dist-src/util/url-template.js
new file mode 100644
index 0000000..f6d9885
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-src/util/url-template.js
@@ -0,0 +1,170 @@
+// Based on https://github.com/bramstein/url-template, licensed under BSD
+// TODO: create separate package.
+//
+// Copyright (c) 2012-2014, Bram Stein
+// All rights reserved.
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions
+// are met:
+// 1. Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// 2. Redistributions in binary form must reproduce the above copyright
+// notice, this list of conditions and the following disclaimer in the
+// documentation and/or other materials provided with the distribution.
+// 3. The name of the author may not be used to endorse or promote products
+// derived from this software without specific prior written permission.
+// THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+// EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+// EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+/* istanbul ignore file */
+function encodeReserved(str) {
+ return str
+ .split(/(%[0-9A-Fa-f]{2})/g)
+ .map(function (part) {
+ if (!/%[0-9A-Fa-f]/.test(part)) {
+ part = encodeURI(part)
+ .replace(/%5B/g, "[")
+ .replace(/%5D/g, "]");
+ }
+ return part;
+ })
+ .join("");
+}
+function encodeUnreserved(str) {
+ return encodeURIComponent(str).replace(/[!'()*]/g, function (c) {
+ return ("%" +
+ c
+ .charCodeAt(0)
+ .toString(16)
+ .toUpperCase());
+ });
+}
+function encodeValue(operator, value, key) {
+ value =
+ operator === "+" || operator === "#"
+ ? encodeReserved(value)
+ : encodeUnreserved(value);
+ if (key) {
+ return encodeUnreserved(key) + "=" + value;
+ }
+ else {
+ return value;
+ }
+}
+function isDefined(value) {
+ return value !== undefined && value !== null;
+}
+function isKeyOperator(operator) {
+ return operator === ";" || operator === "&" || operator === "?";
+}
+function getValues(context, operator, key, modifier) {
+ var value = context[key], result = [];
+ if (isDefined(value) && value !== "") {
+ if (typeof value === "string" ||
+ typeof value === "number" ||
+ typeof value === "boolean") {
+ value = value.toString();
+ if (modifier && modifier !== "*") {
+ value = value.substring(0, parseInt(modifier, 10));
+ }
+ result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : ""));
+ }
+ else {
+ if (modifier === "*") {
+ if (Array.isArray(value)) {
+ value.filter(isDefined).forEach(function (value) {
+ result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : ""));
+ });
+ }
+ else {
+ Object.keys(value).forEach(function (k) {
+ if (isDefined(value[k])) {
+ result.push(encodeValue(operator, value[k], k));
+ }
+ });
+ }
+ }
+ else {
+ const tmp = [];
+ if (Array.isArray(value)) {
+ value.filter(isDefined).forEach(function (value) {
+ tmp.push(encodeValue(operator, value));
+ });
+ }
+ else {
+ Object.keys(value).forEach(function (k) {
+ if (isDefined(value[k])) {
+ tmp.push(encodeUnreserved(k));
+ tmp.push(encodeValue(operator, value[k].toString()));
+ }
+ });
+ }
+ if (isKeyOperator(operator)) {
+ result.push(encodeUnreserved(key) + "=" + tmp.join(","));
+ }
+ else if (tmp.length !== 0) {
+ result.push(tmp.join(","));
+ }
+ }
+ }
+ }
+ else {
+ if (operator === ";") {
+ if (isDefined(value)) {
+ result.push(encodeUnreserved(key));
+ }
+ }
+ else if (value === "" && (operator === "&" || operator === "?")) {
+ result.push(encodeUnreserved(key) + "=");
+ }
+ else if (value === "") {
+ result.push("");
+ }
+ }
+ return result;
+}
+export function parseUrl(template) {
+ return {
+ expand: expand.bind(null, template)
+ };
+}
+function expand(template, context) {
+ var operators = ["+", "#", ".", "/", ";", "?", "&"];
+ return template.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g, function (_, expression, literal) {
+ if (expression) {
+ let operator = "";
+ const values = [];
+ if (operators.indexOf(expression.charAt(0)) !== -1) {
+ operator = expression.charAt(0);
+ expression = expression.substr(1);
+ }
+ expression.split(/,/g).forEach(function (variable) {
+ var tmp = /([^:\*]*)(?::(\d+)|(\*))?/.exec(variable);
+ values.push(getValues(context, operator, tmp[1], tmp[2] || tmp[3]));
+ });
+ if (operator && operator !== "+") {
+ var separator = ",";
+ if (operator === "?") {
+ separator = "&";
+ }
+ else if (operator !== "#") {
+ separator = operator;
+ }
+ return (values.length !== 0 ? operator : "") + values.join(separator);
+ }
+ else {
+ return values.join(",");
+ }
+ }
+ else {
+ return encodeReserved(literal);
+ }
+ });
+}
diff --git a/node_modules/@octokit/endpoint/dist-src/version.js b/node_modules/@octokit/endpoint/dist-src/version.js
new file mode 100644
index 0000000..86383b1
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-src/version.js
@@ -0,0 +1 @@
+export const VERSION = "0.0.0-development";
diff --git a/node_modules/@octokit/endpoint/dist-src/with-defaults.js b/node_modules/@octokit/endpoint/dist-src/with-defaults.js
new file mode 100644
index 0000000..9a1c886
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-src/with-defaults.js
@@ -0,0 +1,13 @@
+import { endpointWithDefaults } from "./endpoint-with-defaults";
+import { merge } from "./merge";
+import { parse } from "./parse";
+export function withDefaults(oldDefaults, newDefaults) {
+ const DEFAULTS = merge(oldDefaults, newDefaults);
+ const endpoint = endpointWithDefaults.bind(null, DEFAULTS);
+ return Object.assign(endpoint, {
+ DEFAULTS,
+ defaults: withDefaults.bind(null, DEFAULTS),
+ merge: merge.bind(null, DEFAULTS),
+ parse
+ });
+}
diff --git a/node_modules/@octokit/endpoint/dist-types/defaults.d.ts b/node_modules/@octokit/endpoint/dist-types/defaults.d.ts
new file mode 100644
index 0000000..7984bd2
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-types/defaults.d.ts
@@ -0,0 +1,2 @@
+import { Defaults } from "./types";
+export declare const DEFAULTS: Defaults;
diff --git a/node_modules/@octokit/endpoint/dist-types/endpoint-with-defaults.d.ts b/node_modules/@octokit/endpoint/dist-types/endpoint-with-defaults.d.ts
new file mode 100644
index 0000000..406b4cc
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-types/endpoint-with-defaults.d.ts
@@ -0,0 +1,2 @@
+import { Defaults, Endpoint, RequestOptions, Route, Parameters } from "./types";
+export declare function endpointWithDefaults(defaults: Defaults, route: Route | Endpoint, options?: Parameters): RequestOptions;
diff --git a/node_modules/@octokit/endpoint/dist-types/generated/routes.d.ts b/node_modules/@octokit/endpoint/dist-types/generated/routes.d.ts
new file mode 100644
index 0000000..dbbd82d
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-types/generated/routes.d.ts
@@ -0,0 +1,6745 @@
+import { Url, Headers, EndpointRequestOptions } from "../types";
+export interface Routes {
+ "GET /events": [ActivityListPublicEventsEndpoint, ActivityListPublicEventsRequestOptions];
+ "GET /repos/:owner/:repo/events": [ActivityListRepoEventsEndpoint, ActivityListRepoEventsRequestOptions];
+ "GET /networks/:owner/:repo/events": [ActivityListPublicEventsForRepoNetworkEndpoint, ActivityListPublicEventsForRepoNetworkRequestOptions];
+ "GET /orgs/:org/events": [ActivityListPublicEventsForOrgEndpoint, ActivityListPublicEventsForOrgRequestOptions];
+ "GET /users/:username/received_events": [ActivityListReceivedEventsForUserEndpoint, ActivityListReceivedEventsForUserRequestOptions];
+ "GET /users/:username/received_events/public": [ActivityListReceivedPublicEventsForUserEndpoint, ActivityListReceivedPublicEventsForUserRequestOptions];
+ "GET /users/:username/events": [ActivityListEventsForUserEndpoint, ActivityListEventsForUserRequestOptions];
+ "GET /users/:username/events/public": [ActivityListPublicEventsForUserEndpoint, ActivityListPublicEventsForUserRequestOptions];
+ "GET /users/:username/events/orgs/:org": [ActivityListEventsForOrgEndpoint, ActivityListEventsForOrgRequestOptions];
+ "GET /feeds": [ActivityListFeedsEndpoint, ActivityListFeedsRequestOptions];
+ "GET /notifications": [ActivityListNotificationsEndpoint, ActivityListNotificationsRequestOptions];
+ "GET /repos/:owner/:repo/notifications": [ActivityListNotificationsForRepoEndpoint, ActivityListNotificationsForRepoRequestOptions];
+ "PUT /notifications": [ActivityMarkAsReadEndpoint, ActivityMarkAsReadRequestOptions];
+ "PUT /repos/:owner/:repo/notifications": [ActivityMarkNotificationsAsReadForRepoEndpoint, ActivityMarkNotificationsAsReadForRepoRequestOptions];
+ "GET /notifications/threads/:thread_id": [ActivityGetThreadEndpoint, ActivityGetThreadRequestOptions];
+ "PATCH /notifications/threads/:thread_id": [ActivityMarkThreadAsReadEndpoint, ActivityMarkThreadAsReadRequestOptions];
+ "GET /notifications/threads/:thread_id/subscription": [ActivityGetThreadSubscriptionEndpoint, ActivityGetThreadSubscriptionRequestOptions];
+ "PUT /notifications/threads/:thread_id/subscription": [ActivitySetThreadSubscriptionEndpoint, ActivitySetThreadSubscriptionRequestOptions];
+ "DELETE /notifications/threads/:thread_id/subscription": [ActivityDeleteThreadSubscriptionEndpoint, ActivityDeleteThreadSubscriptionRequestOptions];
+ "GET /repos/:owner/:repo/stargazers": [ActivityListStargazersForRepoEndpoint, ActivityListStargazersForRepoRequestOptions];
+ "GET /users/:username/starred": [ActivityListReposStarredByUserEndpoint, ActivityListReposStarredByUserRequestOptions];
+ "GET /user/starred": [ActivityListReposStarredByAuthenticatedUserEndpoint, ActivityListReposStarredByAuthenticatedUserRequestOptions];
+ "GET /user/starred/:owner/:repo": [ActivityCheckStarringRepoEndpoint, ActivityCheckStarringRepoRequestOptions];
+ "PUT /user/starred/:owner/:repo": [ActivityStarRepoEndpoint, ActivityStarRepoRequestOptions];
+ "DELETE /user/starred/:owner/:repo": [ActivityUnstarRepoEndpoint, ActivityUnstarRepoRequestOptions];
+ "GET /repos/:owner/:repo/subscribers": [ActivityListWatchersForRepoEndpoint, ActivityListWatchersForRepoRequestOptions];
+ "GET /users/:username/subscriptions": [ActivityListReposWatchedByUserEndpoint, ActivityListReposWatchedByUserRequestOptions];
+ "GET /user/subscriptions": [ActivityListWatchedReposForAuthenticatedUserEndpoint, ActivityListWatchedReposForAuthenticatedUserRequestOptions];
+ "GET /repos/:owner/:repo/subscription": [ActivityGetRepoSubscriptionEndpoint, ActivityGetRepoSubscriptionRequestOptions];
+ "PUT /repos/:owner/:repo/subscription": [ActivitySetRepoSubscriptionEndpoint, ActivitySetRepoSubscriptionRequestOptions];
+ "DELETE /repos/:owner/:repo/subscription": [ActivityDeleteRepoSubscriptionEndpoint, ActivityDeleteRepoSubscriptionRequestOptions];
+ "GET /user/subscriptions/:owner/:repo": [ActivityCheckWatchingRepoLegacyEndpoint, ActivityCheckWatchingRepoLegacyRequestOptions];
+ "PUT /user/subscriptions/:owner/:repo": [ActivityWatchRepoLegacyEndpoint, ActivityWatchRepoLegacyRequestOptions];
+ "DELETE /user/subscriptions/:owner/:repo": [ActivityStopWatchingRepoLegacyEndpoint, ActivityStopWatchingRepoLegacyRequestOptions];
+ "GET /apps/:app_slug": [AppsGetBySlugEndpoint, AppsGetBySlugRequestOptions];
+ "GET /app": [AppsGetAuthenticatedEndpoint, AppsGetAuthenticatedRequestOptions];
+ "GET /app/installations": [AppsListInstallationsEndpoint, AppsListInstallationsRequestOptions];
+ "GET /app/installations/:installation_id": [AppsGetInstallationEndpoint, AppsGetInstallationRequestOptions];
+ "DELETE /app/installations/:installation_id": [AppsDeleteInstallationEndpoint, AppsDeleteInstallationRequestOptions];
+ "POST /app/installations/:installation_id/access_tokens": [AppsCreateInstallationTokenEndpoint, AppsCreateInstallationTokenRequestOptions];
+ "GET /orgs/:org/installation": [AppsGetOrgInstallationEndpoint | AppsFindOrgInstallationEndpoint, AppsGetOrgInstallationRequestOptions | AppsFindOrgInstallationRequestOptions];
+ "GET /repos/:owner/:repo/installation": [AppsGetRepoInstallationEndpoint | AppsFindRepoInstallationEndpoint, AppsGetRepoInstallationRequestOptions | AppsFindRepoInstallationRequestOptions];
+ "GET /users/:username/installation": [AppsGetUserInstallationEndpoint | AppsFindUserInstallationEndpoint, AppsGetUserInstallationRequestOptions | AppsFindUserInstallationRequestOptions];
+ "POST /app-manifests/:code/conversions": [AppsCreateFromManifestEndpoint, AppsCreateFromManifestRequestOptions];
+ "GET /installation/repositories": [AppsListReposEndpoint, AppsListReposRequestOptions];
+ "GET /user/installations": [AppsListInstallationsForAuthenticatedUserEndpoint, AppsListInstallationsForAuthenticatedUserRequestOptions];
+ "GET /user/installations/:installation_id/repositories": [AppsListInstallationReposForAuthenticatedUserEndpoint, AppsListInstallationReposForAuthenticatedUserRequestOptions];
+ "PUT /user/installations/:installation_id/repositories/:repository_id": [AppsAddRepoToInstallationEndpoint, AppsAddRepoToInstallationRequestOptions];
+ "DELETE /user/installations/:installation_id/repositories/:repository_id": [AppsRemoveRepoFromInstallationEndpoint, AppsRemoveRepoFromInstallationRequestOptions];
+ "POST /content_references/:content_reference_id/attachments": [AppsCreateContentAttachmentEndpoint, AppsCreateContentAttachmentRequestOptions];
+ "GET /marketplace_listing/plans": [AppsListPlansEndpoint, AppsListPlansRequestOptions];
+ "GET /marketplace_listing/stubbed/plans": [AppsListPlansStubbedEndpoint, AppsListPlansStubbedRequestOptions];
+ "GET /marketplace_listing/plans/:plan_id/accounts": [AppsListAccountsUserOrOrgOnPlanEndpoint, AppsListAccountsUserOrOrgOnPlanRequestOptions];
+ "GET /marketplace_listing/stubbed/plans/:plan_id/accounts": [AppsListAccountsUserOrOrgOnPlanStubbedEndpoint, AppsListAccountsUserOrOrgOnPlanStubbedRequestOptions];
+ "GET /marketplace_listing/accounts/:account_id": [AppsCheckAccountIsAssociatedWithAnyEndpoint, AppsCheckAccountIsAssociatedWithAnyRequestOptions];
+ "GET /marketplace_listing/stubbed/accounts/:account_id": [AppsCheckAccountIsAssociatedWithAnyStubbedEndpoint, AppsCheckAccountIsAssociatedWithAnyStubbedRequestOptions];
+ "GET /user/marketplace_purchases": [AppsListMarketplacePurchasesForAuthenticatedUserEndpoint, AppsListMarketplacePurchasesForAuthenticatedUserRequestOptions];
+ "GET /user/marketplace_purchases/stubbed": [AppsListMarketplacePurchasesForAuthenticatedUserStubbedEndpoint, AppsListMarketplacePurchasesForAuthenticatedUserStubbedRequestOptions];
+ "POST /repos/:owner/:repo/check-runs": [ChecksCreateEndpoint, ChecksCreateRequestOptions];
+ "PATCH /repos/:owner/:repo/check-runs/:check_run_id": [ChecksUpdateEndpoint, ChecksUpdateRequestOptions];
+ "GET /repos/:owner/:repo/commits/:ref/check-runs": [ChecksListForRefEndpoint, ChecksListForRefRequestOptions];
+ "GET /repos/:owner/:repo/check-suites/:check_suite_id/check-runs": [ChecksListForSuiteEndpoint, ChecksListForSuiteRequestOptions];
+ "GET /repos/:owner/:repo/check-runs/:check_run_id": [ChecksGetEndpoint, ChecksGetRequestOptions];
+ "GET /repos/:owner/:repo/check-runs/:check_run_id/annotations": [ChecksListAnnotationsEndpoint, ChecksListAnnotationsRequestOptions];
+ "GET /repos/:owner/:repo/check-suites/:check_suite_id": [ChecksGetSuiteEndpoint, ChecksGetSuiteRequestOptions];
+ "GET /repos/:owner/:repo/commits/:ref/check-suites": [ChecksListSuitesForRefEndpoint, ChecksListSuitesForRefRequestOptions];
+ "PATCH /repos/:owner/:repo/check-suites/preferences": [ChecksSetSuitesPreferencesEndpoint, ChecksSetSuitesPreferencesRequestOptions];
+ "POST /repos/:owner/:repo/check-suites": [ChecksCreateSuiteEndpoint, ChecksCreateSuiteRequestOptions];
+ "POST /repos/:owner/:repo/check-suites/:check_suite_id/rerequest": [ChecksRerequestSuiteEndpoint, ChecksRerequestSuiteRequestOptions];
+ "GET /codes_of_conduct": [CodesOfConductListConductCodesEndpoint, CodesOfConductListConductCodesRequestOptions];
+ "GET /codes_of_conduct/:key": [CodesOfConductGetConductCodeEndpoint, CodesOfConductGetConductCodeRequestOptions];
+ "GET /repos/:owner/:repo/community/code_of_conduct": [CodesOfConductGetForRepoEndpoint, CodesOfConductGetForRepoRequestOptions];
+ "GET /emojis": [EmojisGetEndpoint, EmojisGetRequestOptions];
+ "GET /users/:username/gists": [GistsListPublicForUserEndpoint, GistsListPublicForUserRequestOptions];
+ "GET /gists": [GistsListEndpoint, GistsListRequestOptions];
+ "GET /gists/public": [GistsListPublicEndpoint, GistsListPublicRequestOptions];
+ "GET /gists/starred": [GistsListStarredEndpoint, GistsListStarredRequestOptions];
+ "GET /gists/:gist_id": [GistsGetEndpoint, GistsGetRequestOptions];
+ "GET /gists/:gist_id/:sha": [GistsGetRevisionEndpoint, GistsGetRevisionRequestOptions];
+ "POST /gists": [GistsCreateEndpoint, GistsCreateRequestOptions];
+ "PATCH /gists/:gist_id": [GistsUpdateEndpoint, GistsUpdateRequestOptions];
+ "GET /gists/:gist_id/commits": [GistsListCommitsEndpoint, GistsListCommitsRequestOptions];
+ "PUT /gists/:gist_id/star": [GistsStarEndpoint, GistsStarRequestOptions];
+ "DELETE /gists/:gist_id/star": [GistsUnstarEndpoint, GistsUnstarRequestOptions];
+ "GET /gists/:gist_id/star": [GistsCheckIsStarredEndpoint, GistsCheckIsStarredRequestOptions];
+ "POST /gists/:gist_id/forks": [GistsForkEndpoint, GistsForkRequestOptions];
+ "GET /gists/:gist_id/forks": [GistsListForksEndpoint, GistsListForksRequestOptions];
+ "DELETE /gists/:gist_id": [GistsDeleteEndpoint, GistsDeleteRequestOptions];
+ "GET /gists/:gist_id/comments": [GistsListCommentsEndpoint, GistsListCommentsRequestOptions];
+ "GET /gists/:gist_id/comments/:comment_id": [GistsGetCommentEndpoint, GistsGetCommentRequestOptions];
+ "POST /gists/:gist_id/comments": [GistsCreateCommentEndpoint, GistsCreateCommentRequestOptions];
+ "PATCH /gists/:gist_id/comments/:comment_id": [GistsUpdateCommentEndpoint, GistsUpdateCommentRequestOptions];
+ "DELETE /gists/:gist_id/comments/:comment_id": [GistsDeleteCommentEndpoint, GistsDeleteCommentRequestOptions];
+ "GET /repos/:owner/:repo/git/blobs/:file_sha": [GitGetBlobEndpoint, GitGetBlobRequestOptions];
+ "POST /repos/:owner/:repo/git/blobs": [GitCreateBlobEndpoint, GitCreateBlobRequestOptions];
+ "GET /repos/:owner/:repo/git/commits/:commit_sha": [GitGetCommitEndpoint, GitGetCommitRequestOptions];
+ "POST /repos/:owner/:repo/git/commits": [GitCreateCommitEndpoint, GitCreateCommitRequestOptions];
+ "GET /repos/:owner/:repo/git/refs/:ref": [GitGetRefEndpoint, GitGetRefRequestOptions];
+ "GET /repos/:owner/:repo/git/refs/:namespace": [GitListRefsEndpoint, GitListRefsRequestOptions];
+ "POST /repos/:owner/:repo/git/refs": [GitCreateRefEndpoint, GitCreateRefRequestOptions];
+ "PATCH /repos/:owner/:repo/git/refs/:ref": [GitUpdateRefEndpoint, GitUpdateRefRequestOptions];
+ "DELETE /repos/:owner/:repo/git/refs/:ref": [GitDeleteRefEndpoint, GitDeleteRefRequestOptions];
+ "GET /repos/:owner/:repo/git/tags/:tag_sha": [GitGetTagEndpoint, GitGetTagRequestOptions];
+ "POST /repos/:owner/:repo/git/tags": [GitCreateTagEndpoint, GitCreateTagRequestOptions];
+ "GET /repos/:owner/:repo/git/trees/:tree_sha": [GitGetTreeEndpoint, GitGetTreeRequestOptions];
+ "POST /repos/:owner/:repo/git/trees": [GitCreateTreeEndpoint, GitCreateTreeRequestOptions];
+ "GET /gitignore/templates": [GitignoreListTemplatesEndpoint, GitignoreListTemplatesRequestOptions];
+ "GET /gitignore/templates/:name": [GitignoreGetTemplateEndpoint, GitignoreGetTemplateRequestOptions];
+ "GET /orgs/:org/interaction-limits": [InteractionsGetRestrictionsForOrgEndpoint, InteractionsGetRestrictionsForOrgRequestOptions];
+ "PUT /orgs/:org/interaction-limits": [InteractionsAddOrUpdateRestrictionsForOrgEndpoint, InteractionsAddOrUpdateRestrictionsForOrgRequestOptions];
+ "DELETE /orgs/:org/interaction-limits": [InteractionsRemoveRestrictionsForOrgEndpoint, InteractionsRemoveRestrictionsForOrgRequestOptions];
+ "GET /repos/:owner/:repo/interaction-limits": [InteractionsGetRestrictionsForRepoEndpoint, InteractionsGetRestrictionsForRepoRequestOptions];
+ "PUT /repos/:owner/:repo/interaction-limits": [InteractionsAddOrUpdateRestrictionsForRepoEndpoint, InteractionsAddOrUpdateRestrictionsForRepoRequestOptions];
+ "DELETE /repos/:owner/:repo/interaction-limits": [InteractionsRemoveRestrictionsForRepoEndpoint, InteractionsRemoveRestrictionsForRepoRequestOptions];
+ "GET /issues": [IssuesListEndpoint, IssuesListRequestOptions];
+ "GET /user/issues": [IssuesListForAuthenticatedUserEndpoint, IssuesListForAuthenticatedUserRequestOptions];
+ "GET /orgs/:org/issues": [IssuesListForOrgEndpoint, IssuesListForOrgRequestOptions];
+ "GET /repos/:owner/:repo/issues": [IssuesListForRepoEndpoint, IssuesListForRepoRequestOptions];
+ "GET /repos/:owner/:repo/issues/:issue_number": [IssuesGetEndpoint, IssuesGetRequestOptions];
+ "POST /repos/:owner/:repo/issues": [IssuesCreateEndpoint, IssuesCreateRequestOptions];
+ "PATCH /repos/:owner/:repo/issues/:issue_number": [IssuesUpdateEndpoint, IssuesUpdateRequestOptions];
+ "PUT /repos/:owner/:repo/issues/:issue_number/lock": [IssuesLockEndpoint, IssuesLockRequestOptions];
+ "DELETE /repos/:owner/:repo/issues/:issue_number/lock": [IssuesUnlockEndpoint, IssuesUnlockRequestOptions];
+ "GET /repos/:owner/:repo/assignees": [IssuesListAssigneesEndpoint, IssuesListAssigneesRequestOptions];
+ "GET /repos/:owner/:repo/assignees/:assignee": [IssuesCheckAssigneeEndpoint, IssuesCheckAssigneeRequestOptions];
+ "POST /repos/:owner/:repo/issues/:issue_number/assignees": [IssuesAddAssigneesEndpoint, IssuesAddAssigneesRequestOptions];
+ "DELETE /repos/:owner/:repo/issues/:issue_number/assignees": [IssuesRemoveAssigneesEndpoint, IssuesRemoveAssigneesRequestOptions];
+ "GET /repos/:owner/:repo/issues/:issue_number/comments": [IssuesListCommentsEndpoint, IssuesListCommentsRequestOptions];
+ "GET /repos/:owner/:repo/issues/comments": [IssuesListCommentsForRepoEndpoint, IssuesListCommentsForRepoRequestOptions];
+ "GET /repos/:owner/:repo/issues/comments/:comment_id": [IssuesGetCommentEndpoint, IssuesGetCommentRequestOptions];
+ "POST /repos/:owner/:repo/issues/:issue_number/comments": [IssuesCreateCommentEndpoint, IssuesCreateCommentRequestOptions];
+ "PATCH /repos/:owner/:repo/issues/comments/:comment_id": [IssuesUpdateCommentEndpoint, IssuesUpdateCommentRequestOptions];
+ "DELETE /repos/:owner/:repo/issues/comments/:comment_id": [IssuesDeleteCommentEndpoint, IssuesDeleteCommentRequestOptions];
+ "GET /repos/:owner/:repo/issues/:issue_number/events": [IssuesListEventsEndpoint, IssuesListEventsRequestOptions];
+ "GET /repos/:owner/:repo/issues/events": [IssuesListEventsForRepoEndpoint, IssuesListEventsForRepoRequestOptions];
+ "GET /repos/:owner/:repo/issues/events/:event_id": [IssuesGetEventEndpoint, IssuesGetEventRequestOptions];
+ "GET /repos/:owner/:repo/labels": [IssuesListLabelsForRepoEndpoint, IssuesListLabelsForRepoRequestOptions];
+ "GET /repos/:owner/:repo/labels/:name": [IssuesGetLabelEndpoint, IssuesGetLabelRequestOptions];
+ "POST /repos/:owner/:repo/labels": [IssuesCreateLabelEndpoint, IssuesCreateLabelRequestOptions];
+ "PATCH /repos/:owner/:repo/labels/:current_name": [IssuesUpdateLabelEndpoint, IssuesUpdateLabelRequestOptions];
+ "DELETE /repos/:owner/:repo/labels/:name": [IssuesDeleteLabelEndpoint, IssuesDeleteLabelRequestOptions];
+ "GET /repos/:owner/:repo/issues/:issue_number/labels": [IssuesListLabelsOnIssueEndpoint, IssuesListLabelsOnIssueRequestOptions];
+ "POST /repos/:owner/:repo/issues/:issue_number/labels": [IssuesAddLabelsEndpoint, IssuesAddLabelsRequestOptions];
+ "DELETE /repos/:owner/:repo/issues/:issue_number/labels/:name": [IssuesRemoveLabelEndpoint, IssuesRemoveLabelRequestOptions];
+ "PUT /repos/:owner/:repo/issues/:issue_number/labels": [IssuesReplaceLabelsEndpoint, IssuesReplaceLabelsRequestOptions];
+ "DELETE /repos/:owner/:repo/issues/:issue_number/labels": [IssuesRemoveLabelsEndpoint, IssuesRemoveLabelsRequestOptions];
+ "GET /repos/:owner/:repo/milestones/:milestone_number/labels": [IssuesListLabelsForMilestoneEndpoint, IssuesListLabelsForMilestoneRequestOptions];
+ "GET /repos/:owner/:repo/milestones": [IssuesListMilestonesForRepoEndpoint, IssuesListMilestonesForRepoRequestOptions];
+ "GET /repos/:owner/:repo/milestones/:milestone_number": [IssuesGetMilestoneEndpoint, IssuesGetMilestoneRequestOptions];
+ "POST /repos/:owner/:repo/milestones": [IssuesCreateMilestoneEndpoint, IssuesCreateMilestoneRequestOptions];
+ "PATCH /repos/:owner/:repo/milestones/:milestone_number": [IssuesUpdateMilestoneEndpoint, IssuesUpdateMilestoneRequestOptions];
+ "DELETE /repos/:owner/:repo/milestones/:milestone_number": [IssuesDeleteMilestoneEndpoint, IssuesDeleteMilestoneRequestOptions];
+ "GET /repos/:owner/:repo/issues/:issue_number/timeline": [IssuesListEventsForTimelineEndpoint, IssuesListEventsForTimelineRequestOptions];
+ "GET /licenses": [LicensesListCommonlyUsedEndpoint | LicensesListEndpoint, LicensesListCommonlyUsedRequestOptions | LicensesListRequestOptions];
+ "GET /licenses/:license": [LicensesGetEndpoint, LicensesGetRequestOptions];
+ "GET /repos/:owner/:repo/license": [LicensesGetForRepoEndpoint, LicensesGetForRepoRequestOptions];
+ "POST /markdown": [MarkdownRenderEndpoint, MarkdownRenderRequestOptions];
+ "POST /markdown/raw": [MarkdownRenderRawEndpoint, MarkdownRenderRawRequestOptions];
+ "GET /meta": [MetaGetEndpoint, MetaGetRequestOptions];
+ "POST /orgs/:org/migrations": [MigrationsStartForOrgEndpoint, MigrationsStartForOrgRequestOptions];
+ "GET /orgs/:org/migrations": [MigrationsListForOrgEndpoint, MigrationsListForOrgRequestOptions];
+ "GET /orgs/:org/migrations/:migration_id": [MigrationsGetStatusForOrgEndpoint, MigrationsGetStatusForOrgRequestOptions];
+ "GET /orgs/:org/migrations/:migration_id/archive": [MigrationsGetArchiveForOrgEndpoint, MigrationsGetArchiveForOrgRequestOptions];
+ "DELETE /orgs/:org/migrations/:migration_id/archive": [MigrationsDeleteArchiveForOrgEndpoint, MigrationsDeleteArchiveForOrgRequestOptions];
+ "DELETE /orgs/:org/migrations/:migration_id/repos/:repo_name/lock": [MigrationsUnlockRepoForOrgEndpoint, MigrationsUnlockRepoForOrgRequestOptions];
+ "PUT /repos/:owner/:repo/import": [MigrationsStartImportEndpoint, MigrationsStartImportRequestOptions];
+ "GET /repos/:owner/:repo/import": [MigrationsGetImportProgressEndpoint, MigrationsGetImportProgressRequestOptions];
+ "PATCH /repos/:owner/:repo/import": [MigrationsUpdateImportEndpoint, MigrationsUpdateImportRequestOptions];
+ "GET /repos/:owner/:repo/import/authors": [MigrationsGetCommitAuthorsEndpoint, MigrationsGetCommitAuthorsRequestOptions];
+ "PATCH /repos/:owner/:repo/import/authors/:author_id": [MigrationsMapCommitAuthorEndpoint, MigrationsMapCommitAuthorRequestOptions];
+ "PATCH /repos/:owner/:repo/import/lfs": [MigrationsSetLfsPreferenceEndpoint, MigrationsSetLfsPreferenceRequestOptions];
+ "GET /repos/:owner/:repo/import/large_files": [MigrationsGetLargeFilesEndpoint, MigrationsGetLargeFilesRequestOptions];
+ "DELETE /repos/:owner/:repo/import": [MigrationsCancelImportEndpoint, MigrationsCancelImportRequestOptions];
+ "POST /user/migrations": [MigrationsStartForAuthenticatedUserEndpoint, MigrationsStartForAuthenticatedUserRequestOptions];
+ "GET /user/migrations": [MigrationsListForAuthenticatedUserEndpoint, MigrationsListForAuthenticatedUserRequestOptions];
+ "GET /user/migrations/:migration_id": [MigrationsGetStatusForAuthenticatedUserEndpoint, MigrationsGetStatusForAuthenticatedUserRequestOptions];
+ "GET /user/migrations/:migration_id/archive": [MigrationsGetArchiveForAuthenticatedUserEndpoint, MigrationsGetArchiveForAuthenticatedUserRequestOptions];
+ "DELETE /user/migrations/:migration_id/archive": [MigrationsDeleteArchiveForAuthenticatedUserEndpoint, MigrationsDeleteArchiveForAuthenticatedUserRequestOptions];
+ "DELETE /user/migrations/:migration_id/repos/:repo_name/lock": [MigrationsUnlockRepoForAuthenticatedUserEndpoint, MigrationsUnlockRepoForAuthenticatedUserRequestOptions];
+ "GET /applications/grants": [OauthAuthorizationsListGrantsEndpoint, OauthAuthorizationsListGrantsRequestOptions];
+ "GET /applications/grants/:grant_id": [OauthAuthorizationsGetGrantEndpoint, OauthAuthorizationsGetGrantRequestOptions];
+ "DELETE /applications/grants/:grant_id": [OauthAuthorizationsDeleteGrantEndpoint, OauthAuthorizationsDeleteGrantRequestOptions];
+ "GET /authorizations": [OauthAuthorizationsListAuthorizationsEndpoint, OauthAuthorizationsListAuthorizationsRequestOptions];
+ "GET /authorizations/:authorization_id": [OauthAuthorizationsGetAuthorizationEndpoint, OauthAuthorizationsGetAuthorizationRequestOptions];
+ "POST /authorizations": [OauthAuthorizationsCreateAuthorizationEndpoint, OauthAuthorizationsCreateAuthorizationRequestOptions];
+ "PUT /authorizations/clients/:client_id": [OauthAuthorizationsGetOrCreateAuthorizationForAppEndpoint, OauthAuthorizationsGetOrCreateAuthorizationForAppRequestOptions];
+ "PUT /authorizations/clients/:client_id/:fingerprint": [OauthAuthorizationsGetOrCreateAuthorizationForAppAndFingerprintEndpoint | OauthAuthorizationsGetOrCreateAuthorizationForAppFingerprintEndpoint, OauthAuthorizationsGetOrCreateAuthorizationForAppAndFingerprintRequestOptions | OauthAuthorizationsGetOrCreateAuthorizationForAppFingerprintRequestOptions];
+ "PATCH /authorizations/:authorization_id": [OauthAuthorizationsUpdateAuthorizationEndpoint, OauthAuthorizationsUpdateAuthorizationRequestOptions];
+ "DELETE /authorizations/:authorization_id": [OauthAuthorizationsDeleteAuthorizationEndpoint, OauthAuthorizationsDeleteAuthorizationRequestOptions];
+ "GET /applications/:client_id/tokens/:access_token": [OauthAuthorizationsCheckAuthorizationEndpoint, OauthAuthorizationsCheckAuthorizationRequestOptions];
+ "POST /applications/:client_id/tokens/:access_token": [OauthAuthorizationsResetAuthorizationEndpoint, OauthAuthorizationsResetAuthorizationRequestOptions];
+ "DELETE /applications/:client_id/tokens/:access_token": [OauthAuthorizationsRevokeAuthorizationForApplicationEndpoint, OauthAuthorizationsRevokeAuthorizationForApplicationRequestOptions];
+ "DELETE /applications/:client_id/grants/:access_token": [OauthAuthorizationsRevokeGrantForApplicationEndpoint, OauthAuthorizationsRevokeGrantForApplicationRequestOptions];
+ "GET /user/orgs": [OrgsListForAuthenticatedUserEndpoint, OrgsListForAuthenticatedUserRequestOptions];
+ "GET /organizations": [OrgsListEndpoint, OrgsListRequestOptions];
+ "GET /users/:username/orgs": [OrgsListForUserEndpoint, OrgsListForUserRequestOptions];
+ "GET /orgs/:org": [OrgsGetEndpoint, OrgsGetRequestOptions];
+ "PATCH /orgs/:org": [OrgsUpdateEndpoint, OrgsUpdateRequestOptions];
+ "GET /orgs/:org/credential-authorizations": [OrgsListCredentialAuthorizationsEndpoint, OrgsListCredentialAuthorizationsRequestOptions];
+ "DELETE /orgs/:org/credential-authorizations/:credential_id": [OrgsRemoveCredentialAuthorizationEndpoint, OrgsRemoveCredentialAuthorizationRequestOptions];
+ "GET /orgs/:org/blocks": [OrgsListBlockedUsersEndpoint, OrgsListBlockedUsersRequestOptions];
+ "GET /orgs/:org/blocks/:username": [OrgsCheckBlockedUserEndpoint, OrgsCheckBlockedUserRequestOptions];
+ "PUT /orgs/:org/blocks/:username": [OrgsBlockUserEndpoint, OrgsBlockUserRequestOptions];
+ "DELETE /orgs/:org/blocks/:username": [OrgsUnblockUserEndpoint, OrgsUnblockUserRequestOptions];
+ "GET /orgs/:org/hooks": [OrgsListHooksEndpoint, OrgsListHooksRequestOptions];
+ "GET /orgs/:org/hooks/:hook_id": [OrgsGetHookEndpoint, OrgsGetHookRequestOptions];
+ "POST /orgs/:org/hooks": [OrgsCreateHookEndpoint, OrgsCreateHookRequestOptions];
+ "PATCH /orgs/:org/hooks/:hook_id": [OrgsUpdateHookEndpoint, OrgsUpdateHookRequestOptions];
+ "POST /orgs/:org/hooks/:hook_id/pings": [OrgsPingHookEndpoint, OrgsPingHookRequestOptions];
+ "DELETE /orgs/:org/hooks/:hook_id": [OrgsDeleteHookEndpoint, OrgsDeleteHookRequestOptions];
+ "GET /orgs/:org/members": [OrgsListMembersEndpoint, OrgsListMembersRequestOptions];
+ "GET /orgs/:org/members/:username": [OrgsCheckMembershipEndpoint, OrgsCheckMembershipRequestOptions];
+ "DELETE /orgs/:org/members/:username": [OrgsRemoveMemberEndpoint, OrgsRemoveMemberRequestOptions];
+ "GET /orgs/:org/public_members": [OrgsListPublicMembersEndpoint, OrgsListPublicMembersRequestOptions];
+ "GET /orgs/:org/public_members/:username": [OrgsCheckPublicMembershipEndpoint, OrgsCheckPublicMembershipRequestOptions];
+ "PUT /orgs/:org/public_members/:username": [OrgsPublicizeMembershipEndpoint, OrgsPublicizeMembershipRequestOptions];
+ "DELETE /orgs/:org/public_members/:username": [OrgsConcealMembershipEndpoint, OrgsConcealMembershipRequestOptions];
+ "GET /orgs/:org/memberships/:username": [OrgsGetMembershipEndpoint, OrgsGetMembershipRequestOptions];
+ "PUT /orgs/:org/memberships/:username": [OrgsAddOrUpdateMembershipEndpoint, OrgsAddOrUpdateMembershipRequestOptions];
+ "DELETE /orgs/:org/memberships/:username": [OrgsRemoveMembershipEndpoint, OrgsRemoveMembershipRequestOptions];
+ "GET /orgs/:org/invitations/:invitation_id/teams": [OrgsListInvitationTeamsEndpoint, OrgsListInvitationTeamsRequestOptions];
+ "GET /orgs/:org/invitations": [OrgsListPendingInvitationsEndpoint, OrgsListPendingInvitationsRequestOptions];
+ "POST /orgs/:org/invitations": [OrgsCreateInvitationEndpoint, OrgsCreateInvitationRequestOptions];
+ "GET /user/memberships/orgs": [OrgsListMembershipsEndpoint, OrgsListMembershipsRequestOptions];
+ "GET /user/memberships/orgs/:org": [OrgsGetMembershipForAuthenticatedUserEndpoint, OrgsGetMembershipForAuthenticatedUserRequestOptions];
+ "PATCH /user/memberships/orgs/:org": [OrgsUpdateMembershipEndpoint, OrgsUpdateMembershipRequestOptions];
+ "GET /orgs/:org/outside_collaborators": [OrgsListOutsideCollaboratorsEndpoint, OrgsListOutsideCollaboratorsRequestOptions];
+ "DELETE /orgs/:org/outside_collaborators/:username": [OrgsRemoveOutsideCollaboratorEndpoint, OrgsRemoveOutsideCollaboratorRequestOptions];
+ "PUT /orgs/:org/outside_collaborators/:username": [OrgsConvertMemberToOutsideCollaboratorEndpoint, OrgsConvertMemberToOutsideCollaboratorRequestOptions];
+ "GET /repos/:owner/:repo/projects": [ProjectsListForRepoEndpoint, ProjectsListForRepoRequestOptions];
+ "GET /orgs/:org/projects": [ProjectsListForOrgEndpoint, ProjectsListForOrgRequestOptions];
+ "GET /users/:username/projects": [ProjectsListForUserEndpoint, ProjectsListForUserRequestOptions];
+ "GET /projects/:project_id": [ProjectsGetEndpoint, ProjectsGetRequestOptions];
+ "POST /repos/:owner/:repo/projects": [ProjectsCreateForRepoEndpoint, ProjectsCreateForRepoRequestOptions];
+ "POST /orgs/:org/projects": [ProjectsCreateForOrgEndpoint, ProjectsCreateForOrgRequestOptions];
+ "POST /user/projects": [ProjectsCreateForAuthenticatedUserEndpoint, ProjectsCreateForAuthenticatedUserRequestOptions];
+ "PATCH /projects/:project_id": [ProjectsUpdateEndpoint, ProjectsUpdateRequestOptions];
+ "DELETE /projects/:project_id": [ProjectsDeleteEndpoint, ProjectsDeleteRequestOptions];
+ "GET /projects/columns/:column_id/cards": [ProjectsListCardsEndpoint, ProjectsListCardsRequestOptions];
+ "GET /projects/columns/cards/:card_id": [ProjectsGetCardEndpoint, ProjectsGetCardRequestOptions];
+ "POST /projects/columns/:column_id/cards": [ProjectsCreateCardEndpoint, ProjectsCreateCardRequestOptions];
+ "PATCH /projects/columns/cards/:card_id": [ProjectsUpdateCardEndpoint, ProjectsUpdateCardRequestOptions];
+ "DELETE /projects/columns/cards/:card_id": [ProjectsDeleteCardEndpoint, ProjectsDeleteCardRequestOptions];
+ "POST /projects/columns/cards/:card_id/moves": [ProjectsMoveCardEndpoint, ProjectsMoveCardRequestOptions];
+ "GET /projects/:project_id/collaborators": [ProjectsListCollaboratorsEndpoint, ProjectsListCollaboratorsRequestOptions];
+ "GET /projects/:project_id/collaborators/:username/permission": [ProjectsReviewUserPermissionLevelEndpoint, ProjectsReviewUserPermissionLevelRequestOptions];
+ "PUT /projects/:project_id/collaborators/:username": [ProjectsAddCollaboratorEndpoint, ProjectsAddCollaboratorRequestOptions];
+ "DELETE /projects/:project_id/collaborators/:username": [ProjectsRemoveCollaboratorEndpoint, ProjectsRemoveCollaboratorRequestOptions];
+ "GET /projects/:project_id/columns": [ProjectsListColumnsEndpoint, ProjectsListColumnsRequestOptions];
+ "GET /projects/columns/:column_id": [ProjectsGetColumnEndpoint, ProjectsGetColumnRequestOptions];
+ "POST /projects/:project_id/columns": [ProjectsCreateColumnEndpoint, ProjectsCreateColumnRequestOptions];
+ "PATCH /projects/columns/:column_id": [ProjectsUpdateColumnEndpoint, ProjectsUpdateColumnRequestOptions];
+ "DELETE /projects/columns/:column_id": [ProjectsDeleteColumnEndpoint, ProjectsDeleteColumnRequestOptions];
+ "POST /projects/columns/:column_id/moves": [ProjectsMoveColumnEndpoint, ProjectsMoveColumnRequestOptions];
+ "GET /repos/:owner/:repo/pulls": [PullsListEndpoint, PullsListRequestOptions];
+ "GET /repos/:owner/:repo/pulls/:pull_number": [PullsGetEndpoint, PullsGetRequestOptions];
+ "POST /repos/:owner/:repo/pulls": [PullsCreateEndpoint | PullsCreateFromIssueEndpoint, PullsCreateRequestOptions | PullsCreateFromIssueRequestOptions];
+ "PUT /repos/:owner/:repo/pulls/:pull_number/update-branch": [PullsUpdateBranchEndpoint, PullsUpdateBranchRequestOptions];
+ "PATCH /repos/:owner/:repo/pulls/:pull_number": [PullsUpdateEndpoint, PullsUpdateRequestOptions];
+ "GET /repos/:owner/:repo/pulls/:pull_number/commits": [PullsListCommitsEndpoint, PullsListCommitsRequestOptions];
+ "GET /repos/:owner/:repo/pulls/:pull_number/files": [PullsListFilesEndpoint, PullsListFilesRequestOptions];
+ "GET /repos/:owner/:repo/pulls/:pull_number/merge": [PullsCheckIfMergedEndpoint, PullsCheckIfMergedRequestOptions];
+ "PUT /repos/:owner/:repo/pulls/:pull_number/merge": [PullsMergeEndpoint, PullsMergeRequestOptions];
+ "GET /repos/:owner/:repo/pulls/:pull_number/comments": [PullsListCommentsEndpoint, PullsListCommentsRequestOptions];
+ "GET /repos/:owner/:repo/pulls/comments": [PullsListCommentsForRepoEndpoint, PullsListCommentsForRepoRequestOptions];
+ "GET /repos/:owner/:repo/pulls/comments/:comment_id": [PullsGetCommentEndpoint, PullsGetCommentRequestOptions];
+ "POST /repos/:owner/:repo/pulls/:pull_number/comments": [PullsCreateCommentEndpoint | PullsCreateCommentReplyEndpoint, PullsCreateCommentRequestOptions | PullsCreateCommentReplyRequestOptions];
+ "PATCH /repos/:owner/:repo/pulls/comments/:comment_id": [PullsUpdateCommentEndpoint, PullsUpdateCommentRequestOptions];
+ "DELETE /repos/:owner/:repo/pulls/comments/:comment_id": [PullsDeleteCommentEndpoint, PullsDeleteCommentRequestOptions];
+ "GET /repos/:owner/:repo/pulls/:pull_number/requested_reviewers": [PullsListReviewRequestsEndpoint, PullsListReviewRequestsRequestOptions];
+ "POST /repos/:owner/:repo/pulls/:pull_number/requested_reviewers": [PullsCreateReviewRequestEndpoint, PullsCreateReviewRequestRequestOptions];
+ "DELETE /repos/:owner/:repo/pulls/:pull_number/requested_reviewers": [PullsDeleteReviewRequestEndpoint, PullsDeleteReviewRequestRequestOptions];
+ "GET /repos/:owner/:repo/pulls/:pull_number/reviews": [PullsListReviewsEndpoint, PullsListReviewsRequestOptions];
+ "GET /repos/:owner/:repo/pulls/:pull_number/reviews/:review_id": [PullsGetReviewEndpoint, PullsGetReviewRequestOptions];
+ "DELETE /repos/:owner/:repo/pulls/:pull_number/reviews/:review_id": [PullsDeletePendingReviewEndpoint, PullsDeletePendingReviewRequestOptions];
+ "GET /repos/:owner/:repo/pulls/:pull_number/reviews/:review_id/comments": [PullsGetCommentsForReviewEndpoint, PullsGetCommentsForReviewRequestOptions];
+ "POST /repos/:owner/:repo/pulls/:pull_number/reviews": [PullsCreateReviewEndpoint, PullsCreateReviewRequestOptions];
+ "PUT /repos/:owner/:repo/pulls/:pull_number/reviews/:review_id": [PullsUpdateReviewEndpoint, PullsUpdateReviewRequestOptions];
+ "POST /repos/:owner/:repo/pulls/:pull_number/reviews/:review_id/events": [PullsSubmitReviewEndpoint, PullsSubmitReviewRequestOptions];
+ "PUT /repos/:owner/:repo/pulls/:pull_number/reviews/:review_id/dismissals": [PullsDismissReviewEndpoint, PullsDismissReviewRequestOptions];
+ "GET /rate_limit": [RateLimitGetEndpoint, RateLimitGetRequestOptions];
+ "GET /repos/:owner/:repo/comments/:comment_id/reactions": [ReactionsListForCommitCommentEndpoint, ReactionsListForCommitCommentRequestOptions];
+ "POST /repos/:owner/:repo/comments/:comment_id/reactions": [ReactionsCreateForCommitCommentEndpoint, ReactionsCreateForCommitCommentRequestOptions];
+ "GET /repos/:owner/:repo/issues/:issue_number/reactions": [ReactionsListForIssueEndpoint, ReactionsListForIssueRequestOptions];
+ "POST /repos/:owner/:repo/issues/:issue_number/reactions": [ReactionsCreateForIssueEndpoint, ReactionsCreateForIssueRequestOptions];
+ "GET /repos/:owner/:repo/issues/comments/:comment_id/reactions": [ReactionsListForIssueCommentEndpoint, ReactionsListForIssueCommentRequestOptions];
+ "POST /repos/:owner/:repo/issues/comments/:comment_id/reactions": [ReactionsCreateForIssueCommentEndpoint, ReactionsCreateForIssueCommentRequestOptions];
+ "GET /repos/:owner/:repo/pulls/comments/:comment_id/reactions": [ReactionsListForPullRequestReviewCommentEndpoint, ReactionsListForPullRequestReviewCommentRequestOptions];
+ "POST /repos/:owner/:repo/pulls/comments/:comment_id/reactions": [ReactionsCreateForPullRequestReviewCommentEndpoint, ReactionsCreateForPullRequestReviewCommentRequestOptions];
+ "GET /teams/:team_id/discussions/:discussion_number/reactions": [ReactionsListForTeamDiscussionEndpoint, ReactionsListForTeamDiscussionRequestOptions];
+ "POST /teams/:team_id/discussions/:discussion_number/reactions": [ReactionsCreateForTeamDiscussionEndpoint, ReactionsCreateForTeamDiscussionRequestOptions];
+ "GET /teams/:team_id/discussions/:discussion_number/comments/:comment_number/reactions": [ReactionsListForTeamDiscussionCommentEndpoint, ReactionsListForTeamDiscussionCommentRequestOptions];
+ "POST /teams/:team_id/discussions/:discussion_number/comments/:comment_number/reactions": [ReactionsCreateForTeamDiscussionCommentEndpoint, ReactionsCreateForTeamDiscussionCommentRequestOptions];
+ "DELETE /reactions/:reaction_id": [ReactionsDeleteEndpoint, ReactionsDeleteRequestOptions];
+ "GET /user/repos": [ReposListEndpoint, ReposListRequestOptions];
+ "GET /users/:username/repos": [ReposListForUserEndpoint, ReposListForUserRequestOptions];
+ "GET /orgs/:org/repos": [ReposListForOrgEndpoint, ReposListForOrgRequestOptions];
+ "GET /repositories": [ReposListPublicEndpoint, ReposListPublicRequestOptions];
+ "POST /user/repos": [ReposCreateForAuthenticatedUserEndpoint, ReposCreateForAuthenticatedUserRequestOptions];
+ "POST /orgs/:org/repos": [ReposCreateInOrgEndpoint, ReposCreateInOrgRequestOptions];
+ "POST /repos/:template_owner/:template_repo/generate": [ReposCreateUsingTemplateEndpoint, ReposCreateUsingTemplateRequestOptions];
+ "GET /repos/:owner/:repo": [ReposGetEndpoint, ReposGetRequestOptions];
+ "PATCH /repos/:owner/:repo": [ReposUpdateEndpoint, ReposUpdateRequestOptions];
+ "GET /repos/:owner/:repo/topics": [ReposListTopicsEndpoint, ReposListTopicsRequestOptions];
+ "PUT /repos/:owner/:repo/topics": [ReposReplaceTopicsEndpoint, ReposReplaceTopicsRequestOptions];
+ "GET /repos/:owner/:repo/vulnerability-alerts": [ReposCheckVulnerabilityAlertsEndpoint, ReposCheckVulnerabilityAlertsRequestOptions];
+ "PUT /repos/:owner/:repo/vulnerability-alerts": [ReposEnableVulnerabilityAlertsEndpoint, ReposEnableVulnerabilityAlertsRequestOptions];
+ "DELETE /repos/:owner/:repo/vulnerability-alerts": [ReposDisableVulnerabilityAlertsEndpoint, ReposDisableVulnerabilityAlertsRequestOptions];
+ "PUT /repos/:owner/:repo/automated-security-fixes": [ReposEnableAutomatedSecurityFixesEndpoint, ReposEnableAutomatedSecurityFixesRequestOptions];
+ "DELETE /repos/:owner/:repo/automated-security-fixes": [ReposDisableAutomatedSecurityFixesEndpoint, ReposDisableAutomatedSecurityFixesRequestOptions];
+ "GET /repos/:owner/:repo/contributors": [ReposListContributorsEndpoint, ReposListContributorsRequestOptions];
+ "GET /repos/:owner/:repo/languages": [ReposListLanguagesEndpoint, ReposListLanguagesRequestOptions];
+ "GET /repos/:owner/:repo/teams": [ReposListTeamsEndpoint, ReposListTeamsRequestOptions];
+ "GET /repos/:owner/:repo/tags": [ReposListTagsEndpoint, ReposListTagsRequestOptions];
+ "DELETE /repos/:owner/:repo": [ReposDeleteEndpoint, ReposDeleteRequestOptions];
+ "POST /repos/:owner/:repo/transfer": [ReposTransferEndpoint, ReposTransferRequestOptions];
+ "GET /repos/:owner/:repo/branches": [ReposListBranchesEndpoint, ReposListBranchesRequestOptions];
+ "GET /repos/:owner/:repo/branches/:branch": [ReposGetBranchEndpoint, ReposGetBranchRequestOptions];
+ "GET /repos/:owner/:repo/branches/:branch/protection": [ReposGetBranchProtectionEndpoint, ReposGetBranchProtectionRequestOptions];
+ "PUT /repos/:owner/:repo/branches/:branch/protection": [ReposUpdateBranchProtectionEndpoint, ReposUpdateBranchProtectionRequestOptions];
+ "DELETE /repos/:owner/:repo/branches/:branch/protection": [ReposRemoveBranchProtectionEndpoint, ReposRemoveBranchProtectionRequestOptions];
+ "GET /repos/:owner/:repo/branches/:branch/protection/required_status_checks": [ReposGetProtectedBranchRequiredStatusChecksEndpoint, ReposGetProtectedBranchRequiredStatusChecksRequestOptions];
+ "PATCH /repos/:owner/:repo/branches/:branch/protection/required_status_checks": [ReposUpdateProtectedBranchRequiredStatusChecksEndpoint, ReposUpdateProtectedBranchRequiredStatusChecksRequestOptions];
+ "DELETE /repos/:owner/:repo/branches/:branch/protection/required_status_checks": [ReposRemoveProtectedBranchRequiredStatusChecksEndpoint, ReposRemoveProtectedBranchRequiredStatusChecksRequestOptions];
+ "GET /repos/:owner/:repo/branches/:branch/protection/required_status_checks/contexts": [ReposListProtectedBranchRequiredStatusChecksContextsEndpoint, ReposListProtectedBranchRequiredStatusChecksContextsRequestOptions];
+ "PUT /repos/:owner/:repo/branches/:branch/protection/required_status_checks/contexts": [ReposReplaceProtectedBranchRequiredStatusChecksContextsEndpoint, ReposReplaceProtectedBranchRequiredStatusChecksContextsRequestOptions];
+ "POST /repos/:owner/:repo/branches/:branch/protection/required_status_checks/contexts": [ReposAddProtectedBranchRequiredStatusChecksContextsEndpoint, ReposAddProtectedBranchRequiredStatusChecksContextsRequestOptions];
+ "DELETE /repos/:owner/:repo/branches/:branch/protection/required_status_checks/contexts": [ReposRemoveProtectedBranchRequiredStatusChecksContextsEndpoint, ReposRemoveProtectedBranchRequiredStatusChecksContextsRequestOptions];
+ "GET /repos/:owner/:repo/branches/:branch/protection/required_pull_request_reviews": [ReposGetProtectedBranchPullRequestReviewEnforcementEndpoint, ReposGetProtectedBranchPullRequestReviewEnforcementRequestOptions];
+ "PATCH /repos/:owner/:repo/branches/:branch/protection/required_pull_request_reviews": [ReposUpdateProtectedBranchPullRequestReviewEnforcementEndpoint, ReposUpdateProtectedBranchPullRequestReviewEnforcementRequestOptions];
+ "DELETE /repos/:owner/:repo/branches/:branch/protection/required_pull_request_reviews": [ReposRemoveProtectedBranchPullRequestReviewEnforcementEndpoint, ReposRemoveProtectedBranchPullRequestReviewEnforcementRequestOptions];
+ "GET /repos/:owner/:repo/branches/:branch/protection/required_signatures": [ReposGetProtectedBranchRequiredSignaturesEndpoint, ReposGetProtectedBranchRequiredSignaturesRequestOptions];
+ "POST /repos/:owner/:repo/branches/:branch/protection/required_signatures": [ReposAddProtectedBranchRequiredSignaturesEndpoint, ReposAddProtectedBranchRequiredSignaturesRequestOptions];
+ "DELETE /repos/:owner/:repo/branches/:branch/protection/required_signatures": [ReposRemoveProtectedBranchRequiredSignaturesEndpoint, ReposRemoveProtectedBranchRequiredSignaturesRequestOptions];
+ "GET /repos/:owner/:repo/branches/:branch/protection/enforce_admins": [ReposGetProtectedBranchAdminEnforcementEndpoint, ReposGetProtectedBranchAdminEnforcementRequestOptions];
+ "POST /repos/:owner/:repo/branches/:branch/protection/enforce_admins": [ReposAddProtectedBranchAdminEnforcementEndpoint, ReposAddProtectedBranchAdminEnforcementRequestOptions];
+ "DELETE /repos/:owner/:repo/branches/:branch/protection/enforce_admins": [ReposRemoveProtectedBranchAdminEnforcementEndpoint, ReposRemoveProtectedBranchAdminEnforcementRequestOptions];
+ "GET /repos/:owner/:repo/branches/:branch/protection/restrictions": [ReposGetProtectedBranchRestrictionsEndpoint, ReposGetProtectedBranchRestrictionsRequestOptions];
+ "DELETE /repos/:owner/:repo/branches/:branch/protection/restrictions": [ReposRemoveProtectedBranchRestrictionsEndpoint, ReposRemoveProtectedBranchRestrictionsRequestOptions];
+ "GET /repos/:owner/:repo/branches/:branch/protection/restrictions/teams": [ReposListProtectedBranchTeamRestrictionsEndpoint, ReposListProtectedBranchTeamRestrictionsRequestOptions];
+ "PUT /repos/:owner/:repo/branches/:branch/protection/restrictions/teams": [ReposReplaceProtectedBranchTeamRestrictionsEndpoint, ReposReplaceProtectedBranchTeamRestrictionsRequestOptions];
+ "POST /repos/:owner/:repo/branches/:branch/protection/restrictions/teams": [ReposAddProtectedBranchTeamRestrictionsEndpoint, ReposAddProtectedBranchTeamRestrictionsRequestOptions];
+ "DELETE /repos/:owner/:repo/branches/:branch/protection/restrictions/teams": [ReposRemoveProtectedBranchTeamRestrictionsEndpoint, ReposRemoveProtectedBranchTeamRestrictionsRequestOptions];
+ "GET /repos/:owner/:repo/branches/:branch/protection/restrictions/users": [ReposListProtectedBranchUserRestrictionsEndpoint, ReposListProtectedBranchUserRestrictionsRequestOptions];
+ "PUT /repos/:owner/:repo/branches/:branch/protection/restrictions/users": [ReposReplaceProtectedBranchUserRestrictionsEndpoint, ReposReplaceProtectedBranchUserRestrictionsRequestOptions];
+ "POST /repos/:owner/:repo/branches/:branch/protection/restrictions/users": [ReposAddProtectedBranchUserRestrictionsEndpoint, ReposAddProtectedBranchUserRestrictionsRequestOptions];
+ "DELETE /repos/:owner/:repo/branches/:branch/protection/restrictions/users": [ReposRemoveProtectedBranchUserRestrictionsEndpoint, ReposRemoveProtectedBranchUserRestrictionsRequestOptions];
+ "GET /repos/:owner/:repo/collaborators": [ReposListCollaboratorsEndpoint, ReposListCollaboratorsRequestOptions];
+ "GET /repos/:owner/:repo/collaborators/:username": [ReposCheckCollaboratorEndpoint, ReposCheckCollaboratorRequestOptions];
+ "GET /repos/:owner/:repo/collaborators/:username/permission": [ReposGetCollaboratorPermissionLevelEndpoint, ReposGetCollaboratorPermissionLevelRequestOptions];
+ "PUT /repos/:owner/:repo/collaborators/:username": [ReposAddCollaboratorEndpoint, ReposAddCollaboratorRequestOptions];
+ "DELETE /repos/:owner/:repo/collaborators/:username": [ReposRemoveCollaboratorEndpoint, ReposRemoveCollaboratorRequestOptions];
+ "GET /repos/:owner/:repo/comments": [ReposListCommitCommentsEndpoint, ReposListCommitCommentsRequestOptions];
+ "GET /repos/:owner/:repo/commits/:commit_sha/comments": [ReposListCommentsForCommitEndpoint, ReposListCommentsForCommitRequestOptions];
+ "POST /repos/:owner/:repo/commits/:commit_sha/comments": [ReposCreateCommitCommentEndpoint, ReposCreateCommitCommentRequestOptions];
+ "GET /repos/:owner/:repo/comments/:comment_id": [ReposGetCommitCommentEndpoint, ReposGetCommitCommentRequestOptions];
+ "PATCH /repos/:owner/:repo/comments/:comment_id": [ReposUpdateCommitCommentEndpoint, ReposUpdateCommitCommentRequestOptions];
+ "DELETE /repos/:owner/:repo/comments/:comment_id": [ReposDeleteCommitCommentEndpoint, ReposDeleteCommitCommentRequestOptions];
+ "GET /repos/:owner/:repo/commits": [ReposListCommitsEndpoint, ReposListCommitsRequestOptions];
+ "GET /repos/:owner/:repo/commits/:ref": [ReposGetCommitEndpoint | ReposGetCommitRefShaEndpoint, ReposGetCommitRequestOptions | ReposGetCommitRefShaRequestOptions];
+ "GET /repos/:owner/:repo/compare/:base...:head": [ReposCompareCommitsEndpoint, ReposCompareCommitsRequestOptions];
+ "GET /repos/:owner/:repo/commits/:commit_sha/branches-where-head": [ReposListBranchesForHeadCommitEndpoint, ReposListBranchesForHeadCommitRequestOptions];
+ "GET /repos/:owner/:repo/commits/:commit_sha/pulls": [ReposListPullRequestsAssociatedWithCommitEndpoint, ReposListPullRequestsAssociatedWithCommitRequestOptions];
+ "GET /repos/:owner/:repo/community/profile": [ReposRetrieveCommunityProfileMetricsEndpoint, ReposRetrieveCommunityProfileMetricsRequestOptions];
+ "GET /repos/:owner/:repo/readme": [ReposGetReadmeEndpoint, ReposGetReadmeRequestOptions];
+ "GET /repos/:owner/:repo/contents/:path": [ReposGetContentsEndpoint, ReposGetContentsRequestOptions];
+ "PUT /repos/:owner/:repo/contents/:path": [ReposCreateOrUpdateFileEndpoint | ReposCreateFileEndpoint | ReposUpdateFileEndpoint, ReposCreateOrUpdateFileRequestOptions | ReposCreateFileRequestOptions | ReposUpdateFileRequestOptions];
+ "DELETE /repos/:owner/:repo/contents/:path": [ReposDeleteFileEndpoint, ReposDeleteFileRequestOptions];
+ "GET /repos/:owner/:repo/:archive_format/:ref": [ReposGetArchiveLinkEndpoint, ReposGetArchiveLinkRequestOptions];
+ "GET /repos/:owner/:repo/deployments": [ReposListDeploymentsEndpoint, ReposListDeploymentsRequestOptions];
+ "GET /repos/:owner/:repo/deployments/:deployment_id": [ReposGetDeploymentEndpoint, ReposGetDeploymentRequestOptions];
+ "POST /repos/:owner/:repo/deployments": [ReposCreateDeploymentEndpoint, ReposCreateDeploymentRequestOptions];
+ "GET /repos/:owner/:repo/deployments/:deployment_id/statuses": [ReposListDeploymentStatusesEndpoint, ReposListDeploymentStatusesRequestOptions];
+ "GET /repos/:owner/:repo/deployments/:deployment_id/statuses/:status_id": [ReposGetDeploymentStatusEndpoint, ReposGetDeploymentStatusRequestOptions];
+ "POST /repos/:owner/:repo/deployments/:deployment_id/statuses": [ReposCreateDeploymentStatusEndpoint, ReposCreateDeploymentStatusRequestOptions];
+ "GET /repos/:owner/:repo/downloads": [ReposListDownloadsEndpoint, ReposListDownloadsRequestOptions];
+ "GET /repos/:owner/:repo/downloads/:download_id": [ReposGetDownloadEndpoint, ReposGetDownloadRequestOptions];
+ "DELETE /repos/:owner/:repo/downloads/:download_id": [ReposDeleteDownloadEndpoint, ReposDeleteDownloadRequestOptions];
+ "GET /repos/:owner/:repo/forks": [ReposListForksEndpoint, ReposListForksRequestOptions];
+ "POST /repos/:owner/:repo/forks": [ReposCreateForkEndpoint, ReposCreateForkRequestOptions];
+ "GET /repos/:owner/:repo/hooks": [ReposListHooksEndpoint, ReposListHooksRequestOptions];
+ "GET /repos/:owner/:repo/hooks/:hook_id": [ReposGetHookEndpoint, ReposGetHookRequestOptions];
+ "POST /repos/:owner/:repo/hooks": [ReposCreateHookEndpoint, ReposCreateHookRequestOptions];
+ "PATCH /repos/:owner/:repo/hooks/:hook_id": [ReposUpdateHookEndpoint, ReposUpdateHookRequestOptions];
+ "POST /repos/:owner/:repo/hooks/:hook_id/tests": [ReposTestPushHookEndpoint, ReposTestPushHookRequestOptions];
+ "POST /repos/:owner/:repo/hooks/:hook_id/pings": [ReposPingHookEndpoint, ReposPingHookRequestOptions];
+ "DELETE /repos/:owner/:repo/hooks/:hook_id": [ReposDeleteHookEndpoint, ReposDeleteHookRequestOptions];
+ "GET /repos/:owner/:repo/invitations": [ReposListInvitationsEndpoint, ReposListInvitationsRequestOptions];
+ "DELETE /repos/:owner/:repo/invitations/:invitation_id": [ReposDeleteInvitationEndpoint, ReposDeleteInvitationRequestOptions];
+ "PATCH /repos/:owner/:repo/invitations/:invitation_id": [ReposUpdateInvitationEndpoint, ReposUpdateInvitationRequestOptions];
+ "GET /user/repository_invitations": [ReposListInvitationsForAuthenticatedUserEndpoint, ReposListInvitationsForAuthenticatedUserRequestOptions];
+ "PATCH /user/repository_invitations/:invitation_id": [ReposAcceptInvitationEndpoint, ReposAcceptInvitationRequestOptions];
+ "DELETE /user/repository_invitations/:invitation_id": [ReposDeclineInvitationEndpoint, ReposDeclineInvitationRequestOptions];
+ "GET /repos/:owner/:repo/keys": [ReposListDeployKeysEndpoint, ReposListDeployKeysRequestOptions];
+ "GET /repos/:owner/:repo/keys/:key_id": [ReposGetDeployKeyEndpoint, ReposGetDeployKeyRequestOptions];
+ "POST /repos/:owner/:repo/keys": [ReposAddDeployKeyEndpoint, ReposAddDeployKeyRequestOptions];
+ "DELETE /repos/:owner/:repo/keys/:key_id": [ReposRemoveDeployKeyEndpoint, ReposRemoveDeployKeyRequestOptions];
+ "POST /repos/:owner/:repo/merges": [ReposMergeEndpoint, ReposMergeRequestOptions];
+ "GET /repos/:owner/:repo/pages": [ReposGetPagesEndpoint, ReposGetPagesRequestOptions];
+ "POST /repos/:owner/:repo/pages": [ReposEnablePagesSiteEndpoint, ReposEnablePagesSiteRequestOptions];
+ "DELETE /repos/:owner/:repo/pages": [ReposDisablePagesSiteEndpoint, ReposDisablePagesSiteRequestOptions];
+ "PUT /repos/:owner/:repo/pages": [ReposUpdateInformationAboutPagesSiteEndpoint, ReposUpdateInformationAboutPagesSiteRequestOptions];
+ "POST /repos/:owner/:repo/pages/builds": [ReposRequestPageBuildEndpoint, ReposRequestPageBuildRequestOptions];
+ "GET /repos/:owner/:repo/pages/builds": [ReposListPagesBuildsEndpoint, ReposListPagesBuildsRequestOptions];
+ "GET /repos/:owner/:repo/pages/builds/latest": [ReposGetLatestPagesBuildEndpoint, ReposGetLatestPagesBuildRequestOptions];
+ "GET /repos/:owner/:repo/pages/builds/:build_id": [ReposGetPagesBuildEndpoint, ReposGetPagesBuildRequestOptions];
+ "GET /repos/:owner/:repo/releases": [ReposListReleasesEndpoint, ReposListReleasesRequestOptions];
+ "GET /repos/:owner/:repo/releases/:release_id": [ReposGetReleaseEndpoint, ReposGetReleaseRequestOptions];
+ "GET /repos/:owner/:repo/releases/latest": [ReposGetLatestReleaseEndpoint, ReposGetLatestReleaseRequestOptions];
+ "GET /repos/:owner/:repo/releases/tags/:tag": [ReposGetReleaseByTagEndpoint, ReposGetReleaseByTagRequestOptions];
+ "POST /repos/:owner/:repo/releases": [ReposCreateReleaseEndpoint, ReposCreateReleaseRequestOptions];
+ "PATCH /repos/:owner/:repo/releases/:release_id": [ReposUpdateReleaseEndpoint, ReposUpdateReleaseRequestOptions];
+ "DELETE /repos/:owner/:repo/releases/:release_id": [ReposDeleteReleaseEndpoint, ReposDeleteReleaseRequestOptions];
+ "GET /repos/:owner/:repo/releases/:release_id/assets": [ReposListAssetsForReleaseEndpoint, ReposListAssetsForReleaseRequestOptions];
+ "POST :url": [ReposUploadReleaseAssetEndpoint, ReposUploadReleaseAssetRequestOptions];
+ "GET /repos/:owner/:repo/releases/assets/:asset_id": [ReposGetReleaseAssetEndpoint, ReposGetReleaseAssetRequestOptions];
+ "PATCH /repos/:owner/:repo/releases/assets/:asset_id": [ReposUpdateReleaseAssetEndpoint, ReposUpdateReleaseAssetRequestOptions];
+ "DELETE /repos/:owner/:repo/releases/assets/:asset_id": [ReposDeleteReleaseAssetEndpoint, ReposDeleteReleaseAssetRequestOptions];
+ "GET /repos/:owner/:repo/stats/contributors": [ReposGetContributorsStatsEndpoint, ReposGetContributorsStatsRequestOptions];
+ "GET /repos/:owner/:repo/stats/commit_activity": [ReposGetCommitActivityStatsEndpoint, ReposGetCommitActivityStatsRequestOptions];
+ "GET /repos/:owner/:repo/stats/code_frequency": [ReposGetCodeFrequencyStatsEndpoint, ReposGetCodeFrequencyStatsRequestOptions];
+ "GET /repos/:owner/:repo/stats/participation": [ReposGetParticipationStatsEndpoint, ReposGetParticipationStatsRequestOptions];
+ "GET /repos/:owner/:repo/stats/punch_card": [ReposGetPunchCardStatsEndpoint, ReposGetPunchCardStatsRequestOptions];
+ "POST /repos/:owner/:repo/statuses/:sha": [ReposCreateStatusEndpoint, ReposCreateStatusRequestOptions];
+ "GET /repos/:owner/:repo/commits/:ref/statuses": [ReposListStatusesForRefEndpoint, ReposListStatusesForRefRequestOptions];
+ "GET /repos/:owner/:repo/commits/:ref/status": [ReposGetCombinedStatusForRefEndpoint, ReposGetCombinedStatusForRefRequestOptions];
+ "GET /repos/:owner/:repo/traffic/popular/referrers": [ReposGetTopReferrersEndpoint, ReposGetTopReferrersRequestOptions];
+ "GET /repos/:owner/:repo/traffic/popular/paths": [ReposGetTopPathsEndpoint, ReposGetTopPathsRequestOptions];
+ "GET /repos/:owner/:repo/traffic/views": [ReposGetViewsEndpoint, ReposGetViewsRequestOptions];
+ "GET /repos/:owner/:repo/traffic/clones": [ReposGetClonesEndpoint, ReposGetClonesRequestOptions];
+ "GET /scim/v2/organizations/:org/Users": [ScimListProvisionedIdentitiesEndpoint, ScimListProvisionedIdentitiesRequestOptions];
+ "GET /scim/v2/organizations/:org/Users/:scim_user_id": [ScimGetProvisioningDetailsForUserEndpoint, ScimGetProvisioningDetailsForUserRequestOptions];
+ "POST /scim/v2/organizations/:org/Users": [ScimProvisionAndInviteUsersEndpoint | ScimProvisionInviteUsersEndpoint, ScimProvisionAndInviteUsersRequestOptions | ScimProvisionInviteUsersRequestOptions];
+ "PUT /scim/v2/organizations/:org/Users/:scim_user_id": [ScimReplaceProvisionedUserInformationEndpoint | ScimUpdateProvisionedOrgMembershipEndpoint, ScimReplaceProvisionedUserInformationRequestOptions | ScimUpdateProvisionedOrgMembershipRequestOptions];
+ "PATCH /scim/v2/organizations/:org/Users/:scim_user_id": [ScimUpdateUserAttributeEndpoint, ScimUpdateUserAttributeRequestOptions];
+ "DELETE /scim/v2/organizations/:org/Users/:scim_user_id": [ScimRemoveUserFromOrgEndpoint, ScimRemoveUserFromOrgRequestOptions];
+ "GET /search/repositories": [SearchReposEndpoint, SearchReposRequestOptions];
+ "GET /search/commits": [SearchCommitsEndpoint, SearchCommitsRequestOptions];
+ "GET /search/code": [SearchCodeEndpoint, SearchCodeRequestOptions];
+ "GET /search/issues": [SearchIssuesAndPullRequestsEndpoint | SearchIssuesEndpoint, SearchIssuesAndPullRequestsRequestOptions | SearchIssuesRequestOptions];
+ "GET /search/users": [SearchUsersEndpoint, SearchUsersRequestOptions];
+ "GET /search/topics": [SearchTopicsEndpoint, SearchTopicsRequestOptions];
+ "GET /search/labels": [SearchLabelsEndpoint, SearchLabelsRequestOptions];
+ "GET /legacy/issues/search/:owner/:repository/:state/:keyword": [SearchIssuesLegacyEndpoint, SearchIssuesLegacyRequestOptions];
+ "GET /legacy/repos/search/:keyword": [SearchReposLegacyEndpoint, SearchReposLegacyRequestOptions];
+ "GET /legacy/user/search/:keyword": [SearchUsersLegacyEndpoint, SearchUsersLegacyRequestOptions];
+ "GET /legacy/user/email/:email": [SearchEmailLegacyEndpoint, SearchEmailLegacyRequestOptions];
+ "GET /orgs/:org/teams": [TeamsListEndpoint, TeamsListRequestOptions];
+ "GET /teams/:team_id": [TeamsGetEndpoint, TeamsGetRequestOptions];
+ "GET /orgs/:org/teams/:team_slug": [TeamsGetByNameEndpoint, TeamsGetByNameRequestOptions];
+ "POST /orgs/:org/teams": [TeamsCreateEndpoint, TeamsCreateRequestOptions];
+ "PATCH /teams/:team_id": [TeamsUpdateEndpoint, TeamsUpdateRequestOptions];
+ "DELETE /teams/:team_id": [TeamsDeleteEndpoint, TeamsDeleteRequestOptions];
+ "GET /teams/:team_id/teams": [TeamsListChildEndpoint, TeamsListChildRequestOptions];
+ "GET /teams/:team_id/repos": [TeamsListReposEndpoint, TeamsListReposRequestOptions];
+ "GET /teams/:team_id/repos/:owner/:repo": [TeamsCheckManagesRepoEndpoint, TeamsCheckManagesRepoRequestOptions];
+ "PUT /teams/:team_id/repos/:owner/:repo": [TeamsAddOrUpdateRepoEndpoint, TeamsAddOrUpdateRepoRequestOptions];
+ "DELETE /teams/:team_id/repos/:owner/:repo": [TeamsRemoveRepoEndpoint, TeamsRemoveRepoRequestOptions];
+ "GET /user/teams": [TeamsListForAuthenticatedUserEndpoint, TeamsListForAuthenticatedUserRequestOptions];
+ "GET /teams/:team_id/projects": [TeamsListProjectsEndpoint, TeamsListProjectsRequestOptions];
+ "GET /teams/:team_id/projects/:project_id": [TeamsReviewProjectEndpoint, TeamsReviewProjectRequestOptions];
+ "PUT /teams/:team_id/projects/:project_id": [TeamsAddOrUpdateProjectEndpoint, TeamsAddOrUpdateProjectRequestOptions];
+ "DELETE /teams/:team_id/projects/:project_id": [TeamsRemoveProjectEndpoint, TeamsRemoveProjectRequestOptions];
+ "GET /teams/:team_id/discussions/:discussion_number/comments": [TeamsListDiscussionCommentsEndpoint, TeamsListDiscussionCommentsRequestOptions];
+ "GET /teams/:team_id/discussions/:discussion_number/comments/:comment_number": [TeamsGetDiscussionCommentEndpoint, TeamsGetDiscussionCommentRequestOptions];
+ "POST /teams/:team_id/discussions/:discussion_number/comments": [TeamsCreateDiscussionCommentEndpoint, TeamsCreateDiscussionCommentRequestOptions];
+ "PATCH /teams/:team_id/discussions/:discussion_number/comments/:comment_number": [TeamsUpdateDiscussionCommentEndpoint, TeamsUpdateDiscussionCommentRequestOptions];
+ "DELETE /teams/:team_id/discussions/:discussion_number/comments/:comment_number": [TeamsDeleteDiscussionCommentEndpoint, TeamsDeleteDiscussionCommentRequestOptions];
+ "GET /teams/:team_id/discussions": [TeamsListDiscussionsEndpoint, TeamsListDiscussionsRequestOptions];
+ "GET /teams/:team_id/discussions/:discussion_number": [TeamsGetDiscussionEndpoint, TeamsGetDiscussionRequestOptions];
+ "POST /teams/:team_id/discussions": [TeamsCreateDiscussionEndpoint, TeamsCreateDiscussionRequestOptions];
+ "PATCH /teams/:team_id/discussions/:discussion_number": [TeamsUpdateDiscussionEndpoint, TeamsUpdateDiscussionRequestOptions];
+ "DELETE /teams/:team_id/discussions/:discussion_number": [TeamsDeleteDiscussionEndpoint, TeamsDeleteDiscussionRequestOptions];
+ "GET /teams/:team_id/members": [TeamsListMembersEndpoint, TeamsListMembersRequestOptions];
+ "GET /teams/:team_id/members/:username": [TeamsGetMemberEndpoint, TeamsGetMemberRequestOptions];
+ "PUT /teams/:team_id/members/:username": [TeamsAddMemberEndpoint, TeamsAddMemberRequestOptions];
+ "DELETE /teams/:team_id/members/:username": [TeamsRemoveMemberEndpoint, TeamsRemoveMemberRequestOptions];
+ "GET /teams/:team_id/memberships/:username": [TeamsGetMembershipEndpoint, TeamsGetMembershipRequestOptions];
+ "PUT /teams/:team_id/memberships/:username": [TeamsAddOrUpdateMembershipEndpoint, TeamsAddOrUpdateMembershipRequestOptions];
+ "DELETE /teams/:team_id/memberships/:username": [TeamsRemoveMembershipEndpoint, TeamsRemoveMembershipRequestOptions];
+ "GET /teams/:team_id/invitations": [TeamsListPendingInvitationsEndpoint, TeamsListPendingInvitationsRequestOptions];
+ "GET /orgs/:org/team-sync/groups": [TeamsListIdPGroupsForOrgEndpoint, TeamsListIdPGroupsForOrgRequestOptions];
+ "GET /teams/:team_id/team-sync/group-mappings": [TeamsListIdPGroupsEndpoint, TeamsListIdPGroupsRequestOptions];
+ "PATCH /teams/:team_id/team-sync/group-mappings": [TeamsCreateOrUpdateIdPGroupConnectionsEndpoint, TeamsCreateOrUpdateIdPGroupConnectionsRequestOptions];
+ "GET /users/:username": [UsersGetByUsernameEndpoint, UsersGetByUsernameRequestOptions];
+ "GET /user": [UsersGetAuthenticatedEndpoint, UsersGetAuthenticatedRequestOptions];
+ "PATCH /user": [UsersUpdateAuthenticatedEndpoint, UsersUpdateAuthenticatedRequestOptions];
+ "GET /users/:username/hovercard": [UsersGetContextForUserEndpoint, UsersGetContextForUserRequestOptions];
+ "GET /users": [UsersListEndpoint, UsersListRequestOptions];
+ "GET /user/blocks": [UsersListBlockedEndpoint, UsersListBlockedRequestOptions];
+ "GET /user/blocks/:username": [UsersCheckBlockedEndpoint, UsersCheckBlockedRequestOptions];
+ "PUT /user/blocks/:username": [UsersBlockEndpoint, UsersBlockRequestOptions];
+ "DELETE /user/blocks/:username": [UsersUnblockEndpoint, UsersUnblockRequestOptions];
+ "GET /user/emails": [UsersListEmailsEndpoint, UsersListEmailsRequestOptions];
+ "GET /user/public_emails": [UsersListPublicEmailsEndpoint, UsersListPublicEmailsRequestOptions];
+ "POST /user/emails": [UsersAddEmailsEndpoint, UsersAddEmailsRequestOptions];
+ "DELETE /user/emails": [UsersDeleteEmailsEndpoint, UsersDeleteEmailsRequestOptions];
+ "PATCH /user/email/visibility": [UsersTogglePrimaryEmailVisibilityEndpoint, UsersTogglePrimaryEmailVisibilityRequestOptions];
+ "GET /users/:username/followers": [UsersListFollowersForUserEndpoint, UsersListFollowersForUserRequestOptions];
+ "GET /user/followers": [UsersListFollowersForAuthenticatedUserEndpoint, UsersListFollowersForAuthenticatedUserRequestOptions];
+ "GET /users/:username/following": [UsersListFollowingForUserEndpoint, UsersListFollowingForUserRequestOptions];
+ "GET /user/following": [UsersListFollowingForAuthenticatedUserEndpoint, UsersListFollowingForAuthenticatedUserRequestOptions];
+ "GET /user/following/:username": [UsersCheckFollowingEndpoint, UsersCheckFollowingRequestOptions];
+ "GET /users/:username/following/:target_user": [UsersCheckFollowingForUserEndpoint, UsersCheckFollowingForUserRequestOptions];
+ "PUT /user/following/:username": [UsersFollowEndpoint, UsersFollowRequestOptions];
+ "DELETE /user/following/:username": [UsersUnfollowEndpoint, UsersUnfollowRequestOptions];
+ "GET /users/:username/gpg_keys": [UsersListGpgKeysForUserEndpoint, UsersListGpgKeysForUserRequestOptions];
+ "GET /user/gpg_keys": [UsersListGpgKeysEndpoint, UsersListGpgKeysRequestOptions];
+ "GET /user/gpg_keys/:gpg_key_id": [UsersGetGpgKeyEndpoint, UsersGetGpgKeyRequestOptions];
+ "POST /user/gpg_keys": [UsersCreateGpgKeyEndpoint, UsersCreateGpgKeyRequestOptions];
+ "DELETE /user/gpg_keys/:gpg_key_id": [UsersDeleteGpgKeyEndpoint, UsersDeleteGpgKeyRequestOptions];
+ "GET /users/:username/keys": [UsersListPublicKeysForUserEndpoint, UsersListPublicKeysForUserRequestOptions];
+ "GET /user/keys": [UsersListPublicKeysEndpoint, UsersListPublicKeysRequestOptions];
+ "GET /user/keys/:key_id": [UsersGetPublicKeyEndpoint, UsersGetPublicKeyRequestOptions];
+ "POST /user/keys": [UsersCreatePublicKeyEndpoint, UsersCreatePublicKeyRequestOptions];
+ "DELETE /user/keys/:key_id": [UsersDeletePublicKeyEndpoint, UsersDeletePublicKeyRequestOptions];
+}
+declare type ActivityListPublicEventsEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type ActivityListPublicEventsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityListRepoEventsEndpoint = {
+ owner: string;
+ repo: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ActivityListRepoEventsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityListPublicEventsForRepoNetworkEndpoint = {
+ owner: string;
+ repo: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ActivityListPublicEventsForRepoNetworkRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityListPublicEventsForOrgEndpoint = {
+ org: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ActivityListPublicEventsForOrgRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityListReceivedEventsForUserEndpoint = {
+ username: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ActivityListReceivedEventsForUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityListReceivedPublicEventsForUserEndpoint = {
+ username: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ActivityListReceivedPublicEventsForUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityListEventsForUserEndpoint = {
+ username: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ActivityListEventsForUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityListPublicEventsForUserEndpoint = {
+ username: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ActivityListPublicEventsForUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityListEventsForOrgEndpoint = {
+ username: string;
+ org: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ActivityListEventsForOrgRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityListFeedsEndpoint = {};
+declare type ActivityListFeedsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityListNotificationsEndpoint = {
+ all?: boolean;
+ participating?: boolean;
+ since?: string;
+ before?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ActivityListNotificationsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityListNotificationsForRepoEndpoint = {
+ owner: string;
+ repo: string;
+ all?: boolean;
+ participating?: boolean;
+ since?: string;
+ before?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ActivityListNotificationsForRepoRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityMarkAsReadEndpoint = {
+ last_read_at?: string;
+};
+declare type ActivityMarkAsReadRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityMarkNotificationsAsReadForRepoEndpoint = {
+ owner: string;
+ repo: string;
+ last_read_at?: string;
+};
+declare type ActivityMarkNotificationsAsReadForRepoRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityGetThreadEndpoint = {
+ thread_id: number;
+};
+declare type ActivityGetThreadRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityMarkThreadAsReadEndpoint = {
+ thread_id: number;
+};
+declare type ActivityMarkThreadAsReadRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityGetThreadSubscriptionEndpoint = {
+ thread_id: number;
+};
+declare type ActivityGetThreadSubscriptionRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivitySetThreadSubscriptionEndpoint = {
+ thread_id: number;
+ ignored?: boolean;
+};
+declare type ActivitySetThreadSubscriptionRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityDeleteThreadSubscriptionEndpoint = {
+ thread_id: number;
+};
+declare type ActivityDeleteThreadSubscriptionRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityListStargazersForRepoEndpoint = {
+ owner: string;
+ repo: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ActivityListStargazersForRepoRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityListReposStarredByUserEndpoint = {
+ username: string;
+ sort?: string;
+ direction?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ActivityListReposStarredByUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityListReposStarredByAuthenticatedUserEndpoint = {
+ sort?: string;
+ direction?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ActivityListReposStarredByAuthenticatedUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityCheckStarringRepoEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ActivityCheckStarringRepoRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityStarRepoEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ActivityStarRepoRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityUnstarRepoEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ActivityUnstarRepoRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityListWatchersForRepoEndpoint = {
+ owner: string;
+ repo: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ActivityListWatchersForRepoRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityListReposWatchedByUserEndpoint = {
+ username: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ActivityListReposWatchedByUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityListWatchedReposForAuthenticatedUserEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type ActivityListWatchedReposForAuthenticatedUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityGetRepoSubscriptionEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ActivityGetRepoSubscriptionRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivitySetRepoSubscriptionEndpoint = {
+ owner: string;
+ repo: string;
+ subscribed?: boolean;
+ ignored?: boolean;
+};
+declare type ActivitySetRepoSubscriptionRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityDeleteRepoSubscriptionEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ActivityDeleteRepoSubscriptionRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityCheckWatchingRepoLegacyEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ActivityCheckWatchingRepoLegacyRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityWatchRepoLegacyEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ActivityWatchRepoLegacyRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ActivityStopWatchingRepoLegacyEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ActivityStopWatchingRepoLegacyRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsGetBySlugEndpoint = {
+ app_slug: string;
+};
+declare type AppsGetBySlugRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsGetAuthenticatedEndpoint = {};
+declare type AppsGetAuthenticatedRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsListInstallationsEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type AppsListInstallationsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsGetInstallationEndpoint = {
+ installation_id: number;
+};
+declare type AppsGetInstallationRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsDeleteInstallationEndpoint = {
+ installation_id: number;
+};
+declare type AppsDeleteInstallationRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsCreateInstallationTokenEndpoint = {
+ installation_id: number;
+ repository_ids?: number[];
+ permissions?: object;
+};
+declare type AppsCreateInstallationTokenRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsGetOrgInstallationEndpoint = {
+ org: string;
+};
+declare type AppsGetOrgInstallationRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsFindOrgInstallationEndpoint = {
+ org: string;
+};
+declare type AppsFindOrgInstallationRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsGetRepoInstallationEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type AppsGetRepoInstallationRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsFindRepoInstallationEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type AppsFindRepoInstallationRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsGetUserInstallationEndpoint = {
+ username: string;
+};
+declare type AppsGetUserInstallationRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsFindUserInstallationEndpoint = {
+ username: string;
+};
+declare type AppsFindUserInstallationRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsCreateFromManifestEndpoint = {
+ code: string;
+};
+declare type AppsCreateFromManifestRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsListReposEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type AppsListReposRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsListInstallationsForAuthenticatedUserEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type AppsListInstallationsForAuthenticatedUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsListInstallationReposForAuthenticatedUserEndpoint = {
+ installation_id: number;
+ per_page?: number;
+ page?: number;
+};
+declare type AppsListInstallationReposForAuthenticatedUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsAddRepoToInstallationEndpoint = {
+ installation_id: number;
+ repository_id: number;
+};
+declare type AppsAddRepoToInstallationRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsRemoveRepoFromInstallationEndpoint = {
+ installation_id: number;
+ repository_id: number;
+};
+declare type AppsRemoveRepoFromInstallationRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsCreateContentAttachmentEndpoint = {
+ content_reference_id: number;
+ title: string;
+ body: string;
+};
+declare type AppsCreateContentAttachmentRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsListPlansEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type AppsListPlansRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsListPlansStubbedEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type AppsListPlansStubbedRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsListAccountsUserOrOrgOnPlanEndpoint = {
+ plan_id: number;
+ sort?: string;
+ direction?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type AppsListAccountsUserOrOrgOnPlanRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsListAccountsUserOrOrgOnPlanStubbedEndpoint = {
+ plan_id: number;
+ sort?: string;
+ direction?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type AppsListAccountsUserOrOrgOnPlanStubbedRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsCheckAccountIsAssociatedWithAnyEndpoint = {
+ account_id: number;
+ per_page?: number;
+ page?: number;
+};
+declare type AppsCheckAccountIsAssociatedWithAnyRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsCheckAccountIsAssociatedWithAnyStubbedEndpoint = {
+ account_id: number;
+ per_page?: number;
+ page?: number;
+};
+declare type AppsCheckAccountIsAssociatedWithAnyStubbedRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsListMarketplacePurchasesForAuthenticatedUserEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type AppsListMarketplacePurchasesForAuthenticatedUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type AppsListMarketplacePurchasesForAuthenticatedUserStubbedEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type AppsListMarketplacePurchasesForAuthenticatedUserStubbedRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ChecksCreateEndpoint = {
+ owner: string;
+ repo: string;
+ name: string;
+ head_sha: string;
+ details_url?: string;
+ external_id?: string;
+ status?: string;
+ started_at?: string;
+ conclusion?: string;
+ completed_at?: string;
+ output?: object;
+ "output.title": string;
+ "output.summary": string;
+ "output.text"?: string;
+ "output.annotations"?: object[];
+ "output.annotations[].path": string;
+ "output.annotations[].start_line": number;
+ "output.annotations[].end_line": number;
+ "output.annotations[].start_column"?: number;
+ "output.annotations[].end_column"?: number;
+ "output.annotations[].annotation_level": string;
+ "output.annotations[].message": string;
+ "output.annotations[].title"?: string;
+ "output.annotations[].raw_details"?: string;
+ "output.images"?: object[];
+ "output.images[].alt": string;
+ "output.images[].image_url": string;
+ "output.images[].caption"?: string;
+ actions?: object[];
+ "actions[].label": string;
+ "actions[].description": string;
+ "actions[].identifier": string;
+};
+declare type ChecksCreateRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ChecksUpdateEndpoint = {
+ owner: string;
+ repo: string;
+ check_run_id: number;
+ name?: string;
+ details_url?: string;
+ external_id?: string;
+ started_at?: string;
+ status?: string;
+ conclusion?: string;
+ completed_at?: string;
+ output?: object;
+ "output.title"?: string;
+ "output.summary": string;
+ "output.text"?: string;
+ "output.annotations"?: object[];
+ "output.annotations[].path": string;
+ "output.annotations[].start_line": number;
+ "output.annotations[].end_line": number;
+ "output.annotations[].start_column"?: number;
+ "output.annotations[].end_column"?: number;
+ "output.annotations[].annotation_level": string;
+ "output.annotations[].message": string;
+ "output.annotations[].title"?: string;
+ "output.annotations[].raw_details"?: string;
+ "output.images"?: object[];
+ "output.images[].alt": string;
+ "output.images[].image_url": string;
+ "output.images[].caption"?: string;
+ actions?: object[];
+ "actions[].label": string;
+ "actions[].description": string;
+ "actions[].identifier": string;
+};
+declare type ChecksUpdateRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ChecksListForRefEndpoint = {
+ owner: string;
+ repo: string;
+ ref: string;
+ check_name?: string;
+ status?: string;
+ filter?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ChecksListForRefRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ChecksListForSuiteEndpoint = {
+ owner: string;
+ repo: string;
+ check_suite_id: number;
+ check_name?: string;
+ status?: string;
+ filter?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ChecksListForSuiteRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ChecksGetEndpoint = {
+ owner: string;
+ repo: string;
+ check_run_id: number;
+};
+declare type ChecksGetRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ChecksListAnnotationsEndpoint = {
+ owner: string;
+ repo: string;
+ check_run_id: number;
+ per_page?: number;
+ page?: number;
+};
+declare type ChecksListAnnotationsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ChecksGetSuiteEndpoint = {
+ owner: string;
+ repo: string;
+ check_suite_id: number;
+};
+declare type ChecksGetSuiteRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ChecksListSuitesForRefEndpoint = {
+ owner: string;
+ repo: string;
+ ref: string;
+ app_id?: number;
+ check_name?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ChecksListSuitesForRefRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ChecksSetSuitesPreferencesEndpoint = {
+ owner: string;
+ repo: string;
+ auto_trigger_checks?: object[];
+ "auto_trigger_checks[].app_id": number;
+ "auto_trigger_checks[].setting": boolean;
+};
+declare type ChecksSetSuitesPreferencesRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ChecksCreateSuiteEndpoint = {
+ owner: string;
+ repo: string;
+ head_sha: string;
+};
+declare type ChecksCreateSuiteRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ChecksRerequestSuiteEndpoint = {
+ owner: string;
+ repo: string;
+ check_suite_id: number;
+};
+declare type ChecksRerequestSuiteRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type CodesOfConductListConductCodesEndpoint = {};
+declare type CodesOfConductListConductCodesRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type CodesOfConductGetConductCodeEndpoint = {
+ key: string;
+};
+declare type CodesOfConductGetConductCodeRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type CodesOfConductGetForRepoEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type CodesOfConductGetForRepoRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type EmojisGetEndpoint = {};
+declare type EmojisGetRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsListPublicForUserEndpoint = {
+ username: string;
+ since?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type GistsListPublicForUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsListEndpoint = {
+ since?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type GistsListRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsListPublicEndpoint = {
+ since?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type GistsListPublicRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsListStarredEndpoint = {
+ since?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type GistsListStarredRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsGetEndpoint = {
+ gist_id: string;
+};
+declare type GistsGetRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsGetRevisionEndpoint = {
+ gist_id: string;
+ sha: string;
+};
+declare type GistsGetRevisionRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsCreateEndpoint = {
+ files: object;
+ "files.content"?: string;
+ description?: string;
+ public?: boolean;
+};
+declare type GistsCreateRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsUpdateEndpoint = {
+ gist_id: string;
+ description?: string;
+ files?: object;
+ "files.content"?: string;
+ "files.filename"?: string;
+};
+declare type GistsUpdateRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsListCommitsEndpoint = {
+ gist_id: string;
+ per_page?: number;
+ page?: number;
+};
+declare type GistsListCommitsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsStarEndpoint = {
+ gist_id: string;
+};
+declare type GistsStarRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsUnstarEndpoint = {
+ gist_id: string;
+};
+declare type GistsUnstarRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsCheckIsStarredEndpoint = {
+ gist_id: string;
+};
+declare type GistsCheckIsStarredRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsForkEndpoint = {
+ gist_id: string;
+};
+declare type GistsForkRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsListForksEndpoint = {
+ gist_id: string;
+ per_page?: number;
+ page?: number;
+};
+declare type GistsListForksRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsDeleteEndpoint = {
+ gist_id: string;
+};
+declare type GistsDeleteRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsListCommentsEndpoint = {
+ gist_id: string;
+ per_page?: number;
+ page?: number;
+};
+declare type GistsListCommentsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsGetCommentEndpoint = {
+ gist_id: string;
+ comment_id: number;
+};
+declare type GistsGetCommentRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsCreateCommentEndpoint = {
+ gist_id: string;
+ body: string;
+};
+declare type GistsCreateCommentRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsUpdateCommentEndpoint = {
+ gist_id: string;
+ comment_id: number;
+ body: string;
+};
+declare type GistsUpdateCommentRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GistsDeleteCommentEndpoint = {
+ gist_id: string;
+ comment_id: number;
+};
+declare type GistsDeleteCommentRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GitGetBlobEndpoint = {
+ owner: string;
+ repo: string;
+ file_sha: string;
+};
+declare type GitGetBlobRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GitCreateBlobEndpoint = {
+ owner: string;
+ repo: string;
+ content: string;
+ encoding?: string;
+};
+declare type GitCreateBlobRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GitGetCommitEndpoint = {
+ owner: string;
+ repo: string;
+ commit_sha: string;
+};
+declare type GitGetCommitRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GitCreateCommitEndpoint = {
+ owner: string;
+ repo: string;
+ message: string;
+ tree: string;
+ parents: string[];
+ author?: object;
+ "author.name"?: string;
+ "author.email"?: string;
+ "author.date"?: string;
+ committer?: object;
+ "committer.name"?: string;
+ "committer.email"?: string;
+ "committer.date"?: string;
+ signature?: string;
+};
+declare type GitCreateCommitRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GitGetRefEndpoint = {
+ owner: string;
+ repo: string;
+ ref: string;
+};
+declare type GitGetRefRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GitListRefsEndpoint = {
+ owner: string;
+ repo: string;
+ namespace?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type GitListRefsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GitCreateRefEndpoint = {
+ owner: string;
+ repo: string;
+ ref: string;
+ sha: string;
+};
+declare type GitCreateRefRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GitUpdateRefEndpoint = {
+ owner: string;
+ repo: string;
+ ref: string;
+ sha: string;
+ force?: boolean;
+};
+declare type GitUpdateRefRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GitDeleteRefEndpoint = {
+ owner: string;
+ repo: string;
+ ref: string;
+};
+declare type GitDeleteRefRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GitGetTagEndpoint = {
+ owner: string;
+ repo: string;
+ tag_sha: string;
+};
+declare type GitGetTagRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GitCreateTagEndpoint = {
+ owner: string;
+ repo: string;
+ tag: string;
+ message: string;
+ object: string;
+ type: string;
+ tagger?: object;
+ "tagger.name"?: string;
+ "tagger.email"?: string;
+ "tagger.date"?: string;
+};
+declare type GitCreateTagRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GitGetTreeEndpoint = {
+ owner: string;
+ repo: string;
+ tree_sha: string;
+ recursive?: number;
+};
+declare type GitGetTreeRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GitCreateTreeEndpoint = {
+ owner: string;
+ repo: string;
+ tree: object[];
+ "tree[].path"?: string;
+ "tree[].mode"?: string;
+ "tree[].type"?: string;
+ "tree[].sha"?: string;
+ "tree[].content"?: string;
+ base_tree?: string;
+};
+declare type GitCreateTreeRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GitignoreListTemplatesEndpoint = {};
+declare type GitignoreListTemplatesRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type GitignoreGetTemplateEndpoint = {
+ name: string;
+};
+declare type GitignoreGetTemplateRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type InteractionsGetRestrictionsForOrgEndpoint = {
+ org: string;
+};
+declare type InteractionsGetRestrictionsForOrgRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type InteractionsAddOrUpdateRestrictionsForOrgEndpoint = {
+ org: string;
+ limit: string;
+};
+declare type InteractionsAddOrUpdateRestrictionsForOrgRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type InteractionsRemoveRestrictionsForOrgEndpoint = {
+ org: string;
+};
+declare type InteractionsRemoveRestrictionsForOrgRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type InteractionsGetRestrictionsForRepoEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type InteractionsGetRestrictionsForRepoRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type InteractionsAddOrUpdateRestrictionsForRepoEndpoint = {
+ owner: string;
+ repo: string;
+ limit: string;
+};
+declare type InteractionsAddOrUpdateRestrictionsForRepoRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type InteractionsRemoveRestrictionsForRepoEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type InteractionsRemoveRestrictionsForRepoRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesListEndpoint = {
+ filter?: string;
+ state?: string;
+ labels?: string;
+ sort?: string;
+ direction?: string;
+ since?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type IssuesListRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesListForAuthenticatedUserEndpoint = {
+ filter?: string;
+ state?: string;
+ labels?: string;
+ sort?: string;
+ direction?: string;
+ since?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type IssuesListForAuthenticatedUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesListForOrgEndpoint = {
+ org: string;
+ filter?: string;
+ state?: string;
+ labels?: string;
+ sort?: string;
+ direction?: string;
+ since?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type IssuesListForOrgRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesListForRepoEndpoint = {
+ owner: string;
+ repo: string;
+ milestone?: string;
+ state?: string;
+ assignee?: string;
+ creator?: string;
+ mentioned?: string;
+ labels?: string;
+ sort?: string;
+ direction?: string;
+ since?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type IssuesListForRepoRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesGetEndpoint = {
+ owner: string;
+ repo: string;
+ issue_number: number;
+ number?: number;
+};
+declare type IssuesGetRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesCreateEndpoint = {
+ owner: string;
+ repo: string;
+ title: string;
+ body?: string;
+ assignee?: string;
+ milestone?: number;
+ labels?: string[];
+ assignees?: string[];
+};
+declare type IssuesCreateRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesUpdateEndpoint = {
+ owner: string;
+ repo: string;
+ issue_number: number;
+ title?: string;
+ body?: string;
+ assignee?: string;
+ state?: string;
+ milestone?: number | null;
+ labels?: string[];
+ assignees?: string[];
+ number?: number;
+};
+declare type IssuesUpdateRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesLockEndpoint = {
+ owner: string;
+ repo: string;
+ issue_number: number;
+ lock_reason?: string;
+ number?: number;
+};
+declare type IssuesLockRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesUnlockEndpoint = {
+ owner: string;
+ repo: string;
+ issue_number: number;
+ number?: number;
+};
+declare type IssuesUnlockRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesListAssigneesEndpoint = {
+ owner: string;
+ repo: string;
+ per_page?: number;
+ page?: number;
+};
+declare type IssuesListAssigneesRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesCheckAssigneeEndpoint = {
+ owner: string;
+ repo: string;
+ assignee: string;
+};
+declare type IssuesCheckAssigneeRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesAddAssigneesEndpoint = {
+ owner: string;
+ repo: string;
+ issue_number: number;
+ assignees?: string[];
+ number?: number;
+};
+declare type IssuesAddAssigneesRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesRemoveAssigneesEndpoint = {
+ owner: string;
+ repo: string;
+ issue_number: number;
+ assignees?: string[];
+ number?: number;
+};
+declare type IssuesRemoveAssigneesRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesListCommentsEndpoint = {
+ owner: string;
+ repo: string;
+ issue_number: number;
+ since?: string;
+ per_page?: number;
+ page?: number;
+ number?: number;
+};
+declare type IssuesListCommentsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesListCommentsForRepoEndpoint = {
+ owner: string;
+ repo: string;
+ sort?: string;
+ direction?: string;
+ since?: string;
+};
+declare type IssuesListCommentsForRepoRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesGetCommentEndpoint = {
+ owner: string;
+ repo: string;
+ comment_id: number;
+ per_page?: number;
+ page?: number;
+};
+declare type IssuesGetCommentRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesCreateCommentEndpoint = {
+ owner: string;
+ repo: string;
+ issue_number: number;
+ body: string;
+ number?: number;
+};
+declare type IssuesCreateCommentRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesUpdateCommentEndpoint = {
+ owner: string;
+ repo: string;
+ comment_id: number;
+ body: string;
+};
+declare type IssuesUpdateCommentRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesDeleteCommentEndpoint = {
+ owner: string;
+ repo: string;
+ comment_id: number;
+};
+declare type IssuesDeleteCommentRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesListEventsEndpoint = {
+ owner: string;
+ repo: string;
+ issue_number: number;
+ per_page?: number;
+ page?: number;
+ number?: number;
+};
+declare type IssuesListEventsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesListEventsForRepoEndpoint = {
+ owner: string;
+ repo: string;
+ per_page?: number;
+ page?: number;
+};
+declare type IssuesListEventsForRepoRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesGetEventEndpoint = {
+ owner: string;
+ repo: string;
+ event_id: number;
+};
+declare type IssuesGetEventRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesListLabelsForRepoEndpoint = {
+ owner: string;
+ repo: string;
+ per_page?: number;
+ page?: number;
+};
+declare type IssuesListLabelsForRepoRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesGetLabelEndpoint = {
+ owner: string;
+ repo: string;
+ name: string;
+};
+declare type IssuesGetLabelRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesCreateLabelEndpoint = {
+ owner: string;
+ repo: string;
+ name: string;
+ color: string;
+ description?: string;
+};
+declare type IssuesCreateLabelRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesUpdateLabelEndpoint = {
+ owner: string;
+ repo: string;
+ current_name: string;
+ name?: string;
+ color?: string;
+ description?: string;
+};
+declare type IssuesUpdateLabelRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesDeleteLabelEndpoint = {
+ owner: string;
+ repo: string;
+ name: string;
+};
+declare type IssuesDeleteLabelRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesListLabelsOnIssueEndpoint = {
+ owner: string;
+ repo: string;
+ issue_number: number;
+ per_page?: number;
+ page?: number;
+ number?: number;
+};
+declare type IssuesListLabelsOnIssueRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesAddLabelsEndpoint = {
+ owner: string;
+ repo: string;
+ issue_number: number;
+ labels: string[];
+ number?: number;
+};
+declare type IssuesAddLabelsRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesRemoveLabelEndpoint = {
+ owner: string;
+ repo: string;
+ issue_number: number;
+ name: string;
+ number?: number;
+};
+declare type IssuesRemoveLabelRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesReplaceLabelsEndpoint = {
+ owner: string;
+ repo: string;
+ issue_number: number;
+ labels?: string[];
+ number?: number;
+};
+declare type IssuesReplaceLabelsRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesRemoveLabelsEndpoint = {
+ owner: string;
+ repo: string;
+ issue_number: number;
+ number?: number;
+};
+declare type IssuesRemoveLabelsRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesListLabelsForMilestoneEndpoint = {
+ owner: string;
+ repo: string;
+ milestone_number: number;
+ per_page?: number;
+ page?: number;
+ number?: number;
+};
+declare type IssuesListLabelsForMilestoneRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesListMilestonesForRepoEndpoint = {
+ owner: string;
+ repo: string;
+ state?: string;
+ sort?: string;
+ direction?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type IssuesListMilestonesForRepoRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesGetMilestoneEndpoint = {
+ owner: string;
+ repo: string;
+ milestone_number: number;
+ number?: number;
+};
+declare type IssuesGetMilestoneRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesCreateMilestoneEndpoint = {
+ owner: string;
+ repo: string;
+ title: string;
+ state?: string;
+ description?: string;
+ due_on?: string;
+};
+declare type IssuesCreateMilestoneRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesUpdateMilestoneEndpoint = {
+ owner: string;
+ repo: string;
+ milestone_number: number;
+ title?: string;
+ state?: string;
+ description?: string;
+ due_on?: string;
+ number?: number;
+};
+declare type IssuesUpdateMilestoneRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesDeleteMilestoneEndpoint = {
+ owner: string;
+ repo: string;
+ milestone_number: number;
+ number?: number;
+};
+declare type IssuesDeleteMilestoneRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type IssuesListEventsForTimelineEndpoint = {
+ owner: string;
+ repo: string;
+ issue_number: number;
+ per_page?: number;
+ page?: number;
+ number?: number;
+};
+declare type IssuesListEventsForTimelineRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type LicensesListCommonlyUsedEndpoint = {};
+declare type LicensesListCommonlyUsedRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type LicensesListEndpoint = {};
+declare type LicensesListRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type LicensesGetEndpoint = {
+ license: string;
+};
+declare type LicensesGetRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type LicensesGetForRepoEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type LicensesGetForRepoRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MarkdownRenderEndpoint = {
+ text: string;
+ mode?: string;
+ context?: string;
+};
+declare type MarkdownRenderRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MarkdownRenderRawEndpoint = {
+ data: string;
+};
+declare type MarkdownRenderRawRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MetaGetEndpoint = {};
+declare type MetaGetRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsStartForOrgEndpoint = {
+ org: string;
+ repositories: string[];
+ lock_repositories?: boolean;
+ exclude_attachments?: boolean;
+};
+declare type MigrationsStartForOrgRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsListForOrgEndpoint = {
+ org: string;
+ per_page?: number;
+ page?: number;
+};
+declare type MigrationsListForOrgRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsGetStatusForOrgEndpoint = {
+ org: string;
+ migration_id: number;
+};
+declare type MigrationsGetStatusForOrgRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsGetArchiveForOrgEndpoint = {
+ org: string;
+ migration_id: number;
+};
+declare type MigrationsGetArchiveForOrgRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsDeleteArchiveForOrgEndpoint = {
+ org: string;
+ migration_id: number;
+};
+declare type MigrationsDeleteArchiveForOrgRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsUnlockRepoForOrgEndpoint = {
+ org: string;
+ migration_id: number;
+ repo_name: string;
+};
+declare type MigrationsUnlockRepoForOrgRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsStartImportEndpoint = {
+ owner: string;
+ repo: string;
+ vcs_url: string;
+ vcs?: string;
+ vcs_username?: string;
+ vcs_password?: string;
+ tfvc_project?: string;
+};
+declare type MigrationsStartImportRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsGetImportProgressEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type MigrationsGetImportProgressRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsUpdateImportEndpoint = {
+ owner: string;
+ repo: string;
+ vcs_username?: string;
+ vcs_password?: string;
+};
+declare type MigrationsUpdateImportRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsGetCommitAuthorsEndpoint = {
+ owner: string;
+ repo: string;
+ since?: string;
+};
+declare type MigrationsGetCommitAuthorsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsMapCommitAuthorEndpoint = {
+ owner: string;
+ repo: string;
+ author_id: number;
+ email?: string;
+ name?: string;
+};
+declare type MigrationsMapCommitAuthorRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsSetLfsPreferenceEndpoint = {
+ owner: string;
+ repo: string;
+ use_lfs: string;
+};
+declare type MigrationsSetLfsPreferenceRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsGetLargeFilesEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type MigrationsGetLargeFilesRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsCancelImportEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type MigrationsCancelImportRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsStartForAuthenticatedUserEndpoint = {
+ repositories: string[];
+ lock_repositories?: boolean;
+ exclude_attachments?: boolean;
+};
+declare type MigrationsStartForAuthenticatedUserRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsListForAuthenticatedUserEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type MigrationsListForAuthenticatedUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsGetStatusForAuthenticatedUserEndpoint = {
+ migration_id: number;
+};
+declare type MigrationsGetStatusForAuthenticatedUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsGetArchiveForAuthenticatedUserEndpoint = {
+ migration_id: number;
+};
+declare type MigrationsGetArchiveForAuthenticatedUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsDeleteArchiveForAuthenticatedUserEndpoint = {
+ migration_id: number;
+};
+declare type MigrationsDeleteArchiveForAuthenticatedUserRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type MigrationsUnlockRepoForAuthenticatedUserEndpoint = {
+ migration_id: number;
+ repo_name: string;
+};
+declare type MigrationsUnlockRepoForAuthenticatedUserRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OauthAuthorizationsListGrantsEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type OauthAuthorizationsListGrantsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OauthAuthorizationsGetGrantEndpoint = {
+ grant_id: number;
+};
+declare type OauthAuthorizationsGetGrantRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OauthAuthorizationsDeleteGrantEndpoint = {
+ grant_id: number;
+};
+declare type OauthAuthorizationsDeleteGrantRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OauthAuthorizationsListAuthorizationsEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type OauthAuthorizationsListAuthorizationsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OauthAuthorizationsGetAuthorizationEndpoint = {
+ authorization_id: number;
+};
+declare type OauthAuthorizationsGetAuthorizationRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OauthAuthorizationsCreateAuthorizationEndpoint = {
+ scopes?: string[];
+ note: string;
+ note_url?: string;
+ client_id?: string;
+ client_secret?: string;
+ fingerprint?: string;
+};
+declare type OauthAuthorizationsCreateAuthorizationRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OauthAuthorizationsGetOrCreateAuthorizationForAppEndpoint = {
+ client_id: string;
+ client_secret: string;
+ scopes?: string[];
+ note?: string;
+ note_url?: string;
+ fingerprint?: string;
+};
+declare type OauthAuthorizationsGetOrCreateAuthorizationForAppRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OauthAuthorizationsGetOrCreateAuthorizationForAppAndFingerprintEndpoint = {
+ client_id: string;
+ fingerprint: string;
+ client_secret: string;
+ scopes?: string[];
+ note?: string;
+ note_url?: string;
+};
+declare type OauthAuthorizationsGetOrCreateAuthorizationForAppAndFingerprintRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OauthAuthorizationsGetOrCreateAuthorizationForAppFingerprintEndpoint = {
+ client_id: string;
+ fingerprint: string;
+ client_secret: string;
+ scopes?: string[];
+ note?: string;
+ note_url?: string;
+};
+declare type OauthAuthorizationsGetOrCreateAuthorizationForAppFingerprintRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OauthAuthorizationsUpdateAuthorizationEndpoint = {
+ authorization_id: number;
+ scopes?: string[];
+ add_scopes?: string[];
+ remove_scopes?: string[];
+ note?: string;
+ note_url?: string;
+ fingerprint?: string;
+};
+declare type OauthAuthorizationsUpdateAuthorizationRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OauthAuthorizationsDeleteAuthorizationEndpoint = {
+ authorization_id: number;
+};
+declare type OauthAuthorizationsDeleteAuthorizationRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OauthAuthorizationsCheckAuthorizationEndpoint = {
+ client_id: string;
+ access_token: string;
+};
+declare type OauthAuthorizationsCheckAuthorizationRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OauthAuthorizationsResetAuthorizationEndpoint = {
+ client_id: string;
+ access_token: string;
+};
+declare type OauthAuthorizationsResetAuthorizationRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OauthAuthorizationsRevokeAuthorizationForApplicationEndpoint = {
+ client_id: string;
+ access_token: string;
+};
+declare type OauthAuthorizationsRevokeAuthorizationForApplicationRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OauthAuthorizationsRevokeGrantForApplicationEndpoint = {
+ client_id: string;
+ access_token: string;
+};
+declare type OauthAuthorizationsRevokeGrantForApplicationRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsListForAuthenticatedUserEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type OrgsListForAuthenticatedUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsListEndpoint = {
+ since?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type OrgsListRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsListForUserEndpoint = {
+ username: string;
+ per_page?: number;
+ page?: number;
+};
+declare type OrgsListForUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsGetEndpoint = {
+ org: string;
+};
+declare type OrgsGetRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsUpdateEndpoint = {
+ org: string;
+ billing_email?: string;
+ company?: string;
+ email?: string;
+ location?: string;
+ name?: string;
+ description?: string;
+ has_organization_projects?: boolean;
+ has_repository_projects?: boolean;
+ default_repository_permission?: string;
+ members_can_create_repositories?: boolean;
+ members_allowed_repository_creation_type?: string;
+};
+declare type OrgsUpdateRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsListCredentialAuthorizationsEndpoint = {
+ org: string;
+};
+declare type OrgsListCredentialAuthorizationsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsRemoveCredentialAuthorizationEndpoint = {
+ org: string;
+ credential_id: number;
+};
+declare type OrgsRemoveCredentialAuthorizationRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsListBlockedUsersEndpoint = {
+ org: string;
+};
+declare type OrgsListBlockedUsersRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsCheckBlockedUserEndpoint = {
+ org: string;
+ username: string;
+};
+declare type OrgsCheckBlockedUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsBlockUserEndpoint = {
+ org: string;
+ username: string;
+};
+declare type OrgsBlockUserRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsUnblockUserEndpoint = {
+ org: string;
+ username: string;
+};
+declare type OrgsUnblockUserRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsListHooksEndpoint = {
+ org: string;
+ per_page?: number;
+ page?: number;
+};
+declare type OrgsListHooksRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsGetHookEndpoint = {
+ org: string;
+ hook_id: number;
+};
+declare type OrgsGetHookRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsCreateHookEndpoint = {
+ org: string;
+ name: string;
+ config: object;
+ "config.url": string;
+ "config.content_type"?: string;
+ "config.secret"?: string;
+ "config.insecure_ssl"?: string;
+ events?: string[];
+ active?: boolean;
+};
+declare type OrgsCreateHookRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsUpdateHookEndpoint = {
+ org: string;
+ hook_id: number;
+ config?: object;
+ "config.url": string;
+ "config.content_type"?: string;
+ "config.secret"?: string;
+ "config.insecure_ssl"?: string;
+ events?: string[];
+ active?: boolean;
+};
+declare type OrgsUpdateHookRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsPingHookEndpoint = {
+ org: string;
+ hook_id: number;
+};
+declare type OrgsPingHookRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsDeleteHookEndpoint = {
+ org: string;
+ hook_id: number;
+};
+declare type OrgsDeleteHookRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsListMembersEndpoint = {
+ org: string;
+ filter?: string;
+ role?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type OrgsListMembersRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsCheckMembershipEndpoint = {
+ org: string;
+ username: string;
+};
+declare type OrgsCheckMembershipRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsRemoveMemberEndpoint = {
+ org: string;
+ username: string;
+};
+declare type OrgsRemoveMemberRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsListPublicMembersEndpoint = {
+ org: string;
+ per_page?: number;
+ page?: number;
+};
+declare type OrgsListPublicMembersRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsCheckPublicMembershipEndpoint = {
+ org: string;
+ username: string;
+};
+declare type OrgsCheckPublicMembershipRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsPublicizeMembershipEndpoint = {
+ org: string;
+ username: string;
+};
+declare type OrgsPublicizeMembershipRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsConcealMembershipEndpoint = {
+ org: string;
+ username: string;
+};
+declare type OrgsConcealMembershipRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsGetMembershipEndpoint = {
+ org: string;
+ username: string;
+};
+declare type OrgsGetMembershipRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsAddOrUpdateMembershipEndpoint = {
+ org: string;
+ username: string;
+ role?: string;
+};
+declare type OrgsAddOrUpdateMembershipRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsRemoveMembershipEndpoint = {
+ org: string;
+ username: string;
+};
+declare type OrgsRemoveMembershipRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsListInvitationTeamsEndpoint = {
+ org: string;
+ invitation_id: number;
+ per_page?: number;
+ page?: number;
+};
+declare type OrgsListInvitationTeamsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsListPendingInvitationsEndpoint = {
+ org: string;
+ per_page?: number;
+ page?: number;
+};
+declare type OrgsListPendingInvitationsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsCreateInvitationEndpoint = {
+ org: string;
+ invitee_id?: number;
+ email?: string;
+ role?: string;
+ team_ids?: number[];
+};
+declare type OrgsCreateInvitationRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsListMembershipsEndpoint = {
+ state?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type OrgsListMembershipsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsGetMembershipForAuthenticatedUserEndpoint = {
+ org: string;
+};
+declare type OrgsGetMembershipForAuthenticatedUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsUpdateMembershipEndpoint = {
+ org: string;
+ state: string;
+};
+declare type OrgsUpdateMembershipRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsListOutsideCollaboratorsEndpoint = {
+ org: string;
+ filter?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type OrgsListOutsideCollaboratorsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsRemoveOutsideCollaboratorEndpoint = {
+ org: string;
+ username: string;
+};
+declare type OrgsRemoveOutsideCollaboratorRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type OrgsConvertMemberToOutsideCollaboratorEndpoint = {
+ org: string;
+ username: string;
+};
+declare type OrgsConvertMemberToOutsideCollaboratorRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsListForRepoEndpoint = {
+ owner: string;
+ repo: string;
+ state?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ProjectsListForRepoRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsListForOrgEndpoint = {
+ org: string;
+ state?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ProjectsListForOrgRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsListForUserEndpoint = {
+ username: string;
+ state?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ProjectsListForUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsGetEndpoint = {
+ project_id: number;
+ per_page?: number;
+ page?: number;
+};
+declare type ProjectsGetRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsCreateForRepoEndpoint = {
+ owner: string;
+ repo: string;
+ name: string;
+ body?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ProjectsCreateForRepoRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsCreateForOrgEndpoint = {
+ org: string;
+ name: string;
+ body?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ProjectsCreateForOrgRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsCreateForAuthenticatedUserEndpoint = {
+ name: string;
+ body?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ProjectsCreateForAuthenticatedUserRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsUpdateEndpoint = {
+ project_id: number;
+ name?: string;
+ body?: string;
+ state?: string;
+ organization_permission?: string;
+ private?: boolean;
+ per_page?: number;
+ page?: number;
+};
+declare type ProjectsUpdateRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsDeleteEndpoint = {
+ project_id: number;
+};
+declare type ProjectsDeleteRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsListCardsEndpoint = {
+ column_id: number;
+ archived_state?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ProjectsListCardsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsGetCardEndpoint = {
+ card_id: number;
+};
+declare type ProjectsGetCardRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsCreateCardEndpoint = {
+ column_id: number;
+ note?: string;
+ content_id?: number;
+ content_type?: string;
+};
+declare type ProjectsCreateCardRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsUpdateCardEndpoint = {
+ card_id: number;
+ note?: string;
+ archived?: boolean;
+};
+declare type ProjectsUpdateCardRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsDeleteCardEndpoint = {
+ card_id: number;
+};
+declare type ProjectsDeleteCardRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsMoveCardEndpoint = {
+ card_id: number;
+ position: string;
+ column_id?: number;
+};
+declare type ProjectsMoveCardRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsListCollaboratorsEndpoint = {
+ project_id: number;
+ affiliation?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ProjectsListCollaboratorsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsReviewUserPermissionLevelEndpoint = {
+ project_id: number;
+ username: string;
+};
+declare type ProjectsReviewUserPermissionLevelRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsAddCollaboratorEndpoint = {
+ project_id: number;
+ username: string;
+ permission?: string;
+};
+declare type ProjectsAddCollaboratorRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsRemoveCollaboratorEndpoint = {
+ project_id: number;
+ username: string;
+};
+declare type ProjectsRemoveCollaboratorRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsListColumnsEndpoint = {
+ project_id: number;
+ per_page?: number;
+ page?: number;
+};
+declare type ProjectsListColumnsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsGetColumnEndpoint = {
+ column_id: number;
+};
+declare type ProjectsGetColumnRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsCreateColumnEndpoint = {
+ project_id: number;
+ name: string;
+};
+declare type ProjectsCreateColumnRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsUpdateColumnEndpoint = {
+ column_id: number;
+ name: string;
+};
+declare type ProjectsUpdateColumnRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsDeleteColumnEndpoint = {
+ column_id: number;
+};
+declare type ProjectsDeleteColumnRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ProjectsMoveColumnEndpoint = {
+ column_id: number;
+ position: string;
+};
+declare type ProjectsMoveColumnRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsListEndpoint = {
+ owner: string;
+ repo: string;
+ state?: string;
+ head?: string;
+ base?: string;
+ sort?: string;
+ direction?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type PullsListRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsGetEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ number?: number;
+};
+declare type PullsGetRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsCreateEndpoint = {
+ owner: string;
+ repo: string;
+ title: string;
+ head: string;
+ base: string;
+ body?: string;
+ maintainer_can_modify?: boolean;
+ draft?: boolean;
+};
+declare type PullsCreateRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsCreateFromIssueEndpoint = {
+ owner: string;
+ repo: string;
+ issue: number;
+ head: string;
+ base: string;
+ maintainer_can_modify?: boolean;
+ draft?: boolean;
+};
+declare type PullsCreateFromIssueRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsUpdateBranchEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ expected_head_sha?: string;
+};
+declare type PullsUpdateBranchRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsUpdateEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ title?: string;
+ body?: string;
+ state?: string;
+ base?: string;
+ maintainer_can_modify?: boolean;
+ number?: number;
+};
+declare type PullsUpdateRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsListCommitsEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ per_page?: number;
+ page?: number;
+ number?: number;
+};
+declare type PullsListCommitsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsListFilesEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ per_page?: number;
+ page?: number;
+ number?: number;
+};
+declare type PullsListFilesRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsCheckIfMergedEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ number?: number;
+};
+declare type PullsCheckIfMergedRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsMergeEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ commit_title?: string;
+ commit_message?: string;
+ sha?: string;
+ merge_method?: string;
+ number?: number;
+};
+declare type PullsMergeRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsListCommentsEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ sort?: string;
+ direction?: string;
+ since?: string;
+ per_page?: number;
+ page?: number;
+ number?: number;
+};
+declare type PullsListCommentsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsListCommentsForRepoEndpoint = {
+ owner: string;
+ repo: string;
+ sort?: string;
+ direction?: string;
+ since?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type PullsListCommentsForRepoRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsGetCommentEndpoint = {
+ owner: string;
+ repo: string;
+ comment_id: number;
+};
+declare type PullsGetCommentRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsCreateCommentEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ body: string;
+ commit_id: string;
+ path: string;
+ position: number;
+ number?: number;
+};
+declare type PullsCreateCommentRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsCreateCommentReplyEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ body: string;
+ in_reply_to: number;
+ number?: number;
+};
+declare type PullsCreateCommentReplyRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsUpdateCommentEndpoint = {
+ owner: string;
+ repo: string;
+ comment_id: number;
+ body: string;
+};
+declare type PullsUpdateCommentRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsDeleteCommentEndpoint = {
+ owner: string;
+ repo: string;
+ comment_id: number;
+};
+declare type PullsDeleteCommentRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsListReviewRequestsEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ per_page?: number;
+ page?: number;
+ number?: number;
+};
+declare type PullsListReviewRequestsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsCreateReviewRequestEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ reviewers?: string[];
+ team_reviewers?: string[];
+ number?: number;
+};
+declare type PullsCreateReviewRequestRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsDeleteReviewRequestEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ reviewers?: string[];
+ team_reviewers?: string[];
+ number?: number;
+};
+declare type PullsDeleteReviewRequestRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsListReviewsEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ per_page?: number;
+ page?: number;
+ number?: number;
+};
+declare type PullsListReviewsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsGetReviewEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ review_id: number;
+ number?: number;
+};
+declare type PullsGetReviewRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsDeletePendingReviewEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ review_id: number;
+ number?: number;
+};
+declare type PullsDeletePendingReviewRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsGetCommentsForReviewEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ review_id: number;
+ per_page?: number;
+ page?: number;
+ number?: number;
+};
+declare type PullsGetCommentsForReviewRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsCreateReviewEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ commit_id?: string;
+ body?: string;
+ event?: string;
+ comments?: object[];
+ "comments[].path": string;
+ "comments[].position": number;
+ "comments[].body": string;
+ number?: number;
+};
+declare type PullsCreateReviewRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsUpdateReviewEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ review_id: number;
+ body: string;
+ number?: number;
+};
+declare type PullsUpdateReviewRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsSubmitReviewEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ review_id: number;
+ body?: string;
+ event: string;
+ number?: number;
+};
+declare type PullsSubmitReviewRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type PullsDismissReviewEndpoint = {
+ owner: string;
+ repo: string;
+ pull_number: number;
+ review_id: number;
+ message: string;
+ number?: number;
+};
+declare type PullsDismissReviewRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type RateLimitGetEndpoint = {};
+declare type RateLimitGetRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReactionsListForCommitCommentEndpoint = {
+ owner: string;
+ repo: string;
+ comment_id: number;
+ content?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReactionsListForCommitCommentRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReactionsCreateForCommitCommentEndpoint = {
+ owner: string;
+ repo: string;
+ comment_id: number;
+ content: string;
+};
+declare type ReactionsCreateForCommitCommentRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReactionsListForIssueEndpoint = {
+ owner: string;
+ repo: string;
+ issue_number: number;
+ content?: string;
+ per_page?: number;
+ page?: number;
+ number?: number;
+};
+declare type ReactionsListForIssueRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReactionsCreateForIssueEndpoint = {
+ owner: string;
+ repo: string;
+ issue_number: number;
+ content: string;
+ number?: number;
+};
+declare type ReactionsCreateForIssueRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReactionsListForIssueCommentEndpoint = {
+ owner: string;
+ repo: string;
+ comment_id: number;
+ content?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReactionsListForIssueCommentRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReactionsCreateForIssueCommentEndpoint = {
+ owner: string;
+ repo: string;
+ comment_id: number;
+ content: string;
+};
+declare type ReactionsCreateForIssueCommentRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReactionsListForPullRequestReviewCommentEndpoint = {
+ owner: string;
+ repo: string;
+ comment_id: number;
+ content?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReactionsListForPullRequestReviewCommentRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReactionsCreateForPullRequestReviewCommentEndpoint = {
+ owner: string;
+ repo: string;
+ comment_id: number;
+ content: string;
+};
+declare type ReactionsCreateForPullRequestReviewCommentRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReactionsListForTeamDiscussionEndpoint = {
+ team_id: number;
+ discussion_number: number;
+ content?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReactionsListForTeamDiscussionRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReactionsCreateForTeamDiscussionEndpoint = {
+ team_id: number;
+ discussion_number: number;
+ content: string;
+};
+declare type ReactionsCreateForTeamDiscussionRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReactionsListForTeamDiscussionCommentEndpoint = {
+ team_id: number;
+ discussion_number: number;
+ comment_number: number;
+ content?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReactionsListForTeamDiscussionCommentRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReactionsCreateForTeamDiscussionCommentEndpoint = {
+ team_id: number;
+ discussion_number: number;
+ comment_number: number;
+ content: string;
+};
+declare type ReactionsCreateForTeamDiscussionCommentRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReactionsDeleteEndpoint = {
+ reaction_id: number;
+};
+declare type ReactionsDeleteRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListEndpoint = {
+ visibility?: string;
+ affiliation?: string;
+ type?: string;
+ sort?: string;
+ direction?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListForUserEndpoint = {
+ username: string;
+ type?: string;
+ sort?: string;
+ direction?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListForUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListForOrgEndpoint = {
+ org: string;
+ type?: string;
+ sort?: string;
+ direction?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListForOrgRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListPublicEndpoint = {
+ since?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListPublicRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposCreateForAuthenticatedUserEndpoint = {
+ name: string;
+ description?: string;
+ homepage?: string;
+ private?: boolean;
+ has_issues?: boolean;
+ has_projects?: boolean;
+ has_wiki?: boolean;
+ is_template?: boolean;
+ team_id?: number;
+ auto_init?: boolean;
+ gitignore_template?: string;
+ license_template?: string;
+ allow_squash_merge?: boolean;
+ allow_merge_commit?: boolean;
+ allow_rebase_merge?: boolean;
+};
+declare type ReposCreateForAuthenticatedUserRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposCreateInOrgEndpoint = {
+ org: string;
+ name: string;
+ description?: string;
+ homepage?: string;
+ private?: boolean;
+ has_issues?: boolean;
+ has_projects?: boolean;
+ has_wiki?: boolean;
+ is_template?: boolean;
+ team_id?: number;
+ auto_init?: boolean;
+ gitignore_template?: string;
+ license_template?: string;
+ allow_squash_merge?: boolean;
+ allow_merge_commit?: boolean;
+ allow_rebase_merge?: boolean;
+};
+declare type ReposCreateInOrgRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposCreateUsingTemplateEndpoint = {
+ template_owner: string;
+ template_repo: string;
+ owner?: string;
+ name: string;
+ description?: string;
+ private?: boolean;
+};
+declare type ReposCreateUsingTemplateRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposGetRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposUpdateEndpoint = {
+ owner: string;
+ repo: string;
+ name?: string;
+ description?: string;
+ homepage?: string;
+ private?: boolean;
+ has_issues?: boolean;
+ has_projects?: boolean;
+ has_wiki?: boolean;
+ is_template?: boolean;
+ default_branch?: string;
+ allow_squash_merge?: boolean;
+ allow_merge_commit?: boolean;
+ allow_rebase_merge?: boolean;
+ archived?: boolean;
+};
+declare type ReposUpdateRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListTopicsEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposListTopicsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposReplaceTopicsEndpoint = {
+ owner: string;
+ repo: string;
+ names: string[];
+};
+declare type ReposReplaceTopicsRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposCheckVulnerabilityAlertsEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposCheckVulnerabilityAlertsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposEnableVulnerabilityAlertsEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposEnableVulnerabilityAlertsRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposDisableVulnerabilityAlertsEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposDisableVulnerabilityAlertsRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposEnableAutomatedSecurityFixesEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposEnableAutomatedSecurityFixesRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposDisableAutomatedSecurityFixesEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposDisableAutomatedSecurityFixesRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListContributorsEndpoint = {
+ owner: string;
+ repo: string;
+ anon?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListContributorsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListLanguagesEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposListLanguagesRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListTeamsEndpoint = {
+ owner: string;
+ repo: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListTeamsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListTagsEndpoint = {
+ owner: string;
+ repo: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListTagsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposDeleteEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposDeleteRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposTransferEndpoint = {
+ owner: string;
+ repo: string;
+ new_owner?: string;
+ team_ids?: number[];
+};
+declare type ReposTransferRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListBranchesEndpoint = {
+ owner: string;
+ repo: string;
+ protected?: boolean;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListBranchesRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetBranchEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+};
+declare type ReposGetBranchRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetBranchProtectionEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+};
+declare type ReposGetBranchProtectionRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposUpdateBranchProtectionEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+ required_status_checks: object | null;
+ "required_status_checks.strict": boolean;
+ "required_status_checks.contexts": string[];
+ enforce_admins: boolean | null;
+ required_pull_request_reviews: object | null;
+ "required_pull_request_reviews.dismissal_restrictions"?: object;
+ "required_pull_request_reviews.dismissal_restrictions.users"?: string[];
+ "required_pull_request_reviews.dismissal_restrictions.teams"?: string[];
+ "required_pull_request_reviews.dismiss_stale_reviews"?: boolean;
+ "required_pull_request_reviews.require_code_owner_reviews"?: boolean;
+ "required_pull_request_reviews.required_approving_review_count"?: number;
+ restrictions: object | null;
+ "restrictions.users"?: string[];
+ "restrictions.teams"?: string[];
+};
+declare type ReposUpdateBranchProtectionRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposRemoveBranchProtectionEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+};
+declare type ReposRemoveBranchProtectionRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetProtectedBranchRequiredStatusChecksEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+};
+declare type ReposGetProtectedBranchRequiredStatusChecksRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposUpdateProtectedBranchRequiredStatusChecksEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+ strict?: boolean;
+ contexts?: string[];
+};
+declare type ReposUpdateProtectedBranchRequiredStatusChecksRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposRemoveProtectedBranchRequiredStatusChecksEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+};
+declare type ReposRemoveProtectedBranchRequiredStatusChecksRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListProtectedBranchRequiredStatusChecksContextsEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+};
+declare type ReposListProtectedBranchRequiredStatusChecksContextsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposReplaceProtectedBranchRequiredStatusChecksContextsEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+ contexts: string[];
+};
+declare type ReposReplaceProtectedBranchRequiredStatusChecksContextsRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposAddProtectedBranchRequiredStatusChecksContextsEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+ contexts: string[];
+};
+declare type ReposAddProtectedBranchRequiredStatusChecksContextsRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposRemoveProtectedBranchRequiredStatusChecksContextsEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+ contexts: string[];
+};
+declare type ReposRemoveProtectedBranchRequiredStatusChecksContextsRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetProtectedBranchPullRequestReviewEnforcementEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+};
+declare type ReposGetProtectedBranchPullRequestReviewEnforcementRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposUpdateProtectedBranchPullRequestReviewEnforcementEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+ dismissal_restrictions?: object;
+ "dismissal_restrictions.users"?: string[];
+ "dismissal_restrictions.teams"?: string[];
+ dismiss_stale_reviews?: boolean;
+ require_code_owner_reviews?: boolean;
+ required_approving_review_count?: number;
+};
+declare type ReposUpdateProtectedBranchPullRequestReviewEnforcementRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposRemoveProtectedBranchPullRequestReviewEnforcementEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+};
+declare type ReposRemoveProtectedBranchPullRequestReviewEnforcementRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetProtectedBranchRequiredSignaturesEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+};
+declare type ReposGetProtectedBranchRequiredSignaturesRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposAddProtectedBranchRequiredSignaturesEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+};
+declare type ReposAddProtectedBranchRequiredSignaturesRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposRemoveProtectedBranchRequiredSignaturesEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+};
+declare type ReposRemoveProtectedBranchRequiredSignaturesRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetProtectedBranchAdminEnforcementEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+};
+declare type ReposGetProtectedBranchAdminEnforcementRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposAddProtectedBranchAdminEnforcementEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+};
+declare type ReposAddProtectedBranchAdminEnforcementRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposRemoveProtectedBranchAdminEnforcementEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+};
+declare type ReposRemoveProtectedBranchAdminEnforcementRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetProtectedBranchRestrictionsEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+};
+declare type ReposGetProtectedBranchRestrictionsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposRemoveProtectedBranchRestrictionsEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+};
+declare type ReposRemoveProtectedBranchRestrictionsRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListProtectedBranchTeamRestrictionsEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListProtectedBranchTeamRestrictionsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposReplaceProtectedBranchTeamRestrictionsEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+ teams: string[];
+};
+declare type ReposReplaceProtectedBranchTeamRestrictionsRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposAddProtectedBranchTeamRestrictionsEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+ teams: string[];
+};
+declare type ReposAddProtectedBranchTeamRestrictionsRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposRemoveProtectedBranchTeamRestrictionsEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+ teams: string[];
+};
+declare type ReposRemoveProtectedBranchTeamRestrictionsRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListProtectedBranchUserRestrictionsEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+};
+declare type ReposListProtectedBranchUserRestrictionsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposReplaceProtectedBranchUserRestrictionsEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+ users: string[];
+};
+declare type ReposReplaceProtectedBranchUserRestrictionsRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposAddProtectedBranchUserRestrictionsEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+ users: string[];
+};
+declare type ReposAddProtectedBranchUserRestrictionsRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposRemoveProtectedBranchUserRestrictionsEndpoint = {
+ owner: string;
+ repo: string;
+ branch: string;
+ users: string[];
+};
+declare type ReposRemoveProtectedBranchUserRestrictionsRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListCollaboratorsEndpoint = {
+ owner: string;
+ repo: string;
+ affiliation?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListCollaboratorsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposCheckCollaboratorEndpoint = {
+ owner: string;
+ repo: string;
+ username: string;
+};
+declare type ReposCheckCollaboratorRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetCollaboratorPermissionLevelEndpoint = {
+ owner: string;
+ repo: string;
+ username: string;
+};
+declare type ReposGetCollaboratorPermissionLevelRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposAddCollaboratorEndpoint = {
+ owner: string;
+ repo: string;
+ username: string;
+ permission?: string;
+};
+declare type ReposAddCollaboratorRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposRemoveCollaboratorEndpoint = {
+ owner: string;
+ repo: string;
+ username: string;
+};
+declare type ReposRemoveCollaboratorRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListCommitCommentsEndpoint = {
+ owner: string;
+ repo: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListCommitCommentsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListCommentsForCommitEndpoint = {
+ owner: string;
+ repo: string;
+ commit_sha: string;
+ per_page?: number;
+ page?: number;
+ ref?: string;
+};
+declare type ReposListCommentsForCommitRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposCreateCommitCommentEndpoint = {
+ owner: string;
+ repo: string;
+ commit_sha: string;
+ body: string;
+ path?: string;
+ position?: number;
+ line?: number;
+ sha?: string;
+};
+declare type ReposCreateCommitCommentRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetCommitCommentEndpoint = {
+ owner: string;
+ repo: string;
+ comment_id: number;
+};
+declare type ReposGetCommitCommentRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposUpdateCommitCommentEndpoint = {
+ owner: string;
+ repo: string;
+ comment_id: number;
+ body: string;
+};
+declare type ReposUpdateCommitCommentRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposDeleteCommitCommentEndpoint = {
+ owner: string;
+ repo: string;
+ comment_id: number;
+};
+declare type ReposDeleteCommitCommentRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListCommitsEndpoint = {
+ owner: string;
+ repo: string;
+ sha?: string;
+ path?: string;
+ author?: string;
+ since?: string;
+ until?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListCommitsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetCommitEndpoint = {
+ owner: string;
+ repo: string;
+ ref: string;
+ sha?: string;
+ commit_sha?: string;
+};
+declare type ReposGetCommitRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetCommitRefShaEndpoint = {
+ owner: string;
+ repo: string;
+ ref: string;
+};
+declare type ReposGetCommitRefShaRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposCompareCommitsEndpoint = {
+ owner: string;
+ repo: string;
+ base: string;
+ head: string;
+};
+declare type ReposCompareCommitsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListBranchesForHeadCommitEndpoint = {
+ owner: string;
+ repo: string;
+ commit_sha: string;
+};
+declare type ReposListBranchesForHeadCommitRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListPullRequestsAssociatedWithCommitEndpoint = {
+ owner: string;
+ repo: string;
+ commit_sha: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListPullRequestsAssociatedWithCommitRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposRetrieveCommunityProfileMetricsEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposRetrieveCommunityProfileMetricsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetReadmeEndpoint = {
+ owner: string;
+ repo: string;
+ ref?: string;
+};
+declare type ReposGetReadmeRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetContentsEndpoint = {
+ owner: string;
+ repo: string;
+ path: string;
+ ref?: string;
+};
+declare type ReposGetContentsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposCreateOrUpdateFileEndpoint = {
+ owner: string;
+ repo: string;
+ path: string;
+ message: string;
+ content: string;
+ sha?: string;
+ branch?: string;
+ committer?: object;
+ "committer.name": string;
+ "committer.email": string;
+ author?: object;
+ "author.name": string;
+ "author.email": string;
+};
+declare type ReposCreateOrUpdateFileRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposCreateFileEndpoint = {
+ owner: string;
+ repo: string;
+ path: string;
+ message: string;
+ content: string;
+ sha?: string;
+ branch?: string;
+ committer?: object;
+ "committer.name": string;
+ "committer.email": string;
+ author?: object;
+ "author.name": string;
+ "author.email": string;
+};
+declare type ReposCreateFileRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposUpdateFileEndpoint = {
+ owner: string;
+ repo: string;
+ path: string;
+ message: string;
+ content: string;
+ sha?: string;
+ branch?: string;
+ committer?: object;
+ "committer.name": string;
+ "committer.email": string;
+ author?: object;
+ "author.name": string;
+ "author.email": string;
+};
+declare type ReposUpdateFileRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposDeleteFileEndpoint = {
+ owner: string;
+ repo: string;
+ path: string;
+ message: string;
+ sha: string;
+ branch?: string;
+ committer?: object;
+ "committer.name"?: string;
+ "committer.email"?: string;
+ author?: object;
+ "author.name"?: string;
+ "author.email"?: string;
+};
+declare type ReposDeleteFileRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetArchiveLinkEndpoint = {
+ owner: string;
+ repo: string;
+ archive_format: string;
+ ref: string;
+};
+declare type ReposGetArchiveLinkRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListDeploymentsEndpoint = {
+ owner: string;
+ repo: string;
+ sha?: string;
+ ref?: string;
+ task?: string;
+ environment?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListDeploymentsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetDeploymentEndpoint = {
+ owner: string;
+ repo: string;
+ deployment_id: number;
+};
+declare type ReposGetDeploymentRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposCreateDeploymentEndpoint = {
+ owner: string;
+ repo: string;
+ ref: string;
+ task?: string;
+ auto_merge?: boolean;
+ required_contexts?: string[];
+ payload?: string;
+ environment?: string;
+ description?: string;
+ transient_environment?: boolean;
+ production_environment?: boolean;
+};
+declare type ReposCreateDeploymentRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListDeploymentStatusesEndpoint = {
+ owner: string;
+ repo: string;
+ deployment_id: number;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListDeploymentStatusesRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetDeploymentStatusEndpoint = {
+ owner: string;
+ repo: string;
+ deployment_id: number;
+ status_id: number;
+};
+declare type ReposGetDeploymentStatusRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposCreateDeploymentStatusEndpoint = {
+ owner: string;
+ repo: string;
+ deployment_id: number;
+ state: string;
+ target_url?: string;
+ log_url?: string;
+ description?: string;
+ environment?: string;
+ environment_url?: string;
+ auto_inactive?: boolean;
+};
+declare type ReposCreateDeploymentStatusRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListDownloadsEndpoint = {
+ owner: string;
+ repo: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListDownloadsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetDownloadEndpoint = {
+ owner: string;
+ repo: string;
+ download_id: number;
+};
+declare type ReposGetDownloadRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposDeleteDownloadEndpoint = {
+ owner: string;
+ repo: string;
+ download_id: number;
+};
+declare type ReposDeleteDownloadRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListForksEndpoint = {
+ owner: string;
+ repo: string;
+ sort?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListForksRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposCreateForkEndpoint = {
+ owner: string;
+ repo: string;
+ organization?: string;
+};
+declare type ReposCreateForkRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListHooksEndpoint = {
+ owner: string;
+ repo: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListHooksRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetHookEndpoint = {
+ owner: string;
+ repo: string;
+ hook_id: number;
+};
+declare type ReposGetHookRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposCreateHookEndpoint = {
+ owner: string;
+ repo: string;
+ name?: string;
+ config: object;
+ "config.url": string;
+ "config.content_type"?: string;
+ "config.secret"?: string;
+ "config.insecure_ssl"?: string;
+ events?: string[];
+ active?: boolean;
+};
+declare type ReposCreateHookRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposUpdateHookEndpoint = {
+ owner: string;
+ repo: string;
+ hook_id: number;
+ config?: object;
+ "config.url": string;
+ "config.content_type"?: string;
+ "config.secret"?: string;
+ "config.insecure_ssl"?: string;
+ events?: string[];
+ add_events?: string[];
+ remove_events?: string[];
+ active?: boolean;
+};
+declare type ReposUpdateHookRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposTestPushHookEndpoint = {
+ owner: string;
+ repo: string;
+ hook_id: number;
+};
+declare type ReposTestPushHookRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposPingHookEndpoint = {
+ owner: string;
+ repo: string;
+ hook_id: number;
+};
+declare type ReposPingHookRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposDeleteHookEndpoint = {
+ owner: string;
+ repo: string;
+ hook_id: number;
+};
+declare type ReposDeleteHookRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListInvitationsEndpoint = {
+ owner: string;
+ repo: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListInvitationsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposDeleteInvitationEndpoint = {
+ owner: string;
+ repo: string;
+ invitation_id: number;
+};
+declare type ReposDeleteInvitationRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposUpdateInvitationEndpoint = {
+ owner: string;
+ repo: string;
+ invitation_id: number;
+ permissions?: string;
+};
+declare type ReposUpdateInvitationRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListInvitationsForAuthenticatedUserEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListInvitationsForAuthenticatedUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposAcceptInvitationEndpoint = {
+ invitation_id: number;
+};
+declare type ReposAcceptInvitationRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposDeclineInvitationEndpoint = {
+ invitation_id: number;
+};
+declare type ReposDeclineInvitationRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListDeployKeysEndpoint = {
+ owner: string;
+ repo: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListDeployKeysRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetDeployKeyEndpoint = {
+ owner: string;
+ repo: string;
+ key_id: number;
+};
+declare type ReposGetDeployKeyRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposAddDeployKeyEndpoint = {
+ owner: string;
+ repo: string;
+ title?: string;
+ key: string;
+ read_only?: boolean;
+};
+declare type ReposAddDeployKeyRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposRemoveDeployKeyEndpoint = {
+ owner: string;
+ repo: string;
+ key_id: number;
+};
+declare type ReposRemoveDeployKeyRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposMergeEndpoint = {
+ owner: string;
+ repo: string;
+ base: string;
+ head: string;
+ commit_message?: string;
+};
+declare type ReposMergeRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetPagesEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposGetPagesRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposEnablePagesSiteEndpoint = {
+ owner: string;
+ repo: string;
+ source?: object;
+ "source.branch"?: string;
+ "source.path"?: string;
+};
+declare type ReposEnablePagesSiteRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposDisablePagesSiteEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposDisablePagesSiteRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposUpdateInformationAboutPagesSiteEndpoint = {
+ owner: string;
+ repo: string;
+ cname?: string;
+ source?: string;
+};
+declare type ReposUpdateInformationAboutPagesSiteRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposRequestPageBuildEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposRequestPageBuildRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListPagesBuildsEndpoint = {
+ owner: string;
+ repo: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListPagesBuildsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetLatestPagesBuildEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposGetLatestPagesBuildRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetPagesBuildEndpoint = {
+ owner: string;
+ repo: string;
+ build_id: number;
+};
+declare type ReposGetPagesBuildRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListReleasesEndpoint = {
+ owner: string;
+ repo: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListReleasesRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetReleaseEndpoint = {
+ owner: string;
+ repo: string;
+ release_id: number;
+};
+declare type ReposGetReleaseRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetLatestReleaseEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposGetLatestReleaseRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetReleaseByTagEndpoint = {
+ owner: string;
+ repo: string;
+ tag: string;
+};
+declare type ReposGetReleaseByTagRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposCreateReleaseEndpoint = {
+ owner: string;
+ repo: string;
+ tag_name: string;
+ target_commitish?: string;
+ name?: string;
+ body?: string;
+ draft?: boolean;
+ prerelease?: boolean;
+};
+declare type ReposCreateReleaseRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposUpdateReleaseEndpoint = {
+ owner: string;
+ repo: string;
+ release_id: number;
+ tag_name?: string;
+ target_commitish?: string;
+ name?: string;
+ body?: string;
+ draft?: boolean;
+ prerelease?: boolean;
+};
+declare type ReposUpdateReleaseRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposDeleteReleaseEndpoint = {
+ owner: string;
+ repo: string;
+ release_id: number;
+};
+declare type ReposDeleteReleaseRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListAssetsForReleaseEndpoint = {
+ owner: string;
+ repo: string;
+ release_id: number;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListAssetsForReleaseRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposUploadReleaseAssetEndpoint = {
+ url: string;
+ headers: object;
+ "headers.content-length": number;
+ "headers.content-type": string;
+ name: string;
+ label?: string;
+ file: string | object;
+};
+declare type ReposUploadReleaseAssetRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetReleaseAssetEndpoint = {
+ owner: string;
+ repo: string;
+ asset_id: number;
+};
+declare type ReposGetReleaseAssetRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposUpdateReleaseAssetEndpoint = {
+ owner: string;
+ repo: string;
+ asset_id: number;
+ name?: string;
+ label?: string;
+};
+declare type ReposUpdateReleaseAssetRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposDeleteReleaseAssetEndpoint = {
+ owner: string;
+ repo: string;
+ asset_id: number;
+};
+declare type ReposDeleteReleaseAssetRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetContributorsStatsEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposGetContributorsStatsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetCommitActivityStatsEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposGetCommitActivityStatsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetCodeFrequencyStatsEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposGetCodeFrequencyStatsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetParticipationStatsEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposGetParticipationStatsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetPunchCardStatsEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposGetPunchCardStatsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposCreateStatusEndpoint = {
+ owner: string;
+ repo: string;
+ sha: string;
+ state: string;
+ target_url?: string;
+ description?: string;
+ context?: string;
+};
+declare type ReposCreateStatusRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposListStatusesForRefEndpoint = {
+ owner: string;
+ repo: string;
+ ref: string;
+ per_page?: number;
+ page?: number;
+};
+declare type ReposListStatusesForRefRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetCombinedStatusForRefEndpoint = {
+ owner: string;
+ repo: string;
+ ref: string;
+};
+declare type ReposGetCombinedStatusForRefRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetTopReferrersEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposGetTopReferrersRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetTopPathsEndpoint = {
+ owner: string;
+ repo: string;
+};
+declare type ReposGetTopPathsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetViewsEndpoint = {
+ owner: string;
+ repo: string;
+ per?: string;
+};
+declare type ReposGetViewsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ReposGetClonesEndpoint = {
+ owner: string;
+ repo: string;
+ per?: string;
+};
+declare type ReposGetClonesRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ScimListProvisionedIdentitiesEndpoint = {
+ org: string;
+ startIndex?: number;
+ count?: number;
+ filter?: string;
+};
+declare type ScimListProvisionedIdentitiesRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ScimGetProvisioningDetailsForUserEndpoint = {
+ org: string;
+ scim_user_id: number;
+ external_identity_guid?: number;
+};
+declare type ScimGetProvisioningDetailsForUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ScimProvisionAndInviteUsersEndpoint = {
+ org: string;
+};
+declare type ScimProvisionAndInviteUsersRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ScimProvisionInviteUsersEndpoint = {
+ org: string;
+};
+declare type ScimProvisionInviteUsersRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ScimReplaceProvisionedUserInformationEndpoint = {
+ org: string;
+ scim_user_id: number;
+ external_identity_guid?: number;
+};
+declare type ScimReplaceProvisionedUserInformationRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ScimUpdateProvisionedOrgMembershipEndpoint = {
+ org: string;
+ scim_user_id: number;
+ external_identity_guid?: number;
+};
+declare type ScimUpdateProvisionedOrgMembershipRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ScimUpdateUserAttributeEndpoint = {
+ org: string;
+ scim_user_id: number;
+ external_identity_guid?: number;
+};
+declare type ScimUpdateUserAttributeRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type ScimRemoveUserFromOrgEndpoint = {
+ org: string;
+ scim_user_id: number;
+ external_identity_guid?: number;
+};
+declare type ScimRemoveUserFromOrgRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type SearchReposEndpoint = {
+ q: string;
+ sort?: string;
+ order?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type SearchReposRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type SearchCommitsEndpoint = {
+ q: string;
+ sort?: string;
+ order?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type SearchCommitsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type SearchCodeEndpoint = {
+ q: string;
+ sort?: string;
+ order?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type SearchCodeRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type SearchIssuesAndPullRequestsEndpoint = {
+ q: string;
+ sort?: string;
+ order?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type SearchIssuesAndPullRequestsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type SearchIssuesEndpoint = {
+ q: string;
+ sort?: string;
+ order?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type SearchIssuesRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type SearchUsersEndpoint = {
+ q: string;
+ sort?: string;
+ order?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type SearchUsersRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type SearchTopicsEndpoint = {
+ q: string;
+};
+declare type SearchTopicsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type SearchLabelsEndpoint = {
+ repository_id: number;
+ q: string;
+ sort?: string;
+ order?: string;
+};
+declare type SearchLabelsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type SearchIssuesLegacyEndpoint = {
+ owner: string;
+ repository: string;
+ state: string;
+ keyword: string;
+};
+declare type SearchIssuesLegacyRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type SearchReposLegacyEndpoint = {
+ keyword: string;
+ language?: string;
+ start_page?: string;
+ sort?: string;
+ order?: string;
+};
+declare type SearchReposLegacyRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type SearchUsersLegacyEndpoint = {
+ keyword: string;
+ start_page?: string;
+ sort?: string;
+ order?: string;
+};
+declare type SearchUsersLegacyRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type SearchEmailLegacyEndpoint = {
+ email: string;
+};
+declare type SearchEmailLegacyRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsListEndpoint = {
+ org: string;
+ per_page?: number;
+ page?: number;
+};
+declare type TeamsListRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsGetEndpoint = {
+ team_id: number;
+};
+declare type TeamsGetRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsGetByNameEndpoint = {
+ org: string;
+ team_slug: string;
+};
+declare type TeamsGetByNameRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsCreateEndpoint = {
+ org: string;
+ name: string;
+ description?: string;
+ maintainers?: string[];
+ repo_names?: string[];
+ privacy?: string;
+ permission?: string;
+ parent_team_id?: number;
+};
+declare type TeamsCreateRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsUpdateEndpoint = {
+ team_id: number;
+ name: string;
+ description?: string;
+ privacy?: string;
+ permission?: string;
+ parent_team_id?: number;
+};
+declare type TeamsUpdateRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsDeleteEndpoint = {
+ team_id: number;
+};
+declare type TeamsDeleteRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsListChildEndpoint = {
+ team_id: number;
+ per_page?: number;
+ page?: number;
+};
+declare type TeamsListChildRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsListReposEndpoint = {
+ team_id: number;
+ per_page?: number;
+ page?: number;
+};
+declare type TeamsListReposRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsCheckManagesRepoEndpoint = {
+ team_id: number;
+ owner: string;
+ repo: string;
+};
+declare type TeamsCheckManagesRepoRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsAddOrUpdateRepoEndpoint = {
+ team_id: number;
+ owner: string;
+ repo: string;
+ permission?: string;
+};
+declare type TeamsAddOrUpdateRepoRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsRemoveRepoEndpoint = {
+ team_id: number;
+ owner: string;
+ repo: string;
+};
+declare type TeamsRemoveRepoRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsListForAuthenticatedUserEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type TeamsListForAuthenticatedUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsListProjectsEndpoint = {
+ team_id: number;
+ per_page?: number;
+ page?: number;
+};
+declare type TeamsListProjectsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsReviewProjectEndpoint = {
+ team_id: number;
+ project_id: number;
+};
+declare type TeamsReviewProjectRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsAddOrUpdateProjectEndpoint = {
+ team_id: number;
+ project_id: number;
+ permission?: string;
+};
+declare type TeamsAddOrUpdateProjectRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsRemoveProjectEndpoint = {
+ team_id: number;
+ project_id: number;
+};
+declare type TeamsRemoveProjectRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsListDiscussionCommentsEndpoint = {
+ team_id: number;
+ discussion_number: number;
+ direction?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type TeamsListDiscussionCommentsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsGetDiscussionCommentEndpoint = {
+ team_id: number;
+ discussion_number: number;
+ comment_number: number;
+};
+declare type TeamsGetDiscussionCommentRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsCreateDiscussionCommentEndpoint = {
+ team_id: number;
+ discussion_number: number;
+ body: string;
+};
+declare type TeamsCreateDiscussionCommentRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsUpdateDiscussionCommentEndpoint = {
+ team_id: number;
+ discussion_number: number;
+ comment_number: number;
+ body: string;
+};
+declare type TeamsUpdateDiscussionCommentRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsDeleteDiscussionCommentEndpoint = {
+ team_id: number;
+ discussion_number: number;
+ comment_number: number;
+};
+declare type TeamsDeleteDiscussionCommentRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsListDiscussionsEndpoint = {
+ team_id: number;
+ direction?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type TeamsListDiscussionsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsGetDiscussionEndpoint = {
+ team_id: number;
+ discussion_number: number;
+};
+declare type TeamsGetDiscussionRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsCreateDiscussionEndpoint = {
+ team_id: number;
+ title: string;
+ body: string;
+ private?: boolean;
+};
+declare type TeamsCreateDiscussionRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsUpdateDiscussionEndpoint = {
+ team_id: number;
+ discussion_number: number;
+ title?: string;
+ body?: string;
+};
+declare type TeamsUpdateDiscussionRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsDeleteDiscussionEndpoint = {
+ team_id: number;
+ discussion_number: number;
+};
+declare type TeamsDeleteDiscussionRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsListMembersEndpoint = {
+ team_id: number;
+ role?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type TeamsListMembersRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsGetMemberEndpoint = {
+ team_id: number;
+ username: string;
+};
+declare type TeamsGetMemberRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsAddMemberEndpoint = {
+ team_id: number;
+ username: string;
+};
+declare type TeamsAddMemberRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsRemoveMemberEndpoint = {
+ team_id: number;
+ username: string;
+};
+declare type TeamsRemoveMemberRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsGetMembershipEndpoint = {
+ team_id: number;
+ username: string;
+};
+declare type TeamsGetMembershipRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsAddOrUpdateMembershipEndpoint = {
+ team_id: number;
+ username: string;
+ role?: string;
+};
+declare type TeamsAddOrUpdateMembershipRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsRemoveMembershipEndpoint = {
+ team_id: number;
+ username: string;
+};
+declare type TeamsRemoveMembershipRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsListPendingInvitationsEndpoint = {
+ team_id: number;
+ per_page?: number;
+ page?: number;
+};
+declare type TeamsListPendingInvitationsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsListIdPGroupsForOrgEndpoint = {
+ org: string;
+ per_page?: number;
+ page?: number;
+};
+declare type TeamsListIdPGroupsForOrgRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsListIdPGroupsEndpoint = {
+ team_id: number;
+};
+declare type TeamsListIdPGroupsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type TeamsCreateOrUpdateIdPGroupConnectionsEndpoint = {
+ team_id: number;
+ groups: object[];
+ "groups[].group_id": string;
+ "groups[].group_name": string;
+ "groups[].group_description": string;
+};
+declare type TeamsCreateOrUpdateIdPGroupConnectionsRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersGetByUsernameEndpoint = {
+ username: string;
+};
+declare type UsersGetByUsernameRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersGetAuthenticatedEndpoint = {};
+declare type UsersGetAuthenticatedRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersUpdateAuthenticatedEndpoint = {
+ name?: string;
+ email?: string;
+ blog?: string;
+ company?: string;
+ location?: string;
+ hireable?: boolean;
+ bio?: string;
+};
+declare type UsersUpdateAuthenticatedRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersGetContextForUserEndpoint = {
+ username: string;
+ subject_type?: string;
+ subject_id?: string;
+};
+declare type UsersGetContextForUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersListEndpoint = {
+ since?: string;
+ per_page?: number;
+ page?: number;
+};
+declare type UsersListRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersListBlockedEndpoint = {};
+declare type UsersListBlockedRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersCheckBlockedEndpoint = {
+ username: string;
+};
+declare type UsersCheckBlockedRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersBlockEndpoint = {
+ username: string;
+};
+declare type UsersBlockRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersUnblockEndpoint = {
+ username: string;
+};
+declare type UsersUnblockRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersListEmailsEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type UsersListEmailsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersListPublicEmailsEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type UsersListPublicEmailsRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersAddEmailsEndpoint = {
+ emails: string[];
+};
+declare type UsersAddEmailsRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersDeleteEmailsEndpoint = {
+ emails: string[];
+};
+declare type UsersDeleteEmailsRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersTogglePrimaryEmailVisibilityEndpoint = {
+ email: string;
+ visibility: string;
+};
+declare type UsersTogglePrimaryEmailVisibilityRequestOptions = {
+ method: "PATCH";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersListFollowersForUserEndpoint = {
+ username: string;
+ per_page?: number;
+ page?: number;
+};
+declare type UsersListFollowersForUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersListFollowersForAuthenticatedUserEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type UsersListFollowersForAuthenticatedUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersListFollowingForUserEndpoint = {
+ username: string;
+ per_page?: number;
+ page?: number;
+};
+declare type UsersListFollowingForUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersListFollowingForAuthenticatedUserEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type UsersListFollowingForAuthenticatedUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersCheckFollowingEndpoint = {
+ username: string;
+};
+declare type UsersCheckFollowingRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersCheckFollowingForUserEndpoint = {
+ username: string;
+ target_user: string;
+};
+declare type UsersCheckFollowingForUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersFollowEndpoint = {
+ username: string;
+};
+declare type UsersFollowRequestOptions = {
+ method: "PUT";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersUnfollowEndpoint = {
+ username: string;
+};
+declare type UsersUnfollowRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersListGpgKeysForUserEndpoint = {
+ username: string;
+ per_page?: number;
+ page?: number;
+};
+declare type UsersListGpgKeysForUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersListGpgKeysEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type UsersListGpgKeysRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersGetGpgKeyEndpoint = {
+ gpg_key_id: number;
+};
+declare type UsersGetGpgKeyRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersCreateGpgKeyEndpoint = {
+ armored_public_key?: string;
+};
+declare type UsersCreateGpgKeyRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersDeleteGpgKeyEndpoint = {
+ gpg_key_id: number;
+};
+declare type UsersDeleteGpgKeyRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersListPublicKeysForUserEndpoint = {
+ username: string;
+ per_page?: number;
+ page?: number;
+};
+declare type UsersListPublicKeysForUserRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersListPublicKeysEndpoint = {
+ per_page?: number;
+ page?: number;
+};
+declare type UsersListPublicKeysRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersGetPublicKeyEndpoint = {
+ key_id: number;
+};
+declare type UsersGetPublicKeyRequestOptions = {
+ method: "GET";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersCreatePublicKeyEndpoint = {
+ title?: string;
+ key?: string;
+};
+declare type UsersCreatePublicKeyRequestOptions = {
+ method: "POST";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+declare type UsersDeletePublicKeyEndpoint = {
+ key_id: number;
+};
+declare type UsersDeletePublicKeyRequestOptions = {
+ method: "DELETE";
+ url: Url;
+ headers: Headers;
+ request: EndpointRequestOptions;
+};
+export {};
diff --git a/node_modules/@octokit/endpoint/dist-types/index.d.ts b/node_modules/@octokit/endpoint/dist-types/index.d.ts
new file mode 100644
index 0000000..9977f09
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-types/index.d.ts
@@ -0,0 +1 @@
+export declare const endpoint: import("./types").endpoint;
diff --git a/node_modules/@octokit/endpoint/dist-types/merge.d.ts b/node_modules/@octokit/endpoint/dist-types/merge.d.ts
new file mode 100644
index 0000000..966470f
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-types/merge.d.ts
@@ -0,0 +1,2 @@
+import { Defaults, Route, Parameters } from "./types";
+export declare function merge(defaults: Defaults | null, route?: Route | Parameters, options?: Parameters): Defaults;
diff --git a/node_modules/@octokit/endpoint/dist-types/parse.d.ts b/node_modules/@octokit/endpoint/dist-types/parse.d.ts
new file mode 100644
index 0000000..3bc65d6
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-types/parse.d.ts
@@ -0,0 +1,2 @@
+import { Defaults, RequestOptions } from "./types";
+export declare function parse(options: Defaults): RequestOptions;
diff --git a/node_modules/@octokit/endpoint/dist-types/types.d.ts b/node_modules/@octokit/endpoint/dist-types/types.d.ts
new file mode 100644
index 0000000..979c064
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-types/types.d.ts
@@ -0,0 +1,150 @@
+import { Routes as KnownRoutes } from "./generated/routes";
+export interface endpoint {
+ /**
+ * Transforms a GitHub REST API endpoint into generic request options
+ *
+ * @param {object} endpoint Must set `method` and `url`. Plus URL, query or body parameters, as well as `headers`, `mediaType.{format|previews}`, `request`, or `baseUrl`.
+ */
+ (options: Endpoint): RequestOptions;
+ /**
+ * Transforms a GitHub REST API endpoint into generic request options
+ *
+ * @param {string} route Request method + URL. Example: `'GET /orgs/:org'`
+ * @param {object} [parameters] URL, query or body parameters, as well as `headers`, `mediaType.{format|previews}`, `request`, or `baseUrl`.
+ */
+ (route: keyof KnownRoutes | R, options?: R extends keyof KnownRoutes ? KnownRoutes[R][0] & Parameters : Parameters): R extends keyof KnownRoutes ? KnownRoutes[R][1] : RequestOptions;
+ /**
+ * Object with current default route and parameters
+ */
+ DEFAULTS: Defaults;
+ /**
+ * Returns a new `endpoint` with updated route and parameters
+ */
+ defaults: (newDefaults: Parameters) => endpoint;
+ merge: {
+ /**
+ * Merges current endpoint defaults with passed route and parameters,
+ * without transforming them into request options.
+ *
+ * @param {string} route Request method + URL. Example: `'GET /orgs/:org'`
+ * @param {object} [parameters] URL, query or body parameters, as well as `headers`, `mediaType.{format|previews}`, `request`, or `baseUrl`.
+ *
+ */
+ (route: Route, parameters?: Parameters): Defaults;
+ /**
+ * Merges current endpoint defaults with passed route and parameters,
+ * without transforming them into request options.
+ *
+ * @param {object} endpoint Must set `method` and `url`. Plus URL, query or body parameters, as well as `headers`, `mediaType.{format|previews}`, `request`, or `baseUrl`.
+ */
+ (options: Parameters): Defaults;
+ /**
+ * Returns current default options.
+ *
+ * @deprecated use endpoint.DEFAULTS instead
+ */
+ (): Defaults;
+ };
+ /**
+ * Stateless method to turn endpoint options into request options.
+ * Calling `endpoint(options)` is the same as calling `endpoint.parse(endpoint.merge(options))`.
+ *
+ * @param {object} options `method`, `url`. Plus URL, query or body parameters, as well as `headers`, `mediaType.{format|previews}`, `request`, or `baseUrl`.
+ */
+ parse: (options: Defaults) => RequestOptions;
+}
+/**
+ * Request method + URL. Example: `'GET /orgs/:org'`
+ */
+export declare type Route = string;
+/**
+ * Relative or absolute URL. Examples: `'/orgs/:org'`, `https://example.com/foo/bar`
+ */
+export declare type Url = string;
+/**
+ * Request method
+ */
+export declare type Method = "DELETE" | "GET" | "HEAD" | "PATCH" | "POST" | "PUT";
+/**
+ * Endpoint parameters
+ */
+export declare type Parameters = {
+ /**
+ * Base URL to be used when a relative URL is passed, such as `/orgs/:org`.
+ * If `baseUrl` is `https://enterprise.acme-inc.com/api/v3`, then the resulting
+ * `RequestOptions.url` will be `https://enterprise.acme-inc.com/api/v3/orgs/:org`.
+ */
+ baseUrl?: string;
+ /**
+ * HTTP headers. Use lowercase keys.
+ */
+ headers?: Headers;
+ /**
+ * Media type options, see {@link https://developer.github.com/v3/media/|GitHub Developer Guide}
+ */
+ mediaType?: {
+ /**
+ * `json` by default. Can be `raw`, `text`, `html`, `full`, `diff`, `patch`, `sha`, `base64`. Depending on endpoint
+ */
+ format?: string;
+ /**
+ * Custom media type names of {@link https://developer.github.com/v3/media/|API Previews} without the `-preview` suffix.
+ * Example for single preview: `['squirrel-girl']`.
+ * Example for multiple previews: `['squirrel-girl', 'mister-fantastic']`.
+ */
+ previews?: string[];
+ };
+ /**
+ * Pass custom meta information for the request. The `request` object will be returned as is.
+ */
+ request?: EndpointRequestOptions;
+ /**
+ * Any additional parameter will be passed as follows
+ * 1. URL parameter if `':parameter'` or `{parameter}` is part of `url`
+ * 2. Query parameter if `method` is `'GET'` or `'HEAD'`
+ * 3. Request body if `parameter` is `'data'`
+ * 4. JSON in the request body in the form of `body[parameter]` unless `parameter` key is `'data'`
+ */
+ [parameter: string]: any;
+};
+export declare type Endpoint = Parameters & {
+ method: Method;
+ url: Url;
+};
+export declare type Defaults = Parameters & {
+ method: Method;
+ baseUrl: string;
+ headers: Headers & {
+ accept: string;
+ "user-agent": string;
+ };
+ mediaType: {
+ format: string;
+ previews: string[];
+ };
+};
+export declare type RequestOptions = {
+ method: Method;
+ url: Url;
+ headers: Headers;
+ body?: any;
+ request?: EndpointRequestOptions;
+};
+export declare type Headers = {
+ /**
+ * Avoid setting `accept`, use `mediaFormat.{format|previews}` instead.
+ */
+ accept?: string;
+ /**
+ * Use `authorization` to send authenticated request, remember `token ` / `bearer ` prefixes. Example: `token 1234567890abcdef1234567890abcdef12345678`
+ */
+ authorization?: string;
+ /**
+ * `user-agent` is set do a default and can be overwritten as needed.
+ */
+ "user-agent"?: string;
+ [header: string]: string | number | undefined;
+};
+export declare type EndpointRequestOptions = {
+ [option: string]: any;
+};
diff --git a/node_modules/@octokit/endpoint/dist-types/util/add-query-parameters.d.ts b/node_modules/@octokit/endpoint/dist-types/util/add-query-parameters.d.ts
new file mode 100644
index 0000000..4b192ac
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-types/util/add-query-parameters.d.ts
@@ -0,0 +1,4 @@
+export declare function addQueryParameters(url: string, parameters: {
+ [x: string]: string | undefined;
+ q?: string;
+}): string;
diff --git a/node_modules/@octokit/endpoint/dist-types/util/extract-url-variable-names.d.ts b/node_modules/@octokit/endpoint/dist-types/util/extract-url-variable-names.d.ts
new file mode 100644
index 0000000..93586d4
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-types/util/extract-url-variable-names.d.ts
@@ -0,0 +1 @@
+export declare function extractUrlVariableNames(url: string): string[];
diff --git a/node_modules/@octokit/endpoint/dist-types/util/lowercase-keys.d.ts b/node_modules/@octokit/endpoint/dist-types/util/lowercase-keys.d.ts
new file mode 100644
index 0000000..1daf307
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-types/util/lowercase-keys.d.ts
@@ -0,0 +1,5 @@
+export declare function lowercaseKeys(object?: {
+ [key: string]: any;
+}): {
+ [key: string]: any;
+};
diff --git a/node_modules/@octokit/endpoint/dist-types/util/merge-deep.d.ts b/node_modules/@octokit/endpoint/dist-types/util/merge-deep.d.ts
new file mode 100644
index 0000000..914411c
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-types/util/merge-deep.d.ts
@@ -0,0 +1 @@
+export declare function mergeDeep(defaults: any, options: any): object;
diff --git a/node_modules/@octokit/endpoint/dist-types/util/omit.d.ts b/node_modules/@octokit/endpoint/dist-types/util/omit.d.ts
new file mode 100644
index 0000000..06927d6
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-types/util/omit.d.ts
@@ -0,0 +1,5 @@
+export declare function omit(object: {
+ [key: string]: any;
+}, keysToOmit: string[]): {
+ [key: string]: any;
+};
diff --git a/node_modules/@octokit/endpoint/dist-types/util/url-template.d.ts b/node_modules/@octokit/endpoint/dist-types/util/url-template.d.ts
new file mode 100644
index 0000000..5d967ca
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-types/util/url-template.d.ts
@@ -0,0 +1,3 @@
+export declare function parseUrl(template: string): {
+ expand: (context: object) => string;
+};
diff --git a/node_modules/@octokit/endpoint/dist-types/version.d.ts b/node_modules/@octokit/endpoint/dist-types/version.d.ts
new file mode 100644
index 0000000..15711f0
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-types/version.d.ts
@@ -0,0 +1 @@
+export declare const VERSION = "0.0.0-development";
diff --git a/node_modules/@octokit/endpoint/dist-types/with-defaults.d.ts b/node_modules/@octokit/endpoint/dist-types/with-defaults.d.ts
new file mode 100644
index 0000000..bdbb3c5
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-types/with-defaults.d.ts
@@ -0,0 +1,2 @@
+import { Defaults, endpoint, Parameters } from "./types";
+export declare function withDefaults(oldDefaults: Defaults | null, newDefaults: Parameters): endpoint;
diff --git a/node_modules/@octokit/endpoint/dist-web/index.js b/node_modules/@octokit/endpoint/dist-web/index.js
new file mode 100644
index 0000000..cb6a4bf
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-web/index.js
@@ -0,0 +1,377 @@
+import isPlainObject from 'is-plain-object';
+import { getUserAgent } from 'universal-user-agent';
+
+function lowercaseKeys(object) {
+ if (!object) {
+ return {};
+ }
+ return Object.keys(object).reduce((newObj, key) => {
+ newObj[key.toLowerCase()] = object[key];
+ return newObj;
+ }, {});
+}
+
+function mergeDeep(defaults, options) {
+ const result = Object.assign({}, defaults);
+ Object.keys(options).forEach(key => {
+ if (isPlainObject(options[key])) {
+ if (!(key in defaults))
+ Object.assign(result, { [key]: options[key] });
+ else
+ result[key] = mergeDeep(defaults[key], options[key]);
+ }
+ else {
+ Object.assign(result, { [key]: options[key] });
+ }
+ });
+ return result;
+}
+
+function merge(defaults, route, options) {
+ if (typeof route === "string") {
+ let [method, url] = route.split(" ");
+ options = Object.assign(url ? { method, url } : { url: method }, options);
+ }
+ else {
+ options = route || {};
+ }
+ // lowercase header names before merging with defaults to avoid duplicates
+ options.headers = lowercaseKeys(options.headers);
+ const mergedOptions = mergeDeep(defaults || {}, options);
+ // mediaType.previews arrays are merged, instead of overwritten
+ if (defaults && defaults.mediaType.previews.length) {
+ mergedOptions.mediaType.previews = defaults.mediaType.previews
+ .filter(preview => !mergedOptions.mediaType.previews.includes(preview))
+ .concat(mergedOptions.mediaType.previews);
+ }
+ mergedOptions.mediaType.previews = mergedOptions.mediaType.previews.map((preview) => preview.replace(/-preview/, ""));
+ return mergedOptions;
+}
+
+function addQueryParameters(url, parameters) {
+ const separator = /\?/.test(url) ? "&" : "?";
+ const names = Object.keys(parameters);
+ if (names.length === 0) {
+ return url;
+ }
+ return (url +
+ separator +
+ names
+ .map(name => {
+ if (name === "q") {
+ return ("q=" +
+ parameters
+ .q.split("+")
+ .map(encodeURIComponent)
+ .join("+"));
+ }
+ return `${name}=${encodeURIComponent(parameters[name])}`;
+ })
+ .join("&"));
+}
+
+const urlVariableRegex = /\{[^}]+\}/g;
+function removeNonChars(variableName) {
+ return variableName.replace(/^\W+|\W+$/g, "").split(/,/);
+}
+function extractUrlVariableNames(url) {
+ const matches = url.match(urlVariableRegex);
+ if (!matches) {
+ return [];
+ }
+ return matches.map(removeNonChars).reduce((a, b) => a.concat(b), []);
+}
+
+function omit(object, keysToOmit) {
+ return Object.keys(object)
+ .filter(option => !keysToOmit.includes(option))
+ .reduce((obj, key) => {
+ obj[key] = object[key];
+ return obj;
+ }, {});
+}
+
+// Based on https://github.com/bramstein/url-template, licensed under BSD
+// TODO: create separate package.
+//
+// Copyright (c) 2012-2014, Bram Stein
+// All rights reserved.
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions
+// are met:
+// 1. Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// 2. Redistributions in binary form must reproduce the above copyright
+// notice, this list of conditions and the following disclaimer in the
+// documentation and/or other materials provided with the distribution.
+// 3. The name of the author may not be used to endorse or promote products
+// derived from this software without specific prior written permission.
+// THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+// EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+// EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+/* istanbul ignore file */
+function encodeReserved(str) {
+ return str
+ .split(/(%[0-9A-Fa-f]{2})/g)
+ .map(function (part) {
+ if (!/%[0-9A-Fa-f]/.test(part)) {
+ part = encodeURI(part)
+ .replace(/%5B/g, "[")
+ .replace(/%5D/g, "]");
+ }
+ return part;
+ })
+ .join("");
+}
+function encodeUnreserved(str) {
+ return encodeURIComponent(str).replace(/[!'()*]/g, function (c) {
+ return ("%" +
+ c
+ .charCodeAt(0)
+ .toString(16)
+ .toUpperCase());
+ });
+}
+function encodeValue(operator, value, key) {
+ value =
+ operator === "+" || operator === "#"
+ ? encodeReserved(value)
+ : encodeUnreserved(value);
+ if (key) {
+ return encodeUnreserved(key) + "=" + value;
+ }
+ else {
+ return value;
+ }
+}
+function isDefined(value) {
+ return value !== undefined && value !== null;
+}
+function isKeyOperator(operator) {
+ return operator === ";" || operator === "&" || operator === "?";
+}
+function getValues(context, operator, key, modifier) {
+ var value = context[key], result = [];
+ if (isDefined(value) && value !== "") {
+ if (typeof value === "string" ||
+ typeof value === "number" ||
+ typeof value === "boolean") {
+ value = value.toString();
+ if (modifier && modifier !== "*") {
+ value = value.substring(0, parseInt(modifier, 10));
+ }
+ result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : ""));
+ }
+ else {
+ if (modifier === "*") {
+ if (Array.isArray(value)) {
+ value.filter(isDefined).forEach(function (value) {
+ result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : ""));
+ });
+ }
+ else {
+ Object.keys(value).forEach(function (k) {
+ if (isDefined(value[k])) {
+ result.push(encodeValue(operator, value[k], k));
+ }
+ });
+ }
+ }
+ else {
+ const tmp = [];
+ if (Array.isArray(value)) {
+ value.filter(isDefined).forEach(function (value) {
+ tmp.push(encodeValue(operator, value));
+ });
+ }
+ else {
+ Object.keys(value).forEach(function (k) {
+ if (isDefined(value[k])) {
+ tmp.push(encodeUnreserved(k));
+ tmp.push(encodeValue(operator, value[k].toString()));
+ }
+ });
+ }
+ if (isKeyOperator(operator)) {
+ result.push(encodeUnreserved(key) + "=" + tmp.join(","));
+ }
+ else if (tmp.length !== 0) {
+ result.push(tmp.join(","));
+ }
+ }
+ }
+ }
+ else {
+ if (operator === ";") {
+ if (isDefined(value)) {
+ result.push(encodeUnreserved(key));
+ }
+ }
+ else if (value === "" && (operator === "&" || operator === "?")) {
+ result.push(encodeUnreserved(key) + "=");
+ }
+ else if (value === "") {
+ result.push("");
+ }
+ }
+ return result;
+}
+function parseUrl(template) {
+ return {
+ expand: expand.bind(null, template)
+ };
+}
+function expand(template, context) {
+ var operators = ["+", "#", ".", "/", ";", "?", "&"];
+ return template.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g, function (_, expression, literal) {
+ if (expression) {
+ let operator = "";
+ const values = [];
+ if (operators.indexOf(expression.charAt(0)) !== -1) {
+ operator = expression.charAt(0);
+ expression = expression.substr(1);
+ }
+ expression.split(/,/g).forEach(function (variable) {
+ var tmp = /([^:\*]*)(?::(\d+)|(\*))?/.exec(variable);
+ values.push(getValues(context, operator, tmp[1], tmp[2] || tmp[3]));
+ });
+ if (operator && operator !== "+") {
+ var separator = ",";
+ if (operator === "?") {
+ separator = "&";
+ }
+ else if (operator !== "#") {
+ separator = operator;
+ }
+ return (values.length !== 0 ? operator : "") + values.join(separator);
+ }
+ else {
+ return values.join(",");
+ }
+ }
+ else {
+ return encodeReserved(literal);
+ }
+ });
+}
+
+function parse(options) {
+ // https://fetch.spec.whatwg.org/#methods
+ let method = options.method.toUpperCase();
+ // replace :varname with {varname} to make it RFC 6570 compatible
+ let url = options.url.replace(/:([a-z]\w+)/g, "{+$1}");
+ let headers = Object.assign({}, options.headers);
+ let body;
+ let parameters = omit(options, [
+ "method",
+ "baseUrl",
+ "url",
+ "headers",
+ "request",
+ "mediaType"
+ ]);
+ // extract variable names from URL to calculate remaining variables later
+ const urlVariableNames = extractUrlVariableNames(url);
+ url = parseUrl(url).expand(parameters);
+ if (!/^http/.test(url)) {
+ url = options.baseUrl + url;
+ }
+ const omittedParameters = Object.keys(options)
+ .filter(option => urlVariableNames.includes(option))
+ .concat("baseUrl");
+ const remainingParameters = omit(parameters, omittedParameters);
+ const isBinaryRequset = /application\/octet-stream/i.test(headers.accept);
+ if (!isBinaryRequset) {
+ if (options.mediaType.format) {
+ // e.g. application/vnd.github.v3+json => application/vnd.github.v3.raw
+ headers.accept = headers.accept
+ .split(/,/)
+ .map(preview => preview.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/, `application/vnd$1$2.${options.mediaType.format}`))
+ .join(",");
+ }
+ if (options.mediaType.previews.length) {
+ const previewsFromAcceptHeader = headers.accept.match(/[\w-]+(?=-preview)/g) || [];
+ headers.accept = previewsFromAcceptHeader
+ .concat(options.mediaType.previews)
+ .map(preview => {
+ const format = options.mediaType.format
+ ? `.${options.mediaType.format}`
+ : "+json";
+ return `application/vnd.github.${preview}-preview${format}`;
+ })
+ .join(",");
+ }
+ }
+ // for GET/HEAD requests, set URL query parameters from remaining parameters
+ // for PATCH/POST/PUT/DELETE requests, set request body from remaining parameters
+ if (["GET", "HEAD"].includes(method)) {
+ url = addQueryParameters(url, remainingParameters);
+ }
+ else {
+ if ("data" in remainingParameters) {
+ body = remainingParameters.data;
+ }
+ else {
+ if (Object.keys(remainingParameters).length) {
+ body = remainingParameters;
+ }
+ else {
+ headers["content-length"] = 0;
+ }
+ }
+ }
+ // default content-type for JSON if body is set
+ if (!headers["content-type"] && typeof body !== "undefined") {
+ headers["content-type"] = "application/json; charset=utf-8";
+ }
+ // GitHub expects 'content-length: 0' header for PUT/PATCH requests without body.
+ // fetch does not allow to set `content-length` header, but we can set body to an empty string
+ if (["PATCH", "PUT"].includes(method) && typeof body === "undefined") {
+ body = "";
+ }
+ // Only return body/request keys if present
+ return Object.assign({ method, url, headers }, typeof body !== "undefined" ? { body } : null, options.request ? { request: options.request } : null);
+}
+
+function endpointWithDefaults(defaults, route, options) {
+ return parse(merge(defaults, route, options));
+}
+
+function withDefaults(oldDefaults, newDefaults) {
+ const DEFAULTS = merge(oldDefaults, newDefaults);
+ const endpoint = endpointWithDefaults.bind(null, DEFAULTS);
+ return Object.assign(endpoint, {
+ DEFAULTS,
+ defaults: withDefaults.bind(null, DEFAULTS),
+ merge: merge.bind(null, DEFAULTS),
+ parse
+ });
+}
+
+const VERSION = "0.0.0-development";
+
+const userAgent = `octokit-endpoint.js/${VERSION} ${getUserAgent()}`;
+const DEFAULTS = {
+ method: "GET",
+ baseUrl: "https://api.github.com",
+ headers: {
+ accept: "application/vnd.github.v3+json",
+ "user-agent": userAgent
+ },
+ mediaType: {
+ format: "",
+ previews: []
+ }
+};
+
+const endpoint = withDefaults(null, DEFAULTS);
+
+export { endpoint };
+//# sourceMappingURL=index.js.map
diff --git a/node_modules/@octokit/endpoint/dist-web/index.js.map b/node_modules/@octokit/endpoint/dist-web/index.js.map
new file mode 100644
index 0000000..1d52186
--- /dev/null
+++ b/node_modules/@octokit/endpoint/dist-web/index.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"index.js","sources":["../dist-src/util/lowercase-keys.js","../dist-src/util/merge-deep.js","../dist-src/merge.js","../dist-src/util/add-query-parameters.js","../dist-src/util/extract-url-variable-names.js","../dist-src/util/omit.js","../dist-src/util/url-template.js","../dist-src/parse.js","../dist-src/endpoint-with-defaults.js","../dist-src/with-defaults.js","../dist-src/version.js","../dist-src/defaults.js","../dist-src/index.js"],"sourcesContent":["export function lowercaseKeys(object) {\n if (!object) {\n return {};\n }\n return Object.keys(object).reduce((newObj, key) => {\n newObj[key.toLowerCase()] = object[key];\n return newObj;\n }, {});\n}\n","import isPlainObject from \"is-plain-object\";\nexport function mergeDeep(defaults, options) {\n const result = Object.assign({}, defaults);\n Object.keys(options).forEach(key => {\n if (isPlainObject(options[key])) {\n if (!(key in defaults))\n Object.assign(result, { [key]: options[key] });\n else\n result[key] = mergeDeep(defaults[key], options[key]);\n }\n else {\n Object.assign(result, { [key]: options[key] });\n }\n });\n return result;\n}\n","import { lowercaseKeys } from \"./util/lowercase-keys\";\nimport { mergeDeep } from \"./util/merge-deep\";\nexport function merge(defaults, route, options) {\n if (typeof route === \"string\") {\n let [method, url] = route.split(\" \");\n options = Object.assign(url ? { method, url } : { url: method }, options);\n }\n else {\n options = route || {};\n }\n // lowercase header names before merging with defaults to avoid duplicates\n options.headers = lowercaseKeys(options.headers);\n const mergedOptions = mergeDeep(defaults || {}, options);\n // mediaType.previews arrays are merged, instead of overwritten\n if (defaults && defaults.mediaType.previews.length) {\n mergedOptions.mediaType.previews = defaults.mediaType.previews\n .filter(preview => !mergedOptions.mediaType.previews.includes(preview))\n .concat(mergedOptions.mediaType.previews);\n }\n mergedOptions.mediaType.previews = mergedOptions.mediaType.previews.map((preview) => preview.replace(/-preview/, \"\"));\n return mergedOptions;\n}\n","export function addQueryParameters(url, parameters) {\n const separator = /\\?/.test(url) ? \"&\" : \"?\";\n const names = Object.keys(parameters);\n if (names.length === 0) {\n return url;\n }\n return (url +\n separator +\n names\n .map(name => {\n if (name === \"q\") {\n return (\"q=\" +\n parameters\n .q.split(\"+\")\n .map(encodeURIComponent)\n .join(\"+\"));\n }\n return `${name}=${encodeURIComponent(parameters[name])}`;\n })\n .join(\"&\"));\n}\n","const urlVariableRegex = /\\{[^}]+\\}/g;\nfunction removeNonChars(variableName) {\n return variableName.replace(/^\\W+|\\W+$/g, \"\").split(/,/);\n}\nexport function extractUrlVariableNames(url) {\n const matches = url.match(urlVariableRegex);\n if (!matches) {\n return [];\n }\n return matches.map(removeNonChars).reduce((a, b) => a.concat(b), []);\n}\n","export function omit(object, keysToOmit) {\n return Object.keys(object)\n .filter(option => !keysToOmit.includes(option))\n .reduce((obj, key) => {\n obj[key] = object[key];\n return obj;\n }, {});\n}\n","// Based on https://github.com/bramstein/url-template, licensed under BSD\n// TODO: create separate package.\n//\n// Copyright (c) 2012-2014, Bram Stein\n// All rights reserved.\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions\n// are met:\n// 1. Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// 2. Redistributions in binary form must reproduce the above copyright\n// notice, this list of conditions and the following disclaimer in the\n// documentation and/or other materials provided with the distribution.\n// 3. The name of the author may not be used to endorse or promote products\n// derived from this software without specific prior written permission.\n// THIS SOFTWARE IS PROVIDED BY THE AUTHOR \"AS IS\" AND ANY EXPRESS OR IMPLIED\n// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO\n// EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,\n// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\n// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,\n// EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n/* istanbul ignore file */\nfunction encodeReserved(str) {\n return str\n .split(/(%[0-9A-Fa-f]{2})/g)\n .map(function (part) {\n if (!/%[0-9A-Fa-f]/.test(part)) {\n part = encodeURI(part)\n .replace(/%5B/g, \"[\")\n .replace(/%5D/g, \"]\");\n }\n return part;\n })\n .join(\"\");\n}\nfunction encodeUnreserved(str) {\n return encodeURIComponent(str).replace(/[!'()*]/g, function (c) {\n return (\"%\" +\n c\n .charCodeAt(0)\n .toString(16)\n .toUpperCase());\n });\n}\nfunction encodeValue(operator, value, key) {\n value =\n operator === \"+\" || operator === \"#\"\n ? encodeReserved(value)\n : encodeUnreserved(value);\n if (key) {\n return encodeUnreserved(key) + \"=\" + value;\n }\n else {\n return value;\n }\n}\nfunction isDefined(value) {\n return value !== undefined && value !== null;\n}\nfunction isKeyOperator(operator) {\n return operator === \";\" || operator === \"&\" || operator === \"?\";\n}\nfunction getValues(context, operator, key, modifier) {\n var value = context[key], result = [];\n if (isDefined(value) && value !== \"\") {\n if (typeof value === \"string\" ||\n typeof value === \"number\" ||\n typeof value === \"boolean\") {\n value = value.toString();\n if (modifier && modifier !== \"*\") {\n value = value.substring(0, parseInt(modifier, 10));\n }\n result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : \"\"));\n }\n else {\n if (modifier === \"*\") {\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function (value) {\n result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : \"\"));\n });\n }\n else {\n Object.keys(value).forEach(function (k) {\n if (isDefined(value[k])) {\n result.push(encodeValue(operator, value[k], k));\n }\n });\n }\n }\n else {\n const tmp = [];\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function (value) {\n tmp.push(encodeValue(operator, value));\n });\n }\n else {\n Object.keys(value).forEach(function (k) {\n if (isDefined(value[k])) {\n tmp.push(encodeUnreserved(k));\n tmp.push(encodeValue(operator, value[k].toString()));\n }\n });\n }\n if (isKeyOperator(operator)) {\n result.push(encodeUnreserved(key) + \"=\" + tmp.join(\",\"));\n }\n else if (tmp.length !== 0) {\n result.push(tmp.join(\",\"));\n }\n }\n }\n }\n else {\n if (operator === \";\") {\n if (isDefined(value)) {\n result.push(encodeUnreserved(key));\n }\n }\n else if (value === \"\" && (operator === \"&\" || operator === \"?\")) {\n result.push(encodeUnreserved(key) + \"=\");\n }\n else if (value === \"\") {\n result.push(\"\");\n }\n }\n return result;\n}\nexport function parseUrl(template) {\n return {\n expand: expand.bind(null, template)\n };\n}\nfunction expand(template, context) {\n var operators = [\"+\", \"#\", \".\", \"/\", \";\", \"?\", \"&\"];\n return template.replace(/\\{([^\\{\\}]+)\\}|([^\\{\\}]+)/g, function (_, expression, literal) {\n if (expression) {\n let operator = \"\";\n const values = [];\n if (operators.indexOf(expression.charAt(0)) !== -1) {\n operator = expression.charAt(0);\n expression = expression.substr(1);\n }\n expression.split(/,/g).forEach(function (variable) {\n var tmp = /([^:\\*]*)(?::(\\d+)|(\\*))?/.exec(variable);\n values.push(getValues(context, operator, tmp[1], tmp[2] || tmp[3]));\n });\n if (operator && operator !== \"+\") {\n var separator = \",\";\n if (operator === \"?\") {\n separator = \"&\";\n }\n else if (operator !== \"#\") {\n separator = operator;\n }\n return (values.length !== 0 ? operator : \"\") + values.join(separator);\n }\n else {\n return values.join(\",\");\n }\n }\n else {\n return encodeReserved(literal);\n }\n });\n}\n","import { addQueryParameters } from \"./util/add-query-parameters\";\nimport { extractUrlVariableNames } from \"./util/extract-url-variable-names\";\nimport { omit } from \"./util/omit\";\nimport { parseUrl } from \"./util/url-template\";\nexport function parse(options) {\n // https://fetch.spec.whatwg.org/#methods\n let method = options.method.toUpperCase();\n // replace :varname with {varname} to make it RFC 6570 compatible\n let url = options.url.replace(/:([a-z]\\w+)/g, \"{+$1}\");\n let headers = Object.assign({}, options.headers);\n let body;\n let parameters = omit(options, [\n \"method\",\n \"baseUrl\",\n \"url\",\n \"headers\",\n \"request\",\n \"mediaType\"\n ]);\n // extract variable names from URL to calculate remaining variables later\n const urlVariableNames = extractUrlVariableNames(url);\n url = parseUrl(url).expand(parameters);\n if (!/^http/.test(url)) {\n url = options.baseUrl + url;\n }\n const omittedParameters = Object.keys(options)\n .filter(option => urlVariableNames.includes(option))\n .concat(\"baseUrl\");\n const remainingParameters = omit(parameters, omittedParameters);\n const isBinaryRequset = /application\\/octet-stream/i.test(headers.accept);\n if (!isBinaryRequset) {\n if (options.mediaType.format) {\n // e.g. application/vnd.github.v3+json => application/vnd.github.v3.raw\n headers.accept = headers.accept\n .split(/,/)\n .map(preview => preview.replace(/application\\/vnd(\\.\\w+)(\\.v3)?(\\.\\w+)?(\\+json)?$/, `application/vnd$1$2.${options.mediaType.format}`))\n .join(\",\");\n }\n if (options.mediaType.previews.length) {\n const previewsFromAcceptHeader = headers.accept.match(/[\\w-]+(?=-preview)/g) || [];\n headers.accept = previewsFromAcceptHeader\n .concat(options.mediaType.previews)\n .map(preview => {\n const format = options.mediaType.format\n ? `.${options.mediaType.format}`\n : \"+json\";\n return `application/vnd.github.${preview}-preview${format}`;\n })\n .join(\",\");\n }\n }\n // for GET/HEAD requests, set URL query parameters from remaining parameters\n // for PATCH/POST/PUT/DELETE requests, set request body from remaining parameters\n if ([\"GET\", \"HEAD\"].includes(method)) {\n url = addQueryParameters(url, remainingParameters);\n }\n else {\n if (\"data\" in remainingParameters) {\n body = remainingParameters.data;\n }\n else {\n if (Object.keys(remainingParameters).length) {\n body = remainingParameters;\n }\n else {\n headers[\"content-length\"] = 0;\n }\n }\n }\n // default content-type for JSON if body is set\n if (!headers[\"content-type\"] && typeof body !== \"undefined\") {\n headers[\"content-type\"] = \"application/json; charset=utf-8\";\n }\n // GitHub expects 'content-length: 0' header for PUT/PATCH requests without body.\n // fetch does not allow to set `content-length` header, but we can set body to an empty string\n if ([\"PATCH\", \"PUT\"].includes(method) && typeof body === \"undefined\") {\n body = \"\";\n }\n // Only return body/request keys if present\n return Object.assign({ method, url, headers }, typeof body !== \"undefined\" ? { body } : null, options.request ? { request: options.request } : null);\n}\n","import { merge } from \"./merge\";\nimport { parse } from \"./parse\";\nexport function endpointWithDefaults(defaults, route, options) {\n return parse(merge(defaults, route, options));\n}\n","import { endpointWithDefaults } from \"./endpoint-with-defaults\";\nimport { merge } from \"./merge\";\nimport { parse } from \"./parse\";\nexport function withDefaults(oldDefaults, newDefaults) {\n const DEFAULTS = merge(oldDefaults, newDefaults);\n const endpoint = endpointWithDefaults.bind(null, DEFAULTS);\n return Object.assign(endpoint, {\n DEFAULTS,\n defaults: withDefaults.bind(null, DEFAULTS),\n merge: merge.bind(null, DEFAULTS),\n parse\n });\n}\n","export const VERSION = \"0.0.0-development\";\n","import { getUserAgent } from \"universal-user-agent\";\nimport { VERSION } from \"./version\";\nconst userAgent = `octokit-endpoint.js/${VERSION} ${getUserAgent()}`;\nexport const DEFAULTS = {\n method: \"GET\",\n baseUrl: \"https://api.github.com\",\n headers: {\n accept: \"application/vnd.github.v3+json\",\n \"user-agent\": userAgent\n },\n mediaType: {\n format: \"\",\n previews: []\n }\n};\n","import { withDefaults } from \"./with-defaults\";\nimport { DEFAULTS } from \"./defaults\";\nexport const endpoint = withDefaults(null, DEFAULTS);\n"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/@octokit/endpoint/node_modules/is-plain-object/LICENSE b/node_modules/@octokit/endpoint/node_modules/is-plain-object/LICENSE
new file mode 100644
index 0000000..3f2eca1
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/is-plain-object/LICENSE
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2014-2017, Jon Schlinkert.
+
+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.
diff --git a/node_modules/@octokit/endpoint/node_modules/is-plain-object/README.md b/node_modules/@octokit/endpoint/node_modules/is-plain-object/README.md
new file mode 100644
index 0000000..60b7b59
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/is-plain-object/README.md
@@ -0,0 +1,119 @@
+# is-plain-object [](https://www.npmjs.com/package/is-plain-object) [](https://npmjs.org/package/is-plain-object) [](https://npmjs.org/package/is-plain-object) [](https://travis-ci.org/jonschlinkert/is-plain-object)
+
+> Returns true if an object was created by the `Object` constructor.
+
+Please consider following this project's author, [Jon Schlinkert](https://github.com/jonschlinkert), and consider starring the project to show your :heart: and support.
+
+## Install
+
+Install with [npm](https://www.npmjs.com/):
+
+```sh
+$ npm install --save is-plain-object
+```
+
+Use [isobject](https://github.com/jonschlinkert/isobject) if you only want to check if the value is an object and not an array or null.
+
+## Usage
+
+```js
+import isPlainObject from 'is-plain-object';
+```
+
+**true** when created by the `Object` constructor.
+
+```js
+isPlainObject(Object.create({}));
+//=> true
+isPlainObject(Object.create(Object.prototype));
+//=> true
+isPlainObject({foo: 'bar'});
+//=> true
+isPlainObject({});
+//=> true
+```
+
+**false** when not created by the `Object` constructor.
+
+```js
+isPlainObject(1);
+//=> false
+isPlainObject(['foo', 'bar']);
+//=> false
+isPlainObject([]);
+//=> false
+isPlainObject(new Foo);
+//=> false
+isPlainObject(null);
+//=> false
+isPlainObject(Object.create(null));
+//=> false
+```
+
+## About
+
+
+Contributing
+
+Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new).
+
+
+
+
+Running Tests
+
+Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:
+
+```sh
+$ npm install && npm test
+```
+
+
+
+
+Building docs
+
+_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_
+
+To generate the readme, run the following command:
+
+```sh
+$ npm install -g verbose/verb#dev verb-generate-readme && verb
+```
+
+
+
+### Related projects
+
+You might also be interested in these projects:
+
+* [is-number](https://www.npmjs.com/package/is-number): Returns true if a number or string value is a finite number. Useful for regex… [more](https://github.com/jonschlinkert/is-number) | [homepage](https://github.com/jonschlinkert/is-number "Returns true if a number or string value is a finite number. Useful for regex matches, parsing, user input, etc.")
+* [isobject](https://www.npmjs.com/package/isobject): Returns true if the value is an object and not an array or null. | [homepage](https://github.com/jonschlinkert/isobject "Returns true if the value is an object and not an array or null.")
+* [kind-of](https://www.npmjs.com/package/kind-of): Get the native type of a value. | [homepage](https://github.com/jonschlinkert/kind-of "Get the native type of a value.")
+
+### Contributors
+
+| **Commits** | **Contributor** |
+| --- | --- |
+| 19 | [jonschlinkert](https://github.com/jonschlinkert) |
+| 6 | [TrySound](https://github.com/TrySound) |
+| 6 | [stevenvachon](https://github.com/stevenvachon) |
+| 3 | [onokumus](https://github.com/onokumus) |
+| 1 | [wtgtybhertgeghgtwtg](https://github.com/wtgtybhertgeghgtwtg) |
+
+### Author
+
+**Jon Schlinkert**
+
+* [GitHub Profile](https://github.com/jonschlinkert)
+* [Twitter Profile](https://twitter.com/jonschlinkert)
+* [LinkedIn Profile](https://linkedin.com/in/jonschlinkert)
+
+### License
+
+Copyright © 2019, [Jon Schlinkert](https://github.com/jonschlinkert).
+Released under the [MIT License](LICENSE).
+
+***
+
+_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.8.0, on April 28, 2019._
\ No newline at end of file
diff --git a/node_modules/@octokit/endpoint/node_modules/is-plain-object/index.cjs.js b/node_modules/@octokit/endpoint/node_modules/is-plain-object/index.cjs.js
new file mode 100644
index 0000000..d7dda95
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/is-plain-object/index.cjs.js
@@ -0,0 +1,48 @@
+'use strict';
+
+/*!
+ * isobject
+ *
+ * Copyright (c) 2014-2017, Jon Schlinkert.
+ * Released under the MIT License.
+ */
+
+function isObject(val) {
+ return val != null && typeof val === 'object' && Array.isArray(val) === false;
+}
+
+/*!
+ * is-plain-object
+ *
+ * Copyright (c) 2014-2017, Jon Schlinkert.
+ * Released under the MIT License.
+ */
+
+function isObjectObject(o) {
+ return isObject(o) === true
+ && Object.prototype.toString.call(o) === '[object Object]';
+}
+
+function isPlainObject(o) {
+ var ctor,prot;
+
+ if (isObjectObject(o) === false) return false;
+
+ // If has modified constructor
+ ctor = o.constructor;
+ if (typeof ctor !== 'function') return false;
+
+ // If has modified prototype
+ prot = ctor.prototype;
+ if (isObjectObject(prot) === false) return false;
+
+ // If constructor does not have an Object-specific method
+ if (prot.hasOwnProperty('isPrototypeOf') === false) {
+ return false;
+ }
+
+ // Most likely a plain Object
+ return true;
+}
+
+module.exports = isPlainObject;
diff --git a/node_modules/@octokit/endpoint/node_modules/is-plain-object/index.d.ts b/node_modules/@octokit/endpoint/node_modules/is-plain-object/index.d.ts
new file mode 100644
index 0000000..fd131f0
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/is-plain-object/index.d.ts
@@ -0,0 +1,3 @@
+declare function isPlainObject(o: any): boolean;
+
+export default isPlainObject;
diff --git a/node_modules/@octokit/endpoint/node_modules/is-plain-object/index.js b/node_modules/@octokit/endpoint/node_modules/is-plain-object/index.js
new file mode 100644
index 0000000..565ce9e
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/is-plain-object/index.js
@@ -0,0 +1,35 @@
+/*!
+ * is-plain-object
+ *
+ * Copyright (c) 2014-2017, Jon Schlinkert.
+ * Released under the MIT License.
+ */
+
+import isObject from 'isobject';
+
+function isObjectObject(o) {
+ return isObject(o) === true
+ && Object.prototype.toString.call(o) === '[object Object]';
+}
+
+export default function isPlainObject(o) {
+ var ctor,prot;
+
+ if (isObjectObject(o) === false) return false;
+
+ // If has modified constructor
+ ctor = o.constructor;
+ if (typeof ctor !== 'function') return false;
+
+ // If has modified prototype
+ prot = ctor.prototype;
+ if (isObjectObject(prot) === false) return false;
+
+ // If constructor does not have an Object-specific method
+ if (prot.hasOwnProperty('isPrototypeOf') === false) {
+ return false;
+ }
+
+ // Most likely a plain Object
+ return true;
+};
diff --git a/node_modules/@octokit/endpoint/node_modules/is-plain-object/package.json b/node_modules/@octokit/endpoint/node_modules/is-plain-object/package.json
new file mode 100644
index 0000000..2cdcf08
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/is-plain-object/package.json
@@ -0,0 +1,127 @@
+{
+ "_args": [
+ [
+ "is-plain-object@3.0.0",
+ "/Users/dougtangren/code/rust/action-gh-release"
+ ]
+ ],
+ "_from": "is-plain-object@3.0.0",
+ "_id": "is-plain-object@3.0.0",
+ "_inBundle": false,
+ "_integrity": "sha512-tZIpofR+P05k8Aocp7UI/2UTa9lTJSebCXpFFoR9aibpokDj/uXBsJ8luUu0tTVYKkMU6URDUuOfJZ7koewXvg==",
+ "_location": "/@octokit/endpoint/is-plain-object",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "version",
+ "registry": true,
+ "raw": "is-plain-object@3.0.0",
+ "name": "is-plain-object",
+ "escapedName": "is-plain-object",
+ "rawSpec": "3.0.0",
+ "saveSpec": null,
+ "fetchSpec": "3.0.0"
+ },
+ "_requiredBy": [
+ "/@octokit/endpoint"
+ ],
+ "_resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.0.tgz",
+ "_spec": "3.0.0",
+ "_where": "/Users/dougtangren/code/rust/action-gh-release",
+ "author": {
+ "name": "Jon Schlinkert",
+ "url": "https://github.com/jonschlinkert"
+ },
+ "bugs": {
+ "url": "https://github.com/jonschlinkert/is-plain-object/issues"
+ },
+ "contributors": [
+ {
+ "name": "Jon Schlinkert",
+ "url": "http://twitter.com/jonschlinkert"
+ },
+ {
+ "name": "Osman Nuri Okumuş",
+ "url": "http://onokumus.com"
+ },
+ {
+ "name": "Steven Vachon",
+ "url": "https://svachon.com"
+ },
+ {
+ "url": "https://github.com/wtgtybhertgeghgtwtg"
+ }
+ ],
+ "dependencies": {
+ "isobject": "^4.0.0"
+ },
+ "description": "Returns true if an object was created by the `Object` constructor.",
+ "devDependencies": {
+ "chai": "^4.2.0",
+ "esm": "^3.2.22",
+ "gulp-format-md": "^1.0.0",
+ "mocha": "^6.1.4",
+ "mocha-headless-chrome": "^2.0.2",
+ "rollup": "^1.10.1",
+ "rollup-plugin-node-resolve": "^4.2.3"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ },
+ "files": [
+ "index.d.ts",
+ "index.js",
+ "index.cjs.js"
+ ],
+ "homepage": "https://github.com/jonschlinkert/is-plain-object",
+ "keywords": [
+ "check",
+ "is",
+ "is-object",
+ "isobject",
+ "javascript",
+ "kind",
+ "kind-of",
+ "object",
+ "plain",
+ "type",
+ "typeof",
+ "value"
+ ],
+ "license": "MIT",
+ "main": "index.cjs.js",
+ "module": "index.js",
+ "name": "is-plain-object",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/jonschlinkert/is-plain-object.git"
+ },
+ "scripts": {
+ "build": "rollup -c",
+ "prepare": "rollup -c",
+ "test": "npm run test_node && npm run build && npm run test_browser",
+ "test_browser": "mocha-headless-chrome --args=disable-web-security -f test/browser.html",
+ "test_node": "mocha -r esm"
+ },
+ "types": "index.d.ts",
+ "verb": {
+ "toc": false,
+ "layout": "default",
+ "tasks": [
+ "readme"
+ ],
+ "plugins": [
+ "gulp-format-md"
+ ],
+ "related": {
+ "list": [
+ "is-number",
+ "isobject",
+ "kind-of"
+ ]
+ },
+ "lint": {
+ "reflinks": true
+ }
+ },
+ "version": "3.0.0"
+}
diff --git a/node_modules/@octokit/endpoint/node_modules/isobject/LICENSE b/node_modules/@octokit/endpoint/node_modules/isobject/LICENSE
new file mode 100644
index 0000000..943e71d
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/isobject/LICENSE
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2014-2017, Jon Schlinkert.
+
+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.
\ No newline at end of file
diff --git a/node_modules/@octokit/endpoint/node_modules/isobject/README.md b/node_modules/@octokit/endpoint/node_modules/isobject/README.md
new file mode 100644
index 0000000..1c6e21f
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/isobject/README.md
@@ -0,0 +1,127 @@
+# isobject [](https://www.npmjs.com/package/isobject) [](https://npmjs.org/package/isobject) [](https://npmjs.org/package/isobject) [](https://travis-ci.org/jonschlinkert/isobject)
+
+> Returns true if the value is an object and not an array or null.
+
+Please consider following this project's author, [Jon Schlinkert](https://github.com/jonschlinkert), and consider starring the project to show your :heart: and support.
+
+## Install
+
+Install with [npm](https://www.npmjs.com/):
+
+```sh
+$ npm install --save isobject
+```
+
+Use [is-plain-object](https://github.com/jonschlinkert/is-plain-object) if you want only objects that are created by the `Object` constructor.
+
+## Install
+
+Install with [npm](https://www.npmjs.com/):
+
+```sh
+$ npm install isobject
+```
+
+## Usage
+
+```js
+import isObject from 'isobject';
+```
+
+**True**
+
+All of the following return `true`:
+
+```js
+isObject({});
+isObject(Object.create({}));
+isObject(Object.create(Object.prototype));
+isObject(Object.create(null));
+isObject({});
+isObject(new Foo);
+isObject(/foo/);
+```
+
+**False**
+
+All of the following return `false`:
+
+```js
+isObject();
+isObject(function () {});
+isObject(1);
+isObject([]);
+isObject(undefined);
+isObject(null);
+```
+
+## About
+
+
+Contributing
+
+Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new).
+
+
+
+
+Running Tests
+
+Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:
+
+```sh
+$ npm install && npm test
+```
+
+
+
+
+Building docs
+
+_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_
+
+To generate the readme, run the following command:
+
+```sh
+$ npm install -g verbose/verb#dev verb-generate-readme && verb
+```
+
+
+
+### Related projects
+
+You might also be interested in these projects:
+
+* [extend-shallow](https://www.npmjs.com/package/extend-shallow): Extend an object with the properties of additional objects. node.js/javascript util. | [homepage](https://github.com/jonschlinkert/extend-shallow "Extend an object with the properties of additional objects. node.js/javascript util.")
+* [is-plain-object](https://www.npmjs.com/package/is-plain-object): Returns true if an object was created by the `Object` constructor. | [homepage](https://github.com/jonschlinkert/is-plain-object "Returns true if an object was created by the `Object` constructor.")
+* [kind-of](https://www.npmjs.com/package/kind-of): Get the native type of a value. | [homepage](https://github.com/jonschlinkert/kind-of "Get the native type of a value.")
+* [merge-deep](https://www.npmjs.com/package/merge-deep): Recursively merge values in a javascript object. | [homepage](https://github.com/jonschlinkert/merge-deep "Recursively merge values in a javascript object.")
+
+### Contributors
+
+| **Commits** | **Contributor** |
+| --- | --- |
+| 30 | [jonschlinkert](https://github.com/jonschlinkert) |
+| 8 | [doowb](https://github.com/doowb) |
+| 7 | [TrySound](https://github.com/TrySound) |
+| 3 | [onokumus](https://github.com/onokumus) |
+| 1 | [LeSuisse](https://github.com/LeSuisse) |
+| 1 | [tmcw](https://github.com/tmcw) |
+| 1 | [ZhouHansen](https://github.com/ZhouHansen) |
+
+### Author
+
+**Jon Schlinkert**
+
+* [GitHub Profile](https://github.com/jonschlinkert)
+* [Twitter Profile](https://twitter.com/jonschlinkert)
+* [LinkedIn Profile](https://linkedin.com/in/jonschlinkert)
+
+### License
+
+Copyright © 2019, [Jon Schlinkert](https://github.com/jonschlinkert).
+Released under the [MIT License](LICENSE).
+
+***
+
+_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.8.0, on April 28, 2019._
\ No newline at end of file
diff --git a/node_modules/@octokit/endpoint/node_modules/isobject/index.cjs.js b/node_modules/@octokit/endpoint/node_modules/isobject/index.cjs.js
new file mode 100644
index 0000000..49debe7
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/isobject/index.cjs.js
@@ -0,0 +1,14 @@
+'use strict';
+
+/*!
+ * isobject
+ *
+ * Copyright (c) 2014-2017, Jon Schlinkert.
+ * Released under the MIT License.
+ */
+
+function isObject(val) {
+ return val != null && typeof val === 'object' && Array.isArray(val) === false;
+}
+
+module.exports = isObject;
diff --git a/node_modules/@octokit/endpoint/node_modules/isobject/index.d.ts b/node_modules/@octokit/endpoint/node_modules/isobject/index.d.ts
new file mode 100644
index 0000000..c471c71
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/isobject/index.d.ts
@@ -0,0 +1,3 @@
+declare function isObject(val: any): boolean;
+
+export default isObject;
diff --git a/node_modules/@octokit/endpoint/node_modules/isobject/index.js b/node_modules/@octokit/endpoint/node_modules/isobject/index.js
new file mode 100644
index 0000000..e9f0382
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/isobject/index.js
@@ -0,0 +1,10 @@
+/*!
+ * isobject
+ *
+ * Copyright (c) 2014-2017, Jon Schlinkert.
+ * Released under the MIT License.
+ */
+
+export default function isObject(val) {
+ return val != null && typeof val === 'object' && Array.isArray(val) === false;
+};
diff --git a/node_modules/@octokit/endpoint/node_modules/isobject/package.json b/node_modules/@octokit/endpoint/node_modules/isobject/package.json
new file mode 100644
index 0000000..2c6d10a
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/isobject/package.json
@@ -0,0 +1,128 @@
+{
+ "_args": [
+ [
+ "isobject@4.0.0",
+ "/Users/dougtangren/code/rust/action-gh-release"
+ ]
+ ],
+ "_from": "isobject@4.0.0",
+ "_id": "isobject@4.0.0",
+ "_inBundle": false,
+ "_integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==",
+ "_location": "/@octokit/endpoint/isobject",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "version",
+ "registry": true,
+ "raw": "isobject@4.0.0",
+ "name": "isobject",
+ "escapedName": "isobject",
+ "rawSpec": "4.0.0",
+ "saveSpec": null,
+ "fetchSpec": "4.0.0"
+ },
+ "_requiredBy": [
+ "/@octokit/endpoint/is-plain-object"
+ ],
+ "_resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz",
+ "_spec": "4.0.0",
+ "_where": "/Users/dougtangren/code/rust/action-gh-release",
+ "author": {
+ "name": "Jon Schlinkert",
+ "url": "https://github.com/jonschlinkert"
+ },
+ "bugs": {
+ "url": "https://github.com/jonschlinkert/isobject/issues"
+ },
+ "contributors": [
+ {
+ "url": "https://github.com/LeSuisse"
+ },
+ {
+ "name": "Brian Woodward",
+ "url": "https://twitter.com/doowb"
+ },
+ {
+ "name": "Jon Schlinkert",
+ "url": "http://twitter.com/jonschlinkert"
+ },
+ {
+ "name": "Magnús Dæhlen",
+ "url": "https://github.com/magnudae"
+ },
+ {
+ "name": "Tom MacWright",
+ "url": "https://macwright.org"
+ }
+ ],
+ "dependencies": {},
+ "description": "Returns true if the value is an object and not an array or null.",
+ "devDependencies": {
+ "esm": "^3.2.22",
+ "gulp-format-md": "^0.1.9",
+ "mocha": "^2.4.5",
+ "rollup": "^1.10.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ },
+ "files": [
+ "index.d.ts",
+ "index.cjs.js",
+ "index.js"
+ ],
+ "homepage": "https://github.com/jonschlinkert/isobject",
+ "keywords": [
+ "check",
+ "is",
+ "is-object",
+ "isobject",
+ "kind",
+ "kind-of",
+ "kindof",
+ "native",
+ "object",
+ "type",
+ "typeof",
+ "value"
+ ],
+ "license": "MIT",
+ "main": "index.cjs.js",
+ "module": "index.js",
+ "name": "isobject",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/jonschlinkert/isobject.git"
+ },
+ "scripts": {
+ "build": "rollup -i index.js -o index.cjs.js -f cjs",
+ "prepublish": "npm run build",
+ "test": "mocha -r esm"
+ },
+ "types": "index.d.ts",
+ "verb": {
+ "related": {
+ "list": [
+ "extend-shallow",
+ "is-plain-object",
+ "kind-of",
+ "merge-deep"
+ ]
+ },
+ "toc": false,
+ "layout": "default",
+ "tasks": [
+ "readme"
+ ],
+ "plugins": [
+ "gulp-format-md"
+ ],
+ "lint": {
+ "reflinks": true
+ },
+ "reflinks": [
+ "verb"
+ ]
+ },
+ "version": "4.0.0"
+}
diff --git a/node_modules/@octokit/endpoint/node_modules/universal-user-agent/LICENSE.md b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/LICENSE.md
new file mode 100644
index 0000000..f105ab0
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/LICENSE.md
@@ -0,0 +1,7 @@
+# [ISC License](https://spdx.org/licenses/ISC)
+
+Copyright (c) 2018, Gregor Martynus (https://github.com/gr2m)
+
+Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/node_modules/@octokit/endpoint/node_modules/universal-user-agent/README.md b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/README.md
new file mode 100644
index 0000000..d00d14c
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/README.md
@@ -0,0 +1,25 @@
+# universal-user-agent
+
+> Get a user agent string in both browser and node
+
+[](https://www.npmjs.com/package/universal-user-agent)
+[](https://travis-ci.com/gr2m/universal-user-agent)
+[](https://greenkeeper.io/)
+
+```js
+const { getUserAgent } = require("universal-user-agent");
+// or import { getUserAgent } from "universal-user-agent";
+
+const userAgent = getUserAgent();
+// userAgent will look like this
+// in browser: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:61.0) Gecko/20100101 Firefox/61.0"
+// in node: Node.js/v8.9.4 (macOS High Sierra; x64)
+```
+
+## Credits
+
+The Node implementation was originally inspired by [default-user-agent](https://www.npmjs.com/package/default-user-agent).
+
+## License
+
+[ISC](LICENSE.md)
diff --git a/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-node/index.js b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-node/index.js
new file mode 100644
index 0000000..80a0710
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-node/index.js
@@ -0,0 +1,22 @@
+'use strict';
+
+Object.defineProperty(exports, '__esModule', { value: true });
+
+function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
+
+var osName = _interopDefault(require('os-name'));
+
+function getUserAgent() {
+ try {
+ return `Node.js/${process.version.substr(1)} (${osName()}; ${process.arch})`;
+ } catch (error) {
+ if (/wmic os get Caption/.test(error.message)) {
+ return "Windows ";
+ }
+
+ throw error;
+ }
+}
+
+exports.getUserAgent = getUserAgent;
+//# sourceMappingURL=index.js.map
diff --git a/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-node/index.js.map b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-node/index.js.map
new file mode 100644
index 0000000..aff09ec
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-node/index.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"index.js","sources":["../dist-src/node.js"],"sourcesContent":["import osName from \"os-name\";\nexport function getUserAgent() {\n try {\n return `Node.js/${process.version.substr(1)} (${osName()}; ${process.arch})`;\n }\n catch (error) {\n if (/wmic os get Caption/.test(error.message)) {\n return \"Windows \";\n }\n throw error;\n }\n}\n"],"names":["getUserAgent","process","version","substr","osName","arch","error","test","message"],"mappings":";;;;;;;;AACO,SAASA,YAAT,GAAwB;MACvB;WACQ,WAAUC,OAAO,CAACC,OAAR,CAAgBC,MAAhB,CAAuB,CAAvB,CAA0B,KAAIC,MAAM,EAAG,KAAIH,OAAO,CAACI,IAAK,GAA1E;GADJ,CAGA,OAAOC,KAAP,EAAc;QACN,sBAAsBC,IAAtB,CAA2BD,KAAK,CAACE,OAAjC,CAAJ,EAA+C;aACpC,gCAAP;;;UAEEF,KAAN;;;;;;"}
\ No newline at end of file
diff --git a/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-src/browser.js b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-src/browser.js
new file mode 100644
index 0000000..6f52232
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-src/browser.js
@@ -0,0 +1,3 @@
+export function getUserAgent() {
+ return navigator.userAgent;
+}
diff --git a/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-src/index.js b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-src/index.js
new file mode 100644
index 0000000..c6253f5
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-src/index.js
@@ -0,0 +1 @@
+export { getUserAgent } from "./node";
diff --git a/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-src/node.js b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-src/node.js
new file mode 100644
index 0000000..8b70a03
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-src/node.js
@@ -0,0 +1,12 @@
+import osName from "os-name";
+export function getUserAgent() {
+ try {
+ return `Node.js/${process.version.substr(1)} (${osName()}; ${process.arch})`;
+ }
+ catch (error) {
+ if (/wmic os get Caption/.test(error.message)) {
+ return "Windows ";
+ }
+ throw error;
+ }
+}
diff --git a/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-types/browser.d.ts b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-types/browser.d.ts
new file mode 100644
index 0000000..a7bb1c4
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-types/browser.d.ts
@@ -0,0 +1 @@
+export declare function getUserAgent(): string;
diff --git a/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-types/index.d.ts b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-types/index.d.ts
new file mode 100644
index 0000000..c6253f5
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-types/index.d.ts
@@ -0,0 +1 @@
+export { getUserAgent } from "./node";
diff --git a/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-types/node.d.ts b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-types/node.d.ts
new file mode 100644
index 0000000..a7bb1c4
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-types/node.d.ts
@@ -0,0 +1 @@
+export declare function getUserAgent(): string;
diff --git a/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-web/index.js b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-web/index.js
new file mode 100644
index 0000000..11ec79b
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-web/index.js
@@ -0,0 +1,6 @@
+function getUserAgent() {
+ return navigator.userAgent;
+}
+
+export { getUserAgent };
+//# sourceMappingURL=index.js.map
diff --git a/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-web/index.js.map b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-web/index.js.map
new file mode 100644
index 0000000..549407e
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/dist-web/index.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"index.js","sources":["../dist-src/browser.js"],"sourcesContent":["export function getUserAgent() {\n return navigator.userAgent;\n}\n"],"names":[],"mappings":"AAAO,SAAS,YAAY,GAAG;IAC3B,OAAO,SAAS,CAAC,SAAS,CAAC;CAC9B;;;;"}
\ No newline at end of file
diff --git a/node_modules/@octokit/endpoint/node_modules/universal-user-agent/package.json b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/package.json
new file mode 100644
index 0000000..0e2022d
--- /dev/null
+++ b/node_modules/@octokit/endpoint/node_modules/universal-user-agent/package.json
@@ -0,0 +1,68 @@
+{
+ "_args": [
+ [
+ "universal-user-agent@4.0.0",
+ "/Users/dougtangren/code/rust/action-gh-release"
+ ]
+ ],
+ "_from": "universal-user-agent@4.0.0",
+ "_id": "universal-user-agent@4.0.0",
+ "_inBundle": false,
+ "_integrity": "sha512-eM8knLpev67iBDizr/YtqkJsF3GK8gzDc6st/WKzrTuPtcsOKW/0IdL4cnMBsU69pOx0otavLWBDGTwg+dB0aA==",
+ "_location": "/@octokit/endpoint/universal-user-agent",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "version",
+ "registry": true,
+ "raw": "universal-user-agent@4.0.0",
+ "name": "universal-user-agent",
+ "escapedName": "universal-user-agent",
+ "rawSpec": "4.0.0",
+ "saveSpec": null,
+ "fetchSpec": "4.0.0"
+ },
+ "_requiredBy": [
+ "/@octokit/endpoint"
+ ],
+ "_resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-4.0.0.tgz",
+ "_spec": "4.0.0",
+ "_where": "/Users/dougtangren/code/rust/action-gh-release",
+ "bugs": {
+ "url": "https://github.com/gr2m/universal-user-agent/issues"
+ },
+ "dependencies": {
+ "os-name": "^3.1.0"
+ },
+ "description": "Get a user agent string in both browser and node",
+ "devDependencies": {
+ "@gr2m/pika-plugin-build-web": "^0.6.0-issue-84.1",
+ "@pika/pack": "^0.5.0",
+ "@pika/plugin-build-node": "^0.6.0",
+ "@pika/plugin-ts-standard-pkg": "^0.6.0",
+ "@types/jest": "^24.0.18",
+ "jest": "^24.9.0",
+ "prettier": "^1.18.2",
+ "semantic-release": "^15.9.15",
+ "ts-jest": "^24.0.2",
+ "typescript": "^3.6.2"
+ },
+ "files": [
+ "dist-*/",
+ "bin/"
+ ],
+ "homepage": "https://github.com/gr2m/universal-user-agent#readme",
+ "keywords": [],
+ "license": "ISC",
+ "main": "dist-node/index.js",
+ "module": "dist-web/index.js",
+ "name": "universal-user-agent",
+ "pika": true,
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/gr2m/universal-user-agent.git"
+ },
+ "sideEffects": false,
+ "source": "dist-src/index.js",
+ "types": "dist-types/index.d.ts",
+ "version": "4.0.0"
+}
diff --git a/node_modules/@octokit/endpoint/package.json b/node_modules/@octokit/endpoint/package.json
new file mode 100644
index 0000000..0720353
--- /dev/null
+++ b/node_modules/@octokit/endpoint/package.json
@@ -0,0 +1,86 @@
+{
+ "_args": [
+ [
+ "@octokit/endpoint@5.3.5",
+ "/Users/dougtangren/code/rust/action-gh-release"
+ ]
+ ],
+ "_from": "@octokit/endpoint@5.3.5",
+ "_id": "@octokit/endpoint@5.3.5",
+ "_inBundle": false,
+ "_integrity": "sha512-f8KqzIrnzPLiezDsZZPB+K8v8YSv6aKFl7eOu59O46lmlW4HagWl1U6NWl6LmT8d1w7NsKBI3paVtzcnRGO1gw==",
+ "_location": "/@octokit/endpoint",
+ "_phantomChildren": {
+ "os-name": "3.1.0"
+ },
+ "_requested": {
+ "type": "version",
+ "registry": true,
+ "raw": "@octokit/endpoint@5.3.5",
+ "name": "@octokit/endpoint",
+ "escapedName": "@octokit%2fendpoint",
+ "scope": "@octokit",
+ "rawSpec": "5.3.5",
+ "saveSpec": null,
+ "fetchSpec": "5.3.5"
+ },
+ "_requiredBy": [
+ "/@octokit/request"
+ ],
+ "_resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-5.3.5.tgz",
+ "_spec": "5.3.5",
+ "_where": "/Users/dougtangren/code/rust/action-gh-release",
+ "bugs": {
+ "url": "https://github.com/octokit/endpoint.js/issues"
+ },
+ "dependencies": {
+ "is-plain-object": "^3.0.0",
+ "universal-user-agent": "^4.0.0"
+ },
+ "description": "Turns REST API endpoints into generic request options",
+ "devDependencies": {
+ "@octokit/routes": "20.9.2",
+ "@pika/pack": "^0.5.0",
+ "@pika/plugin-build-node": "^0.6.0",
+ "@pika/plugin-build-web": "^0.6.0",
+ "@pika/plugin-ts-standard-pkg": "^0.6.0",
+ "@types/jest": "^24.0.11",
+ "handlebars": "^4.1.2",
+ "jest": "^24.7.1",
+ "lodash.set": "^4.3.2",
+ "pascal-case": "^2.0.1",
+ "prettier": "1.18.2",
+ "semantic-release": "^15.13.8",
+ "semantic-release-plugin-update-version-in-files": "^1.0.0",
+ "string-to-jsdoc-comment": "^1.0.0",
+ "ts-jest": "^24.0.2",
+ "typescript": "^3.4.5"
+ },
+ "files": [
+ "dist-*/",
+ "bin/"
+ ],
+ "homepage": "https://github.com/octokit/endpoint.js#readme",
+ "keywords": [
+ "octokit",
+ "github",
+ "api",
+ "rest"
+ ],
+ "license": "MIT",
+ "main": "dist-node/index.js",
+ "module": "dist-web/index.js",
+ "name": "@octokit/endpoint",
+ "pika": true,
+ "publishConfig": {
+ "access": "public"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/octokit/endpoint.js.git"
+ },
+ "sideEffects": false,
+ "source": "dist-src/index.js",
+ "types": "dist-types/index.d.ts",
+ "version": "5.3.5"
+}
diff --git a/node_modules/@octokit/graphql/LICENSE b/node_modules/@octokit/graphql/LICENSE
new file mode 100644
index 0000000..af5366d
--- /dev/null
+++ b/node_modules/@octokit/graphql/LICENSE
@@ -0,0 +1,21 @@
+The MIT License
+
+Copyright (c) 2018 Octokit contributors
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/node_modules/@octokit/graphql/README.md b/node_modules/@octokit/graphql/README.md
new file mode 100644
index 0000000..4e44592
--- /dev/null
+++ b/node_modules/@octokit/graphql/README.md
@@ -0,0 +1,292 @@
+# graphql.js
+
+> GitHub GraphQL API client for browsers and Node
+
+[](https://www.npmjs.com/package/@octokit/graphql)
+[](https://travis-ci.com/octokit/graphql.js)
+[](https://coveralls.io/github/octokit/graphql.js)
+[](https://greenkeeper.io/)
+
+
+
+- [Usage](#usage)
+- [Errors](#errors)
+- [Writing tests](#writing-tests)
+- [License](#license)
+
+
+
+## Usage
+
+Send a simple query
+
+```js
+const graphql = require('@octokit/graphql')
+const { repository } = await graphql(`{
+ repository(owner:"octokit", name:"graphql.js") {
+ issues(last:3) {
+ edges {
+ node {
+ title
+ }
+ }
+ }
+ }
+}`, {
+ headers: {
+ authorization: `token secret123`
+ }
+})
+```
+
+⚠️ Do not use [template literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals) in the query strings as they make your code vulnerable to query injection attacks (see [#2](https://github.com/octokit/graphql.js/issues/2)). Use variables instead:
+
+```js
+const graphql = require('@octokit/graphql')
+const { lastIssues } = await graphql(`query lastIssues($owner: String!, $repo: String!, $num: Int = 3) {
+ repository(owner:$owner, name:$repo) {
+ issues(last:$num) {
+ edges {
+ node {
+ title
+ }
+ }
+ }
+ }
+ }`, {
+ owner: 'octokit',
+ repo: 'graphql.js'
+ headers: {
+ authorization: `token secret123`
+ }
+ }
+})
+```
+
+Create two new clients and set separate default configs for them.
+
+```js
+const graphql1 = require('@octokit/graphql').defaults({
+ headers: {
+ authorization: `token secret123`
+ }
+})
+
+const graphql2 = require('@octokit/graphql').defaults({
+ headers: {
+ authorization: `token foobar`
+ }
+})
+```
+
+Create two clients, the second inherits config from the first.
+
+```js
+const graphql1 = require('@octokit/graphql').defaults({
+ headers: {
+ authorization: `token secret123`
+ }
+})
+
+const graphql2 = graphql1.defaults({
+ headers: {
+ 'user-agent': 'my-user-agent/v1.2.3'
+ }
+})
+```
+
+Create a new client with default options and run query
+
+```js
+const graphql = require('@octokit/graphql').defaults({
+ headers: {
+ authorization: `token secret123`
+ }
+})
+const { repository } = await graphql(`{
+ repository(owner:"octokit", name:"graphql.js") {
+ issues(last:3) {
+ edges {
+ node {
+ title
+ }
+ }
+ }
+ }
+}`)
+```
+
+Pass query together with headers and variables
+
+```js
+const graphql = require('@octokit/graphql')
+const { lastIssues } = await graphql({
+ query: `query lastIssues($owner: String!, $repo: String!, $num: Int = 3) {
+ repository(owner:$owner, name:$repo) {
+ issues(last:$num) {
+ edges {
+ node {
+ title
+ }
+ }
+ }
+ }
+ }`,
+ owner: 'octokit',
+ repo: 'graphql.js'
+ headers: {
+ authorization: `token secret123`
+ }
+})
+```
+
+Use with GitHub Enterprise
+
+```js
+const graphql = require('@octokit/graphql').defaults({
+ baseUrl: 'https://github-enterprise.acme-inc.com/api',
+ headers: {
+ authorization: `token secret123`
+ }
+})
+const { repository } = await graphql(`{
+ repository(owner:"acme-project", name:"acme-repo") {
+ issues(last:3) {
+ edges {
+ node {
+ title
+ }
+ }
+ }
+ }
+}`)
+```
+
+## Errors
+
+In case of a GraphQL error, `error.message` is set to the first error from the response’s `errors` array. All errors can be accessed at `error.errors`. `error.request` has the request options such as query, variables and headers set for easier debugging.
+
+```js
+const graphql = require('@octokit/graphql').defaults({
+ headers: {
+ authorization: `token secret123`
+ }
+})
+const query = `{
+ viewer {
+ bioHtml
+ }
+}`
+
+try {
+ const result = await graphql(query)
+} catch (error) {
+ // server responds with
+ // {
+ // "data": null,
+ // "errors": [{
+ // "message": "Field 'bioHtml' doesn't exist on type 'User'",
+ // "locations": [{
+ // "line": 3,
+ // "column": 5
+ // }]
+ // }]
+ // }
+
+ console.log('Request failed:', error.request) // { query, variables: {}, headers: { authorization: 'token secret123' } }
+ console.log(error.message) // Field 'bioHtml' doesn't exist on type 'User'
+}
+```
+
+## Partial responses
+
+A GraphQL query may respond with partial data accompanied by errors. In this case we will throw an error but the partial data will still be accessible through `error.data`
+
+```js
+const graphql = require('@octokit/graphql').defaults({
+ headers: {
+ authorization: `token secret123`
+ }
+})
+const query = `{
+ repository(name: "probot", owner: "probot") {
+ name
+ ref(qualifiedName: "master") {
+ target {
+ ... on Commit {
+ history(first: 25, after: "invalid cursor") {
+ nodes {
+ message
+ }
+ }
+ }
+ }
+ }
+ }
+}`
+
+try {
+ const result = await graphql(query)
+} catch (error) {
+ // server responds with
+ // {
+ // "data": {
+ // "repository": {
+ // "name": "probot",
+ // "ref": null
+ // }
+ // },
+ // "errors": [
+ // {
+ // "type": "INVALID_CURSOR_ARGUMENTS",
+ // "path": [
+ // "repository",
+ // "ref",
+ // "target",
+ // "history"
+ // ],
+ // "locations": [
+ // {
+ // "line": 7,
+ // "column": 11
+ // }
+ // ],
+ // "message": "`invalid cursor` does not appear to be a valid cursor."
+ // }
+ // ]
+ // }
+
+ console.log('Request failed:', error.request) // { query, variables: {}, headers: { authorization: 'token secret123' } }
+ console.log(error.message) // `invalid cursor` does not appear to be a valid cursor.
+ console.log(error.data) // { repository: { name: 'probot', ref: null } }
+}
+```
+
+## Writing tests
+
+You can pass a replacement for [the built-in fetch implementation](https://github.com/bitinn/node-fetch) as `request.fetch` option. For example, using [fetch-mock](http://www.wheresrhys.co.uk/fetch-mock/) works great to write tests
+
+```js
+const assert = require('assert')
+const fetchMock = require('fetch-mock/es5/server')
+
+const graphql = require('@octokit/graphql')
+
+graphql('{ viewer { login } }', {
+ headers: {
+ authorization: 'token secret123'
+ },
+ request: {
+ fetch: fetchMock.sandbox()
+ .post('https://api.github.com/graphql', (url, options) => {
+ assert.strictEqual(options.headers.authorization, 'token secret123')
+ assert.strictEqual(options.body, '{"query":"{ viewer { login } }"}', 'Sends correct query')
+ return { data: {} }
+ })
+ }
+})
+```
+
+## License
+
+[MIT](LICENSE)
diff --git a/node_modules/@octokit/graphql/index.js b/node_modules/@octokit/graphql/index.js
new file mode 100644
index 0000000..7f8278c
--- /dev/null
+++ b/node_modules/@octokit/graphql/index.js
@@ -0,0 +1,15 @@
+const { request } = require('@octokit/request')
+const getUserAgent = require('universal-user-agent')
+
+const version = require('./package.json').version
+const userAgent = `octokit-graphql.js/${version} ${getUserAgent()}`
+
+const withDefaults = require('./lib/with-defaults')
+
+module.exports = withDefaults(request, {
+ method: 'POST',
+ url: '/graphql',
+ headers: {
+ 'user-agent': userAgent
+ }
+})
diff --git a/node_modules/@octokit/graphql/lib/error.js b/node_modules/@octokit/graphql/lib/error.js
new file mode 100644
index 0000000..4478abd
--- /dev/null
+++ b/node_modules/@octokit/graphql/lib/error.js
@@ -0,0 +1,16 @@
+module.exports = class GraphqlError extends Error {
+ constructor (request, response) {
+ const message = response.data.errors[0].message
+ super(message)
+
+ Object.assign(this, response.data)
+ this.name = 'GraphqlError'
+ this.request = request
+
+ // Maintains proper stack trace (only available on V8)
+ /* istanbul ignore next */
+ if (Error.captureStackTrace) {
+ Error.captureStackTrace(this, this.constructor)
+ }
+ }
+}
diff --git a/node_modules/@octokit/graphql/lib/graphql.js b/node_modules/@octokit/graphql/lib/graphql.js
new file mode 100644
index 0000000..4a5b211
--- /dev/null
+++ b/node_modules/@octokit/graphql/lib/graphql.js
@@ -0,0 +1,36 @@
+module.exports = graphql
+
+const GraphqlError = require('./error')
+
+const NON_VARIABLE_OPTIONS = ['method', 'baseUrl', 'url', 'headers', 'request', 'query']
+
+function graphql (request, query, options) {
+ if (typeof query === 'string') {
+ options = Object.assign({ query }, options)
+ } else {
+ options = query
+ }
+
+ const requestOptions = Object.keys(options).reduce((result, key) => {
+ if (NON_VARIABLE_OPTIONS.includes(key)) {
+ result[key] = options[key]
+ return result
+ }
+
+ if (!result.variables) {
+ result.variables = {}
+ }
+
+ result.variables[key] = options[key]
+ return result
+ }, {})
+
+ return request(requestOptions)
+ .then(response => {
+ if (response.data.errors) {
+ throw new GraphqlError(requestOptions, response)
+ }
+
+ return response.data.data
+ })
+}
diff --git a/node_modules/@octokit/graphql/lib/with-defaults.js b/node_modules/@octokit/graphql/lib/with-defaults.js
new file mode 100644
index 0000000..a5b1493
--- /dev/null
+++ b/node_modules/@octokit/graphql/lib/with-defaults.js
@@ -0,0 +1,13 @@
+module.exports = withDefaults
+
+const graphql = require('./graphql')
+
+function withDefaults (request, newDefaults) {
+ const newRequest = request.defaults(newDefaults)
+ const newApi = function (query, options) {
+ return graphql(newRequest, query, options)
+ }
+
+ newApi.defaults = withDefaults.bind(null, newRequest)
+ return newApi
+}
diff --git a/node_modules/@octokit/graphql/package.json b/node_modules/@octokit/graphql/package.json
new file mode 100644
index 0000000..db18b76
--- /dev/null
+++ b/node_modules/@octokit/graphql/package.json
@@ -0,0 +1,122 @@
+{
+ "_args": [
+ [
+ "@octokit/graphql@2.1.3",
+ "/Users/dougtangren/code/rust/action-gh-release"
+ ]
+ ],
+ "_from": "@octokit/graphql@2.1.3",
+ "_id": "@octokit/graphql@2.1.3",
+ "_inBundle": false,
+ "_integrity": "sha512-XoXJqL2ondwdnMIW3wtqJWEwcBfKk37jO/rYkoxNPEVeLBDGsGO1TCWggrAlq3keGt/O+C/7VepXnukUxwt5vA==",
+ "_location": "/@octokit/graphql",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "version",
+ "registry": true,
+ "raw": "@octokit/graphql@2.1.3",
+ "name": "@octokit/graphql",
+ "escapedName": "@octokit%2fgraphql",
+ "scope": "@octokit",
+ "rawSpec": "2.1.3",
+ "saveSpec": null,
+ "fetchSpec": "2.1.3"
+ },
+ "_requiredBy": [
+ "/@actions/github"
+ ],
+ "_resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-2.1.3.tgz",
+ "_spec": "2.1.3",
+ "_where": "/Users/dougtangren/code/rust/action-gh-release",
+ "author": {
+ "name": "Gregor Martynus",
+ "url": "https://github.com/gr2m"
+ },
+ "bugs": {
+ "url": "https://github.com/octokit/graphql.js/issues"
+ },
+ "bundlesize": [
+ {
+ "path": "./dist/octokit-graphql.min.js.gz",
+ "maxSize": "5KB"
+ }
+ ],
+ "dependencies": {
+ "@octokit/request": "^5.0.0",
+ "universal-user-agent": "^2.0.3"
+ },
+ "description": "GitHub GraphQL API client for browsers and Node",
+ "devDependencies": {
+ "chai": "^4.2.0",
+ "compression-webpack-plugin": "^2.0.0",
+ "coveralls": "^3.0.3",
+ "cypress": "^3.1.5",
+ "fetch-mock": "^7.3.1",
+ "mkdirp": "^0.5.1",
+ "mocha": "^6.0.0",
+ "npm-run-all": "^4.1.3",
+ "nyc": "^14.0.0",
+ "semantic-release": "^15.13.3",
+ "simple-mock": "^0.8.0",
+ "standard": "^12.0.1",
+ "webpack": "^4.29.6",
+ "webpack-bundle-analyzer": "^3.1.0",
+ "webpack-cli": "^3.2.3"
+ },
+ "files": [
+ "lib"
+ ],
+ "homepage": "https://github.com/octokit/graphql.js#readme",
+ "keywords": [
+ "octokit",
+ "github",
+ "api",
+ "graphql"
+ ],
+ "license": "MIT",
+ "main": "index.js",
+ "name": "@octokit/graphql",
+ "publishConfig": {
+ "access": "public"
+ },
+ "release": {
+ "publish": [
+ "@semantic-release/npm",
+ {
+ "path": "@semantic-release/github",
+ "assets": [
+ "dist/*",
+ "!dist/*.map.gz"
+ ]
+ }
+ ]
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/octokit/graphql.js.git"
+ },
+ "scripts": {
+ "build": "npm-run-all build:*",
+ "build:development": "webpack --mode development --entry . --output-library=octokitGraphql --output=./dist/octokit-graphql.js --profile --json > dist/bundle-stats.json",
+ "build:production": "webpack --mode production --entry . --plugin=compression-webpack-plugin --output-library=octokitGraphql --output-path=./dist --output-filename=octokit-graphql.min.js --devtool source-map",
+ "bundle-report": "webpack-bundle-analyzer dist/bundle-stats.json --mode=static --no-open --report dist/bundle-report.html",
+ "coverage": "nyc report --reporter=html && open coverage/index.html",
+ "coverage:upload": "nyc report --reporter=text-lcov | coveralls",
+ "prebuild": "mkdirp dist/",
+ "pretest": "standard",
+ "test": "nyc mocha test/*-test.js",
+ "test:browser": "cypress run --browser chrome"
+ },
+ "standard": {
+ "globals": [
+ "describe",
+ "before",
+ "beforeEach",
+ "afterEach",
+ "after",
+ "it",
+ "expect"
+ ]
+ },
+ "version": "2.1.3"
+}
diff --git a/node_modules/@octokit/request-error/LICENSE b/node_modules/@octokit/request-error/LICENSE
new file mode 100644
index 0000000..ef2c18e
--- /dev/null
+++ b/node_modules/@octokit/request-error/LICENSE
@@ -0,0 +1,21 @@
+The MIT License
+
+Copyright (c) 2019 Octokit contributors
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/node_modules/@octokit/request-error/README.md b/node_modules/@octokit/request-error/README.md
new file mode 100644
index 0000000..bcb711d
--- /dev/null
+++ b/node_modules/@octokit/request-error/README.md
@@ -0,0 +1,68 @@
+# http-error.js
+
+> Error class for Octokit request errors
+
+[](https://www.npmjs.com/package/@octokit/request-error)
+[](https://travis-ci.com/octokit/request-error.js)
+[](https://greenkeeper.io/)
+
+## Usage
+
+
+
+
+Browsers
+ |
+Load @octokit/request-error directly from cdn.pika.dev
+
+```html
+
+```
+
+ |
+
+Node
+ |
+
+Install with npm install @octokit/request-error
+
+```js
+const { RequestError } = require("@octokit/request-error");
+// or: import { RequestError } from "@octokit/request-error";
+```
+
+ |
+
+
+
+```js
+const error = new RequestError("Oops", 500, {
+ headers: {
+ "x-github-request-id": "1:2:3:4"
+ }, // response headers
+ request: {
+ method: "POST",
+ url: "https://api.github.com/foo",
+ body: {
+ bar: "baz"
+ },
+ headers: {
+ authorization: "token secret123"
+ }
+ }
+});
+
+error.message; // Oops
+error.status; // 500
+error.headers; // { 'x-github-request-id': '1:2:3:4' }
+error.request.method; // POST
+error.request.url; // https://api.github.com/foo
+error.request.body; // { bar: 'baz' }
+error.request.headers; // { authorization: 'token [REDACTED]' }
+```
+
+## LICENSE
+
+[MIT](LICENSE)
diff --git a/node_modules/@octokit/request-error/dist-node/index.js b/node_modules/@octokit/request-error/dist-node/index.js
new file mode 100644
index 0000000..aa89664
--- /dev/null
+++ b/node_modules/@octokit/request-error/dist-node/index.js
@@ -0,0 +1,54 @@
+'use strict';
+
+Object.defineProperty(exports, '__esModule', { value: true });
+
+function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
+
+var deprecation = require('deprecation');
+var once = _interopDefault(require('once'));
+
+const logOnce = once(deprecation => console.warn(deprecation));
+/**
+ * Error with extra properties to help with debugging
+ */
+
+class RequestError extends Error {
+ constructor(message, statusCode, options) {
+ super(message); // Maintains proper stack trace (only available on V8)
+
+ /* istanbul ignore next */
+
+ if (Error.captureStackTrace) {
+ Error.captureStackTrace(this, this.constructor);
+ }
+
+ this.name = "HttpError";
+ this.status = statusCode;
+ Object.defineProperty(this, "code", {
+ get() {
+ logOnce(new deprecation.Deprecation("[@octokit/request-error] `error.code` is deprecated, use `error.status`."));
+ return statusCode;
+ }
+
+ });
+ this.headers = options.headers; // redact request credentials without mutating original request options
+
+ const requestCopy = Object.assign({}, options.request);
+
+ if (options.request.headers.authorization) {
+ requestCopy.headers = Object.assign({}, options.request.headers, {
+ authorization: options.request.headers.authorization.replace(/ .*$/, " [REDACTED]")
+ });
+ }
+
+ requestCopy.url = requestCopy.url // client_id & client_secret can be passed as URL query parameters to increase rate limit
+ // see https://developer.github.com/v3/#increasing-the-unauthenticated-rate-limit-for-oauth-applications
+ .replace(/\bclient_secret=\w+/g, "client_secret=[REDACTED]") // OAuth tokens can be passed as URL query parameters, although it is not recommended
+ // see https://developer.github.com/v3/#oauth2-token-sent-in-a-header
+ .replace(/\baccess_token=\w+/g, "access_token=[REDACTED]");
+ this.request = requestCopy;
+ }
+
+}
+
+exports.RequestError = RequestError;
diff --git a/node_modules/@octokit/request-error/dist-src/index.js b/node_modules/@octokit/request-error/dist-src/index.js
new file mode 100644
index 0000000..10eb5c7
--- /dev/null
+++ b/node_modules/@octokit/request-error/dist-src/index.js
@@ -0,0 +1,40 @@
+import { Deprecation } from "deprecation";
+import once from "once";
+const logOnce = once((deprecation) => console.warn(deprecation));
+/**
+ * Error with extra properties to help with debugging
+ */
+export class RequestError extends Error {
+ constructor(message, statusCode, options) {
+ super(message);
+ // Maintains proper stack trace (only available on V8)
+ /* istanbul ignore next */
+ if (Error.captureStackTrace) {
+ Error.captureStackTrace(this, this.constructor);
+ }
+ this.name = "HttpError";
+ this.status = statusCode;
+ Object.defineProperty(this, "code", {
+ get() {
+ logOnce(new Deprecation("[@octokit/request-error] `error.code` is deprecated, use `error.status`."));
+ return statusCode;
+ }
+ });
+ this.headers = options.headers;
+ // redact request credentials without mutating original request options
+ const requestCopy = Object.assign({}, options.request);
+ if (options.request.headers.authorization) {
+ requestCopy.headers = Object.assign({}, options.request.headers, {
+ authorization: options.request.headers.authorization.replace(/ .*$/, " [REDACTED]")
+ });
+ }
+ requestCopy.url = requestCopy.url
+ // client_id & client_secret can be passed as URL query parameters to increase rate limit
+ // see https://developer.github.com/v3/#increasing-the-unauthenticated-rate-limit-for-oauth-applications
+ .replace(/\bclient_secret=\w+/g, "client_secret=[REDACTED]")
+ // OAuth tokens can be passed as URL query parameters, although it is not recommended
+ // see https://developer.github.com/v3/#oauth2-token-sent-in-a-header
+ .replace(/\baccess_token=\w+/g, "access_token=[REDACTED]");
+ this.request = requestCopy;
+ }
+}
diff --git a/node_modules/@octokit/request-error/dist-src/types.js b/node_modules/@octokit/request-error/dist-src/types.js
new file mode 100644
index 0000000..e69de29
diff --git a/node_modules/@octokit/request-error/dist-types/index.d.ts b/node_modules/@octokit/request-error/dist-types/index.d.ts
new file mode 100644
index 0000000..b12f21d
--- /dev/null
+++ b/node_modules/@octokit/request-error/dist-types/index.d.ts
@@ -0,0 +1,26 @@
+import { RequestOptions, ResponseHeaders, RequestErrorOptions } from "./types";
+/**
+ * Error with extra properties to help with debugging
+ */
+export declare class RequestError extends Error {
+ name: "HttpError";
+ /**
+ * http status code
+ */
+ status: number;
+ /**
+ * http status code
+ *
+ * @deprecated `error.code` is deprecated in favor of `error.status`
+ */
+ code: number;
+ /**
+ * error response headers
+ */
+ headers: ResponseHeaders;
+ /**
+ * Request options that lead to the error.
+ */
+ request: RequestOptions;
+ constructor(message: string, statusCode: number, options: RequestErrorOptions);
+}
diff --git a/node_modules/@octokit/request-error/dist-types/types.d.ts b/node_modules/@octokit/request-error/dist-types/types.d.ts
new file mode 100644
index 0000000..444254e
--- /dev/null
+++ b/node_modules/@octokit/request-error/dist-types/types.d.ts
@@ -0,0 +1,37 @@
+/**
+ * Relative or absolute URL. Examples: `'/orgs/:org'`, `https://example.com/foo/bar`
+ */
+export declare type Url = string;
+/**
+ * Request method
+ */
+export declare type Method = "DELETE" | "GET" | "HEAD" | "PATCH" | "POST" | "PUT";
+export declare type RequestHeaders = {
+ /**
+ * Used for API previews and custom formats
+ */
+ accept?: string;
+ /**
+ * Redacted authorization header
+ */
+ authorization?: string;
+ "user-agent"?: string;
+ [header: string]: string | number | undefined;
+};
+export declare type ResponseHeaders = {
+ [header: string]: string;
+};
+export declare type EndpointRequestOptions = {
+ [option: string]: any;
+};
+export declare type RequestOptions = {
+ method: Method;
+ url: Url;
+ headers: RequestHeaders;
+ body?: any;
+ request?: EndpointRequestOptions;
+};
+export declare type RequestErrorOptions = {
+ headers: ResponseHeaders;
+ request: RequestOptions;
+};
diff --git a/node_modules/@octokit/request-error/dist-web/index.js b/node_modules/@octokit/request-error/dist-web/index.js
new file mode 100644
index 0000000..52ff28a
--- /dev/null
+++ b/node_modules/@octokit/request-error/dist-web/index.js
@@ -0,0 +1,48 @@
+import { Deprecation } from 'deprecation';
+import once from 'once';
+
+const logOnce = once(deprecation => console.warn(deprecation));
+/**
+ * Error with extra properties to help with debugging
+ */
+
+class RequestError extends Error {
+ constructor(message, statusCode, options) {
+ super(message); // Maintains proper stack trace (only available on V8)
+
+ /* istanbul ignore next */
+
+ if (Error.captureStackTrace) {
+ Error.captureStackTrace(this, this.constructor);
+ }
+
+ this.name = "HttpError";
+ this.status = statusCode;
+ Object.defineProperty(this, "code", {
+ get() {
+ logOnce(new Deprecation("[@octokit/request-error] `error.code` is deprecated, use `error.status`."));
+ return statusCode;
+ }
+
+ });
+ this.headers = options.headers; // redact request credentials without mutating original request options
+
+ const requestCopy = Object.assign({}, options.request);
+
+ if (options.request.headers.authorization) {
+ requestCopy.headers = Object.assign({}, options.request.headers, {
+ authorization: options.request.headers.authorization.replace(/ .*$/, " [REDACTED]")
+ });
+ }
+
+ requestCopy.url = requestCopy.url // client_id & client_secret can be passed as URL query parameters to increase rate limit
+ // see https://developer.github.com/v3/#increasing-the-unauthenticated-rate-limit-for-oauth-applications
+ .replace(/\bclient_secret=\w+/g, "client_secret=[REDACTED]") // OAuth tokens can be passed as URL query parameters, although it is not recommended
+ // see https://developer.github.com/v3/#oauth2-token-sent-in-a-header
+ .replace(/\baccess_token=\w+/g, "access_token=[REDACTED]");
+ this.request = requestCopy;
+ }
+
+}
+
+export { RequestError };
diff --git a/node_modules/@octokit/request-error/package.json b/node_modules/@octokit/request-error/package.json
new file mode 100644
index 0000000..e5f4e11
--- /dev/null
+++ b/node_modules/@octokit/request-error/package.json
@@ -0,0 +1,84 @@
+{
+ "_args": [
+ [
+ "@octokit/request-error@1.0.4",
+ "/Users/dougtangren/code/rust/action-gh-release"
+ ]
+ ],
+ "_from": "@octokit/request-error@1.0.4",
+ "_id": "@octokit/request-error@1.0.4",
+ "_inBundle": false,
+ "_integrity": "sha512-L4JaJDXn8SGT+5G0uX79rZLv0MNJmfGa4vb4vy1NnpjSnWDLJRy6m90udGwvMmavwsStgbv2QNkPzzTCMmL+ig==",
+ "_location": "/@octokit/request-error",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "version",
+ "registry": true,
+ "raw": "@octokit/request-error@1.0.4",
+ "name": "@octokit/request-error",
+ "escapedName": "@octokit%2frequest-error",
+ "scope": "@octokit",
+ "rawSpec": "1.0.4",
+ "saveSpec": null,
+ "fetchSpec": "1.0.4"
+ },
+ "_requiredBy": [
+ "/@octokit/request",
+ "/@octokit/rest"
+ ],
+ "_resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-1.0.4.tgz",
+ "_spec": "1.0.4",
+ "_where": "/Users/dougtangren/code/rust/action-gh-release",
+ "bugs": {
+ "url": "https://github.com/octokit/request-error.js/issues"
+ },
+ "dependencies": {
+ "deprecation": "^2.0.0",
+ "once": "^1.4.0"
+ },
+ "description": "Error class for Octokit request errors",
+ "devDependencies": {
+ "@pika/pack": "^0.3.7",
+ "@pika/plugin-build-node": "^0.4.0",
+ "@pika/plugin-build-web": "^0.4.0",
+ "@pika/plugin-bundle-web": "^0.4.0",
+ "@pika/plugin-ts-standard-pkg": "^0.4.0",
+ "@semantic-release/git": "^7.0.12",
+ "@types/jest": "^24.0.12",
+ "@types/node": "^12.0.2",
+ "@types/once": "^1.4.0",
+ "jest": "^24.7.1",
+ "pika-plugin-unpkg-field": "^1.1.0",
+ "prettier": "^1.17.0",
+ "semantic-release": "^15.10.5",
+ "ts-jest": "^24.0.2",
+ "typescript": "^3.4.5"
+ },
+ "files": [
+ "dist-*/",
+ "bin/"
+ ],
+ "homepage": "https://github.com/octokit/request-error.js#readme",
+ "keywords": [
+ "octokit",
+ "github",
+ "api",
+ "error"
+ ],
+ "license": "MIT",
+ "main": "dist-node/index.js",
+ "module": "dist-web/index.js",
+ "name": "@octokit/request-error",
+ "pika": true,
+ "publishConfig": {
+ "access": "public"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/octokit/request-error.js.git"
+ },
+ "sideEffects": false,
+ "source": "dist-src/index.js",
+ "types": "dist-types/index.d.ts",
+ "version": "1.0.4"
+}
diff --git a/node_modules/@octokit/request/LICENSE b/node_modules/@octokit/request/LICENSE
new file mode 100644
index 0000000..af5366d
--- /dev/null
+++ b/node_modules/@octokit/request/LICENSE
@@ -0,0 +1,21 @@
+The MIT License
+
+Copyright (c) 2018 Octokit contributors
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/node_modules/@octokit/request/README.md b/node_modules/@octokit/request/README.md
new file mode 100644
index 0000000..4cf0bd9
--- /dev/null
+++ b/node_modules/@octokit/request/README.md
@@ -0,0 +1,538 @@
+# request.js
+
+> Send parameterized requests to GitHub’s APIs with sensible defaults in browsers and Node
+
+[](https://www.npmjs.com/package/@octokit/request)
+[](https://travis-ci.org/octokit/request.js)
+[](https://greenkeeper.io/)
+
+`@octokit/request` is a request library for browsers & node that makes it easier
+to interact with [GitHub’s REST API](https://developer.github.com/v3/) and
+[GitHub’s GraphQL API](https://developer.github.com/v4/guides/forming-calls/#the-graphql-endpoint).
+
+It uses [`@octokit/endpoint`](https://github.com/octokit/endpoint.js) to parse
+the passed options and sends the request using [fetch](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API)
+([node-fetch](https://github.com/bitinn/node-fetch) in Node).
+
+
+
+
+
+- [Features](#features)
+- [Usage](#usage)
+ - [REST API example](#rest-api-example)
+ - [GraphQL example](#graphql-example)
+ - [Alternative: pass `method` & `url` as part of options](#alternative-pass-method--url-as-part-of-options)
+- [request()](#request)
+- [`request.defaults()`](#requestdefaults)
+- [`request.endpoint`](#requestendpoint)
+- [Special cases](#special-cases)
+ - [The `data` parameter – set request body directly](#the-data-parameter-%E2%80%93-set-request-body-directly)
+ - [Set parameters for both the URL/query and the request body](#set-parameters-for-both-the-urlquery-and-the-request-body)
+- [LICENSE](#license)
+
+
+
+## Features
+
+🤩 1:1 mapping of REST API endpoint documentation, e.g. [Add labels to an issue](https://developer.github.com/v3/issues/labels/#add-labels-to-an-issue) becomes
+
+```js
+request("POST /repos/:owner/:repo/issues/:number/labels", {
+ mediaType: {
+ previews: ["symmetra"]
+ },
+ owner: "octokit",
+ repo: "request.js",
+ number: 1,
+ labels: ["🐛 bug"]
+});
+```
+
+👶 [Small bundle size](https://bundlephobia.com/result?p=@octokit/request@5.0.3) (\<4kb minified + gzipped)
+
+😎 [Authenticate](#authentication) with any of [GitHubs Authentication Strategies](https://github.com/octokit/auth.js).
+
+👍 Sensible defaults
+
+- `baseUrl`: `https://api.github.com`
+- `headers.accept`: `application/vnd.github.v3+json`
+- `headers.agent`: `octokit-request.js/ `, e.g. `octokit-request.js/1.2.3 Node.js/10.15.0 (macOS Mojave; x64)`
+
+👌 Simple to test: mock requests by passing a custom fetch method.
+
+🧐 Simple to debug: Sets `error.request` to request options causing the error (with redacted credentials).
+
+## Usage
+
+
+
+
+Browsers
+ |
+Load @octokit/request directly from cdn.pika.dev
+
+```html
+
+```
+
+ |
+
+Node
+ |
+
+Install with npm install @octokit/request
+
+```js
+const { request } = require("@octokit/request");
+// or: import { request } from "@octokit/request";
+```
+
+ |
+
+
+
+### REST API example
+
+```js
+// Following GitHub docs formatting:
+// https://developer.github.com/v3/repos/#list-organization-repositories
+const result = await request("GET /orgs/:org/repos", {
+ headers: {
+ authorization: "token 0000000000000000000000000000000000000001"
+ },
+ org: "octokit",
+ type: "private"
+});
+
+console.log(`${result.data.length} repos found.`);
+```
+
+### GraphQL example
+
+For GraphQL request we recommend using [`@octokit/graphql`](https://github.com/octokit/graphql.js#readme)
+
+```js
+const result = await request("POST /graphql", {
+ headers: {
+ authorization: "token 0000000000000000000000000000000000000001"
+ },
+ query: `query ($login: String!) {
+ organization(login: $login) {
+ repositories(privacy: PRIVATE) {
+ totalCount
+ }
+ }
+ }`,
+ variables: {
+ login: "octokit"
+ }
+});
+```
+
+### Alternative: pass `method` & `url` as part of options
+
+Alternatively, pass in a method and a url
+
+```js
+const result = await request({
+ method: "GET",
+ url: "/orgs/:org/repos",
+ headers: {
+ authorization: "token 0000000000000000000000000000000000000001"
+ },
+ org: "octokit",
+ type: "private"
+});
+```
+
+## Authentication
+
+The simplest way to authenticate a request is to set the `Authorization` header directly, e.g. to a [personal access token](https://github.com/settings/tokens/).
+
+```js
+const requestWithAuth = request.defaults({
+ headers: {
+ authorization: "token 0000000000000000000000000000000000000001"
+ }
+});
+const result = await request("GET /user");
+```
+
+For more complex authentication strategies such as GitHub Apps or Basic, we recommend the according authentication library exported by [`@octokit/auth`](https://github.com/octokit/auth.js).
+
+```js
+const { createAppAuth } = require("@octokit/auth-app");
+const auth = createAppAuth({
+ id: process.env.APP_ID,
+ privateKey: process.env.PRIVATE_KEY,
+ installationId: 123
+});
+const requestWithAuth = request.defaults({
+ request: {
+ hook: auth.hook
+ },
+ mediaType: {
+ previews: ["machine-man"]
+ }
+});
+
+const { data: app } = await requestWithAuth("GET /app");
+const { data: app } = await requestWithAuth("POST /repos/:owner/:repo/issues", {
+ owner: "octocat",
+ repo: "hello-world",
+ title: "Hello from the engine room"
+});
+```
+
+## request()
+
+`request(route, options)` or `request(options)`.
+
+**Options**
+
+
+
+
+
+ name
+ |
+
+ type
+ |
+
+ description
+ |
+
+
+
+
+ route
+ |
+
+ String
+ |
+
+ If route is set it has to be a string consisting of the request method and URL, e.g. GET /orgs/:org
+ |
+
+
+
+ options.baseUrl
+ |
+
+ String
+ |
+
+ Required. Any supported http verb, case insensitive. Defaults to https://api.github.com .
+ |
+
+
+ options.headers
+ |
+
+ Object
+ |
+
+ Custom headers. Passed headers are merged with defaults:
+ headers['user-agent'] defaults to octokit-rest.js/1.2.3 (where 1.2.3 is the released version).
+ headers['accept'] defaults to application/vnd.github.v3+json . Use options.mediaType.{format,previews} to request API previews and custom media types.
+ |
+
+
+
+ options.mediaType.format
+ |
+
+ String
+ |
+
+ Media type param, such as `raw`, `html`, or `full`. See Media Types.
+ |
+
+
+
+ options.mediaType.previews
+ |
+
+ Array of strings
+ |
+
+ Name of previews, such as `mercy`, `symmetra`, or `scarlet-witch`. See API Previews.
+ |
+
+
+
+ options.method
+ |
+
+ String
+ |
+
+ Required. Any supported http verb, case insensitive. Defaults to Get .
+ |
+
+
+
+ options.url
+ |
+
+ String
+ |
+
+ Required. A path or full URL which may contain :variable or {variable} placeholders,
+ e.g. /orgs/:org/repos . The url is parsed using url-template.
+ |
+
+
+
+ options.data
+ |
+
+ Any
+ |
+
+ Set request body directly instead of setting it to JSON based on additional parameters. See "The `data` parameter" below.
+ |
+
+
+
+ options.request.agent
+ |
+
+ http(s).Agent instance
+ |
+
+ Node only. Useful for custom proxy, certificate, or dns lookup.
+ |
+
+
+
+ options.request.fetch
+ |
+
+ Function
+ |
+
+ Custom replacement for built-in fetch method. Useful for testing or request hooks.
+ |
+
+
+
+ options.request.hook
+ |
+
+ Function
+ |
+
+ Function with the signature hook(request, endpointOptions) , where endpointOptions are the parsed options as returned by endpoint.merge() , and request is request() . This option works great in conjuction with before-after-hook.
+ |
+
+
+
+ options.request.signal
+ |
+
+ new AbortController().signal
+ |
+
+ Use an AbortController instance to cancel a request. In node you can only cancel streamed requests.
+ |
+
+
+
+ options.request.timeout
+ |
+
+ Number
+ |
+
+ Node only. Request/response timeout in ms, it resets on redirect. 0 to disable (OS limit applies). options.request.signal is recommended instead.
+ |
+
+
+
+All other options except `options.request.*` will be passed depending on the `method` and `url` options.
+
+1. If the option key is a placeholder in the `url`, it will be used as replacement. For example, if the passed options are `{url: '/orgs/:org/repos', org: 'foo'}` the returned `options.url` is `https://api.github.com/orgs/foo/repos`
+2. If the `method` is `GET` or `HEAD`, the option is passed as query parameter
+3. Otherwise the parameter is passed in the request body as JSON key.
+
+**Result**
+
+`request` returns a promise and resolves with 4 keys
+
+
+
+
+
+ key
+ |
+
+ type
+ |
+
+ description
+ |
+
+
+
+ status |
+ Integer |
+ Response status status |
+
+
+ url |
+ String |
+ URL of response. If a request results in redirects, this is the final URL. You can send a HEAD request to retrieve it without loading the full response body. |
+
+
+ headers |
+ Object |
+ All response headers |
+
+
+ data |
+ Any |
+ The response body as returned from server. If the response is JSON then it will be parsed into an object |
+
+
+
+If an error occurs, the `error` instance has additional properties to help with debugging
+
+- `error.status` The http response status code
+- `error.headers` The http response headers as an object
+- `error.request` The request options such as `method`, `url` and `data`
+
+## `request.defaults()`
+
+Override or set default options. Example:
+
+```js
+const myrequest = require("@octokit/request").defaults({
+ baseUrl: "https://github-enterprise.acme-inc.com/api/v3",
+ headers: {
+ "user-agent": "myApp/1.2.3",
+ authorization: `token 0000000000000000000000000000000000000001`
+ },
+ org: "my-project",
+ per_page: 100
+});
+
+myrequest(`GET /orgs/:org/repos`);
+```
+
+You can call `.defaults()` again on the returned method, the defaults will cascade.
+
+```js
+const myProjectRequest = request.defaults({
+ baseUrl: "https://github-enterprise.acme-inc.com/api/v3",
+ headers: {
+ "user-agent": "myApp/1.2.3"
+ },
+ org: "my-project"
+});
+const myProjectRequestWithAuth = myProjectRequest.defaults({
+ headers: {
+ authorization: `token 0000000000000000000000000000000000000001`
+ }
+});
+```
+
+`myProjectRequest` now defaults the `baseUrl`, `headers['user-agent']`,
+`org` and `headers['authorization']` on top of `headers['accept']` that is set
+by the global default.
+
+## `request.endpoint`
+
+See https://github.com/octokit/endpoint.js. Example
+
+```js
+const options = request.endpoint("GET /orgs/:org/repos", {
+ org: "my-project",
+ type: "private"
+});
+
+// {
+// method: 'GET',
+// url: 'https://api.github.com/orgs/my-project/repos?type=private',
+// headers: {
+// accept: 'application/vnd.github.v3+json',
+// authorization: 'token 0000000000000000000000000000000000000001',
+// 'user-agent': 'octokit/endpoint.js v1.2.3'
+// }
+// }
+```
+
+All of the [`@octokit/endpoint`](https://github.com/octokit/endpoint.js) API can be used:
+
+- [`octokitRequest.endpoint()`](#endpoint)
+- [`octokitRequest.endpoint.defaults()`](#endpointdefaults)
+- [`octokitRequest.endpoint.merge()`](#endpointdefaults)
+- [`octokitRequest.endpoint.parse()`](#endpointmerge)
+
+## Special cases
+
+
+
+### The `data` parameter – set request body directly
+
+Some endpoints such as [Render a Markdown document in raw mode](https://developer.github.com/v3/markdown/#render-a-markdown-document-in-raw-mode) don’t have parameters that are sent as request body keys, instead the request body needs to be set directly. In these cases, set the `data` parameter.
+
+```js
+const response = await request("POST /markdown/raw", {
+ data: "Hello world github/linguist#1 **cool**, and #1!",
+ headers: {
+ accept: "text/html;charset=utf-8",
+ "content-type": "text/plain"
+ }
+});
+
+// Request is sent as
+//
+// {
+// method: 'post',
+// url: 'https://api.github.com/markdown/raw',
+// headers: {
+// accept: 'text/html;charset=utf-8',
+// 'content-type': 'text/plain',
+// 'user-agent': userAgent
+// },
+// body: 'Hello world github/linguist#1 **cool**, and #1!'
+// }
+//
+// not as
+//
+// {
+// ...
+// body: '{"data": "Hello world github/linguist#1 **cool**, and #1!"}'
+// }
+```
+
+### Set parameters for both the URL/query and the request body
+
+There are API endpoints that accept both query parameters as well as a body. In that case you need to add the query parameters as templates to `options.url`, as defined in the [RFC 6570 URI Template specification](https://tools.ietf.org/html/rfc6570).
+
+Example
+
+```js
+request(
+ "POST https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}",
+ {
+ name: "example.zip",
+ label: "short description",
+ headers: {
+ "content-type": "text/plain",
+ "content-length": 14,
+ authorization: `token 0000000000000000000000000000000000000001`
+ },
+ data: "Hello, world!"
+ }
+);
+```
+
+## LICENSE
+
+[MIT](LICENSE)
diff --git a/node_modules/@octokit/request/dist-node/index.js b/node_modules/@octokit/request/dist-node/index.js
new file mode 100644
index 0000000..d1bdaa6
--- /dev/null
+++ b/node_modules/@octokit/request/dist-node/index.js
@@ -0,0 +1,144 @@
+'use strict';
+
+Object.defineProperty(exports, '__esModule', { value: true });
+
+function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
+
+var endpoint = require('@octokit/endpoint');
+var universalUserAgent = require('universal-user-agent');
+var isPlainObject = _interopDefault(require('is-plain-object'));
+var nodeFetch = _interopDefault(require('node-fetch'));
+var requestError = require('@octokit/request-error');
+
+const VERSION = "0.0.0-development";
+
+function getBufferResponse(response) {
+ return response.arrayBuffer();
+}
+
+function fetchWrapper(requestOptions) {
+ if (isPlainObject(requestOptions.body) || Array.isArray(requestOptions.body)) {
+ requestOptions.body = JSON.stringify(requestOptions.body);
+ }
+
+ let headers = {};
+ let status;
+ let url;
+ const fetch = requestOptions.request && requestOptions.request.fetch || nodeFetch;
+ return fetch(requestOptions.url, Object.assign({
+ method: requestOptions.method,
+ body: requestOptions.body,
+ headers: requestOptions.headers,
+ redirect: requestOptions.redirect
+ }, requestOptions.request)).then(response => {
+ url = response.url;
+ status = response.status;
+
+ for (const keyAndValue of response.headers) {
+ headers[keyAndValue[0]] = keyAndValue[1];
+ }
+
+ if (status === 204 || status === 205) {
+ return;
+ } // GitHub API returns 200 for HEAD requsets
+
+
+ if (requestOptions.method === "HEAD") {
+ if (status < 400) {
+ return;
+ }
+
+ throw new requestError.RequestError(response.statusText, status, {
+ headers,
+ request: requestOptions
+ });
+ }
+
+ if (status === 304) {
+ throw new requestError.RequestError("Not modified", status, {
+ headers,
+ request: requestOptions
+ });
+ }
+
+ if (status >= 400) {
+ return response.text().then(message => {
+ const error = new requestError.RequestError(message, status, {
+ headers,
+ request: requestOptions
+ });
+
+ try {
+ Object.assign(error, JSON.parse(error.message));
+ } catch (e) {// ignore, see octokit/rest.js#684
+ }
+
+ throw error;
+ });
+ }
+
+ const contentType = response.headers.get("content-type");
+
+ if (/application\/json/.test(contentType)) {
+ return response.json();
+ }
+
+ if (!contentType || /^text\/|charset=utf-8$/.test(contentType)) {
+ return response.text();
+ }
+
+ return getBufferResponse(response);
+ }).then(data => {
+ return {
+ status,
+ url,
+ headers,
+ data
+ };
+ }).catch(error => {
+ if (error instanceof requestError.RequestError) {
+ throw error;
+ }
+
+ throw new requestError.RequestError(error.message, 500, {
+ headers,
+ request: requestOptions
+ });
+ });
+}
+
+function withDefaults(oldEndpoint, newDefaults) {
+ const endpoint = oldEndpoint.defaults(newDefaults);
+
+ const newApi = function (route, parameters) {
+ const endpointOptions = endpoint.merge(route, parameters);
+
+ if (!endpointOptions.request || !endpointOptions.request.hook) {
+ return fetchWrapper(endpoint.parse(endpointOptions));
+ }
+
+ const request = (route, parameters) => {
+ return fetchWrapper(endpoint.parse(endpoint.merge(route, parameters)));
+ };
+
+ Object.assign(request, {
+ endpoint,
+ defaults: withDefaults.bind(null, endpoint)
+ });
+ return endpointOptions.request.hook(request, endpointOptions);
+ };
+
+ return Object.assign(newApi, {
+ endpoint,
+ defaults: withDefaults.bind(null, endpoint)
+ });
+}
+
+const request = withDefaults(endpoint.endpoint, {
+ headers: {
+ "user-agent": `octokit-request.js/${VERSION} ${universalUserAgent.getUserAgent()}`
+ }
+});
+
+exports.request = request;
+//# sourceMappingURL=index.js.map
diff --git a/node_modules/@octokit/request/dist-node/index.js.map b/node_modules/@octokit/request/dist-node/index.js.map
new file mode 100644
index 0000000..1bdc65b
--- /dev/null
+++ b/node_modules/@octokit/request/dist-node/index.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"index.js","sources":["../dist-src/version.js","../dist-src/get-buffer-response.js","../dist-src/fetch-wrapper.js","../dist-src/with-defaults.js","../dist-src/index.js"],"sourcesContent":["export const VERSION = \"0.0.0-development\";\n","export default function getBufferResponse(response) {\n return response.arrayBuffer();\n}\n","import isPlainObject from \"is-plain-object\";\nimport nodeFetch from \"node-fetch\";\nimport { RequestError } from \"@octokit/request-error\";\nimport getBuffer from \"./get-buffer-response\";\nexport default function fetchWrapper(requestOptions) {\n if (isPlainObject(requestOptions.body) ||\n Array.isArray(requestOptions.body)) {\n requestOptions.body = JSON.stringify(requestOptions.body);\n }\n let headers = {};\n let status;\n let url;\n const fetch = (requestOptions.request && requestOptions.request.fetch) || nodeFetch;\n return fetch(requestOptions.url, Object.assign({\n method: requestOptions.method,\n body: requestOptions.body,\n headers: requestOptions.headers,\n redirect: requestOptions.redirect\n }, requestOptions.request))\n .then(response => {\n url = response.url;\n status = response.status;\n for (const keyAndValue of response.headers) {\n headers[keyAndValue[0]] = keyAndValue[1];\n }\n if (status === 204 || status === 205) {\n return;\n }\n // GitHub API returns 200 for HEAD requsets\n if (requestOptions.method === \"HEAD\") {\n if (status < 400) {\n return;\n }\n throw new RequestError(response.statusText, status, {\n headers,\n request: requestOptions\n });\n }\n if (status === 304) {\n throw new RequestError(\"Not modified\", status, {\n headers,\n request: requestOptions\n });\n }\n if (status >= 400) {\n return response\n .text()\n .then(message => {\n const error = new RequestError(message, status, {\n headers,\n request: requestOptions\n });\n try {\n Object.assign(error, JSON.parse(error.message));\n }\n catch (e) {\n // ignore, see octokit/rest.js#684\n }\n throw error;\n });\n }\n const contentType = response.headers.get(\"content-type\");\n if (/application\\/json/.test(contentType)) {\n return response.json();\n }\n if (!contentType || /^text\\/|charset=utf-8$/.test(contentType)) {\n return response.text();\n }\n return getBuffer(response);\n })\n .then(data => {\n return {\n status,\n url,\n headers,\n data\n };\n })\n .catch(error => {\n if (error instanceof RequestError) {\n throw error;\n }\n throw new RequestError(error.message, 500, {\n headers,\n request: requestOptions\n });\n });\n}\n","import fetchWrapper from \"./fetch-wrapper\";\nexport default function withDefaults(oldEndpoint, newDefaults) {\n const endpoint = oldEndpoint.defaults(newDefaults);\n const newApi = function (route, parameters) {\n const endpointOptions = endpoint.merge(route, parameters);\n if (!endpointOptions.request || !endpointOptions.request.hook) {\n return fetchWrapper(endpoint.parse(endpointOptions));\n }\n const request = (route, parameters) => {\n return fetchWrapper(endpoint.parse(endpoint.merge(route, parameters)));\n };\n Object.assign(request, {\n endpoint,\n defaults: withDefaults.bind(null, endpoint)\n });\n return endpointOptions.request.hook(request, endpointOptions);\n };\n return Object.assign(newApi, {\n endpoint,\n defaults: withDefaults.bind(null, endpoint)\n });\n}\n","import { endpoint } from \"@octokit/endpoint\";\nimport { getUserAgent } from \"universal-user-agent\";\nimport { VERSION } from \"./version\";\nimport withDefaults from \"./with-defaults\";\nexport const request = withDefaults(endpoint, {\n headers: {\n \"user-agent\": `octokit-request.js/${VERSION} ${getUserAgent()}`\n }\n});\n"],"names":["VERSION","getBufferResponse","response","arrayBuffer","fetchWrapper","requestOptions","isPlainObject","body","Array","isArray","JSON","stringify","headers","status","url","fetch","request","nodeFetch","Object","assign","method","redirect","then","keyAndValue","RequestError","statusText","text","message","error","parse","e","contentType","get","test","json","getBuffer","data","catch","withDefaults","oldEndpoint","newDefaults","endpoint","defaults","newApi","route","parameters","endpointOptions","merge","hook","bind","getUserAgent"],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/@octokit/request/dist-src/fetch-wrapper.js b/node_modules/@octokit/request/dist-src/fetch-wrapper.js
new file mode 100644
index 0000000..6592532
--- /dev/null
+++ b/node_modules/@octokit/request/dist-src/fetch-wrapper.js
@@ -0,0 +1,88 @@
+import isPlainObject from "is-plain-object";
+import nodeFetch from "node-fetch";
+import { RequestError } from "@octokit/request-error";
+import getBuffer from "./get-buffer-response";
+export default function fetchWrapper(requestOptions) {
+ if (isPlainObject(requestOptions.body) ||
+ Array.isArray(requestOptions.body)) {
+ requestOptions.body = JSON.stringify(requestOptions.body);
+ }
+ let headers = {};
+ let status;
+ let url;
+ const fetch = (requestOptions.request && requestOptions.request.fetch) || nodeFetch;
+ return fetch(requestOptions.url, Object.assign({
+ method: requestOptions.method,
+ body: requestOptions.body,
+ headers: requestOptions.headers,
+ redirect: requestOptions.redirect
+ }, requestOptions.request))
+ .then(response => {
+ url = response.url;
+ status = response.status;
+ for (const keyAndValue of response.headers) {
+ headers[keyAndValue[0]] = keyAndValue[1];
+ }
+ if (status === 204 || status === 205) {
+ return;
+ }
+ // GitHub API returns 200 for HEAD requsets
+ if (requestOptions.method === "HEAD") {
+ if (status < 400) {
+ return;
+ }
+ throw new RequestError(response.statusText, status, {
+ headers,
+ request: requestOptions
+ });
+ }
+ if (status === 304) {
+ throw new RequestError("Not modified", status, {
+ headers,
+ request: requestOptions
+ });
+ }
+ if (status >= 400) {
+ return response
+ .text()
+ .then(message => {
+ const error = new RequestError(message, status, {
+ headers,
+ request: requestOptions
+ });
+ try {
+ Object.assign(error, JSON.parse(error.message));
+ }
+ catch (e) {
+ // ignore, see octokit/rest.js#684
+ }
+ throw error;
+ });
+ }
+ const contentType = response.headers.get("content-type");
+ if (/application\/json/.test(contentType)) {
+ return response.json();
+ }
+ if (!contentType || /^text\/|charset=utf-8$/.test(contentType)) {
+ return response.text();
+ }
+ return getBuffer(response);
+ })
+ .then(data => {
+ return {
+ status,
+ url,
+ headers,
+ data
+ };
+ })
+ .catch(error => {
+ if (error instanceof RequestError) {
+ throw error;
+ }
+ throw new RequestError(error.message, 500, {
+ headers,
+ request: requestOptions
+ });
+ });
+}
diff --git a/node_modules/@octokit/request/dist-src/get-buffer-response.js b/node_modules/@octokit/request/dist-src/get-buffer-response.js
new file mode 100644
index 0000000..845a394
--- /dev/null
+++ b/node_modules/@octokit/request/dist-src/get-buffer-response.js
@@ -0,0 +1,3 @@
+export default function getBufferResponse(response) {
+ return response.arrayBuffer();
+}
diff --git a/node_modules/@octokit/request/dist-src/index.js b/node_modules/@octokit/request/dist-src/index.js
new file mode 100644
index 0000000..6a36142
--- /dev/null
+++ b/node_modules/@octokit/request/dist-src/index.js
@@ -0,0 +1,9 @@
+import { endpoint } from "@octokit/endpoint";
+import { getUserAgent } from "universal-user-agent";
+import { VERSION } from "./version";
+import withDefaults from "./with-defaults";
+export const request = withDefaults(endpoint, {
+ headers: {
+ "user-agent": `octokit-request.js/${VERSION} ${getUserAgent()}`
+ }
+});
diff --git a/node_modules/@octokit/request/dist-src/types.js b/node_modules/@octokit/request/dist-src/types.js
new file mode 100644
index 0000000..e69de29
diff --git a/node_modules/@octokit/request/dist-src/version.js b/node_modules/@octokit/request/dist-src/version.js
new file mode 100644
index 0000000..86383b1
--- /dev/null
+++ b/node_modules/@octokit/request/dist-src/version.js
@@ -0,0 +1 @@
+export const VERSION = "0.0.0-development";
diff --git a/node_modules/@octokit/request/dist-src/with-defaults.js b/node_modules/@octokit/request/dist-src/with-defaults.js
new file mode 100644
index 0000000..8e44f46
--- /dev/null
+++ b/node_modules/@octokit/request/dist-src/with-defaults.js
@@ -0,0 +1,22 @@
+import fetchWrapper from "./fetch-wrapper";
+export default function withDefaults(oldEndpoint, newDefaults) {
+ const endpoint = oldEndpoint.defaults(newDefaults);
+ const newApi = function (route, parameters) {
+ const endpointOptions = endpoint.merge(route, parameters);
+ if (!endpointOptions.request || !endpointOptions.request.hook) {
+ return fetchWrapper(endpoint.parse(endpointOptions));
+ }
+ const request = (route, parameters) => {
+ return fetchWrapper(endpoint.parse(endpoint.merge(route, parameters)));
+ };
+ Object.assign(request, {
+ endpoint,
+ defaults: withDefaults.bind(null, endpoint)
+ });
+ return endpointOptions.request.hook(request, endpointOptions);
+ };
+ return Object.assign(newApi, {
+ endpoint,
+ defaults: withDefaults.bind(null, endpoint)
+ });
+}
diff --git a/node_modules/@octokit/request/dist-types/fetch-wrapper.d.ts b/node_modules/@octokit/request/dist-types/fetch-wrapper.d.ts
new file mode 100644
index 0000000..0308f69
--- /dev/null
+++ b/node_modules/@octokit/request/dist-types/fetch-wrapper.d.ts
@@ -0,0 +1,11 @@
+import { endpoint } from "./types";
+export default function fetchWrapper(requestOptions: ReturnType & {
+ redirect?: string;
+}): Promise<{
+ status: number;
+ url: string;
+ headers: {
+ [header: string]: string;
+ };
+ data: any;
+}>;
diff --git a/node_modules/@octokit/request/dist-types/get-buffer-response.d.ts b/node_modules/@octokit/request/dist-types/get-buffer-response.d.ts
new file mode 100644
index 0000000..915b705
--- /dev/null
+++ b/node_modules/@octokit/request/dist-types/get-buffer-response.d.ts
@@ -0,0 +1,2 @@
+import { Response } from "node-fetch";
+export default function getBufferResponse(response: Response): Promise;
diff --git a/node_modules/@octokit/request/dist-types/index.d.ts b/node_modules/@octokit/request/dist-types/index.d.ts
new file mode 100644
index 0000000..e2cff5d
--- /dev/null
+++ b/node_modules/@octokit/request/dist-types/index.d.ts
@@ -0,0 +1 @@
+export declare const request: import("./types").request;
diff --git a/node_modules/@octokit/request/dist-types/types.d.ts b/node_modules/@octokit/request/dist-types/types.d.ts
new file mode 100644
index 0000000..f20f2b5
--- /dev/null
+++ b/node_modules/@octokit/request/dist-types/types.d.ts
@@ -0,0 +1,152 @@
+///
+import { Agent } from "http";
+import { endpoint } from "@octokit/endpoint";
+export interface request {
+ /**
+ * Sends a request based on endpoint options
+ *
+ * @param {object} endpoint Must set `method` and `url`. Plus URL, query or body parameters, as well as `headers`, `mediaType.{format|previews}`, `request`, or `baseUrl`.
+ */
+ (options: Endpoint): Promise>;
+ /**
+ * Sends a request based on endpoint options
+ *
+ * @param {string} route Request method + URL. Example: `'GET /orgs/:org'`
+ * @param {object} [parameters] URL, query or body parameters, as well as `headers`, `mediaType.{format|previews}`, `request`, or `baseUrl`.
+ */
+ (route: Route, parameters?: Parameters): Promise>;
+ /**
+ * Returns a new `endpoint` with updated route and parameters
+ */
+ defaults: (newDefaults: Parameters) => request;
+ /**
+ * Octokit endpoint API, see {@link https://github.com/octokit/endpoint.js|@octokit/endpoint}
+ */
+ endpoint: typeof endpoint;
+}
+export declare type endpoint = typeof endpoint;
+/**
+ * Request method + URL. Example: `'GET /orgs/:org'`
+ */
+export declare type Route = string;
+/**
+ * Relative or absolute URL. Examples: `'/orgs/:org'`, `https://example.com/foo/bar`
+ */
+export declare type Url = string;
+/**
+ * Request method
+ */
+export declare type Method = "DELETE" | "GET" | "HEAD" | "PATCH" | "POST" | "PUT";
+/**
+ * Endpoint parameters
+ */
+export declare type Parameters = {
+ /**
+ * Base URL to be used when a relative URL is passed, such as `/orgs/:org`.
+ * If `baseUrl` is `https://enterprise.acme-inc.com/api/v3`, then the request
+ * will be sent to `https://enterprise.acme-inc.com/api/v3/orgs/:org`.
+ */
+ baseUrl?: string;
+ /**
+ * HTTP headers. Use lowercase keys.
+ */
+ headers?: RequestHeaders;
+ /**
+ * Media type options, see {@link https://developer.github.com/v3/media/|GitHub Developer Guide}
+ */
+ mediaType?: {
+ /**
+ * `json` by default. Can be `raw`, `text`, `html`, `full`, `diff`, `patch`, `sha`, `base64`. Depending on endpoint
+ */
+ format?: string;
+ /**
+ * Custom media type names of {@link https://developer.github.com/v3/media/|API Previews} without the `-preview` suffix.
+ * Example for single preview: `['squirrel-girl']`.
+ * Example for multiple previews: `['squirrel-girl', 'mister-fantastic']`.
+ */
+ previews?: string[];
+ };
+ /**
+ * Pass custom meta information for the request. The `request` object will be returned as is.
+ */
+ request?: OctokitRequestOptions;
+ /**
+ * Any additional parameter will be passed as follows
+ * 1. URL parameter if `':parameter'` or `{parameter}` is part of `url`
+ * 2. Query parameter if `method` is `'GET'` or `'HEAD'`
+ * 3. Request body if `parameter` is `'data'`
+ * 4. JSON in the request body in the form of `body[parameter]` unless `parameter` key is `'data'`
+ */
+ [parameter: string]: any;
+};
+export declare type Endpoint = Parameters & {
+ method: Method;
+ url: Url;
+};
+export declare type Defaults = Parameters & {
+ method: Method;
+ baseUrl: string;
+ headers: RequestHeaders & {
+ accept: string;
+ "user-agent": string;
+ };
+ mediaType: {
+ format: string;
+ previews: string[];
+ };
+};
+export declare type OctokitResponse = {
+ headers: ResponseHeaders;
+ /**
+ * http response code
+ */
+ status: number;
+ /**
+ * URL of response after all redirects
+ */
+ url: string;
+ /**
+ * This is the data you would see in https://developer.Octokit.com/v3/
+ */
+ data: T;
+};
+export declare type AnyResponse = OctokitResponse;
+export declare type RequestHeaders = {
+ /**
+ * Avoid setting `accept`, use `mediaFormat.{format|previews}` instead.
+ */
+ accept?: string;
+ /**
+ * Use `authorization` to send authenticated request, remember `token ` / `bearer ` prefixes. Example: `token 1234567890abcdef1234567890abcdef12345678`
+ */
+ authorization?: string;
+ /**
+ * `user-agent` is set do a default and can be overwritten as needed.
+ */
+ "user-agent"?: string;
+ [header: string]: string | number | undefined;
+};
+export declare type ResponseHeaders = {
+ [header: string]: string;
+};
+export declare type Fetch = any;
+export declare type Signal = any;
+export declare type OctokitRequestOptions = {
+ /**
+ * Node only. Useful for custom proxy, certificate, or dns lookup.
+ */
+ agent?: Agent;
+ /**
+ * Custom replacement for built-in fetch method. Useful for testing or request hooks.
+ */
+ fetch?: Fetch;
+ /**
+ * Use an `AbortController` instance to cancel a request. In node you can only cancel streamed requests.
+ */
+ signal?: Signal;
+ /**
+ * Node only. Request/response timeout in ms, it resets on redirect. 0 to disable (OS limit applies). `options.request.signal` is recommended instead.
+ */
+ timeout?: number;
+ [option: string]: any;
+};
diff --git a/node_modules/@octokit/request/dist-types/version.d.ts b/node_modules/@octokit/request/dist-types/version.d.ts
new file mode 100644
index 0000000..15711f0
--- /dev/null
+++ b/node_modules/@octokit/request/dist-types/version.d.ts
@@ -0,0 +1 @@
+export declare const VERSION = "0.0.0-development";
diff --git a/node_modules/@octokit/request/dist-types/with-defaults.d.ts b/node_modules/@octokit/request/dist-types/with-defaults.d.ts
new file mode 100644
index 0000000..bca6cd0
--- /dev/null
+++ b/node_modules/@octokit/request/dist-types/with-defaults.d.ts
@@ -0,0 +1,2 @@
+import { request, endpoint, Parameters } from "./types";
+export default function withDefaults(oldEndpoint: endpoint, newDefaults: Parameters): request;
diff --git a/node_modules/@octokit/request/dist-web/index.js b/node_modules/@octokit/request/dist-web/index.js
new file mode 100644
index 0000000..1c3732c
--- /dev/null
+++ b/node_modules/@octokit/request/dist-web/index.js
@@ -0,0 +1,127 @@
+import { endpoint } from '@octokit/endpoint';
+import { getUserAgent } from 'universal-user-agent';
+import isPlainObject from 'is-plain-object';
+import nodeFetch from 'node-fetch';
+import { RequestError } from '@octokit/request-error';
+
+const VERSION = "0.0.0-development";
+
+function getBufferResponse(response) {
+ return response.arrayBuffer();
+}
+
+function fetchWrapper(requestOptions) {
+ if (isPlainObject(requestOptions.body) ||
+ Array.isArray(requestOptions.body)) {
+ requestOptions.body = JSON.stringify(requestOptions.body);
+ }
+ let headers = {};
+ let status;
+ let url;
+ const fetch = (requestOptions.request && requestOptions.request.fetch) || nodeFetch;
+ return fetch(requestOptions.url, Object.assign({
+ method: requestOptions.method,
+ body: requestOptions.body,
+ headers: requestOptions.headers,
+ redirect: requestOptions.redirect
+ }, requestOptions.request))
+ .then(response => {
+ url = response.url;
+ status = response.status;
+ for (const keyAndValue of response.headers) {
+ headers[keyAndValue[0]] = keyAndValue[1];
+ }
+ if (status === 204 || status === 205) {
+ return;
+ }
+ // GitHub API returns 200 for HEAD requsets
+ if (requestOptions.method === "HEAD") {
+ if (status < 400) {
+ return;
+ }
+ throw new RequestError(response.statusText, status, {
+ headers,
+ request: requestOptions
+ });
+ }
+ if (status === 304) {
+ throw new RequestError("Not modified", status, {
+ headers,
+ request: requestOptions
+ });
+ }
+ if (status >= 400) {
+ return response
+ .text()
+ .then(message => {
+ const error = new RequestError(message, status, {
+ headers,
+ request: requestOptions
+ });
+ try {
+ Object.assign(error, JSON.parse(error.message));
+ }
+ catch (e) {
+ // ignore, see octokit/rest.js#684
+ }
+ throw error;
+ });
+ }
+ const contentType = response.headers.get("content-type");
+ if (/application\/json/.test(contentType)) {
+ return response.json();
+ }
+ if (!contentType || /^text\/|charset=utf-8$/.test(contentType)) {
+ return response.text();
+ }
+ return getBufferResponse(response);
+ })
+ .then(data => {
+ return {
+ status,
+ url,
+ headers,
+ data
+ };
+ })
+ .catch(error => {
+ if (error instanceof RequestError) {
+ throw error;
+ }
+ throw new RequestError(error.message, 500, {
+ headers,
+ request: requestOptions
+ });
+ });
+}
+
+function withDefaults(oldEndpoint, newDefaults) {
+ const endpoint = oldEndpoint.defaults(newDefaults);
+ const newApi = function (route, parameters) {
+ const endpointOptions = endpoint.merge(route, parameters);
+ if (!endpointOptions.request || !endpointOptions.request.hook) {
+ return fetchWrapper(endpoint.parse(endpointOptions));
+ }
+ const request = (route, parameters) => {
+ return fetchWrapper(endpoint.parse(endpoint.merge(route, parameters)));
+ };
+ Object.assign(request, {
+ endpoint,
+ defaults: withDefaults.bind(null, endpoint)
+ });
+ return endpointOptions.request.hook(request, endpointOptions);
+ };
+ return Object.assign(newApi, {
+ endpoint,
+ defaults: withDefaults.bind(null, endpoint)
+ });
+}
+
+const request = withDefaults(endpoint, {
+ headers: {
+ "user-agent": `octokit-request.js/${VERSION} ${getUserAgent()}`
+ }
+});
+
+export { request };
+//# sourceMappingURL=index.js.map
diff --git a/node_modules/@octokit/request/dist-web/index.js.map b/node_modules/@octokit/request/dist-web/index.js.map
new file mode 100644
index 0000000..35561ce
--- /dev/null
+++ b/node_modules/@octokit/request/dist-web/index.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"index.js","sources":["../dist-src/version.js","../dist-src/get-buffer-response.js","../dist-src/fetch-wrapper.js","../dist-src/with-defaults.js","../dist-src/index.js"],"sourcesContent":["export const VERSION = \"0.0.0-development\";\n","export default function getBufferResponse(response) {\n return response.arrayBuffer();\n}\n","import isPlainObject from \"is-plain-object\";\nimport nodeFetch from \"node-fetch\";\nimport { RequestError } from \"@octokit/request-error\";\nimport getBuffer from \"./get-buffer-response\";\nexport default function fetchWrapper(requestOptions) {\n if (isPlainObject(requestOptions.body) ||\n Array.isArray(requestOptions.body)) {\n requestOptions.body = JSON.stringify(requestOptions.body);\n }\n let headers = {};\n let status;\n let url;\n const fetch = (requestOptions.request && requestOptions.request.fetch) || nodeFetch;\n return fetch(requestOptions.url, Object.assign({\n method: requestOptions.method,\n body: requestOptions.body,\n headers: requestOptions.headers,\n redirect: requestOptions.redirect\n }, requestOptions.request))\n .then(response => {\n url = response.url;\n status = response.status;\n for (const keyAndValue of response.headers) {\n headers[keyAndValue[0]] = keyAndValue[1];\n }\n if (status === 204 || status === 205) {\n return;\n }\n // GitHub API returns 200 for HEAD requsets\n if (requestOptions.method === \"HEAD\") {\n if (status < 400) {\n return;\n }\n throw new RequestError(response.statusText, status, {\n headers,\n request: requestOptions\n });\n }\n if (status === 304) {\n throw new RequestError(\"Not modified\", status, {\n headers,\n request: requestOptions\n });\n }\n if (status >= 400) {\n return response\n .text()\n .then(message => {\n const error = new RequestError(message, status, {\n headers,\n request: requestOptions\n });\n try {\n Object.assign(error, JSON.parse(error.message));\n }\n catch (e) {\n // ignore, see octokit/rest.js#684\n }\n throw error;\n });\n }\n const contentType = response.headers.get(\"content-type\");\n if (/application\\/json/.test(contentType)) {\n return response.json();\n }\n if (!contentType || /^text\\/|charset=utf-8$/.test(contentType)) {\n return response.text();\n }\n return getBuffer(response);\n })\n .then(data => {\n return {\n status,\n url,\n headers,\n data\n };\n })\n .catch(error => {\n if (error instanceof RequestError) {\n throw error;\n }\n throw new RequestError(error.message, 500, {\n headers,\n request: requestOptions\n });\n });\n}\n","import fetchWrapper from \"./fetch-wrapper\";\nexport default function withDefaults(oldEndpoint, newDefaults) {\n const endpoint = oldEndpoint.defaults(newDefaults);\n const newApi = function (route, parameters) {\n const endpointOptions = endpoint.merge(route, parameters);\n if (!endpointOptions.request || !endpointOptions.request.hook) {\n return fetchWrapper(endpoint.parse(endpointOptions));\n }\n const request = (route, parameters) => {\n return fetchWrapper(endpoint.parse(endpoint.merge(route, parameters)));\n };\n Object.assign(request, {\n endpoint,\n defaults: withDefaults.bind(null, endpoint)\n });\n return endpointOptions.request.hook(request, endpointOptions);\n };\n return Object.assign(newApi, {\n endpoint,\n defaults: withDefaults.bind(null, endpoint)\n });\n}\n","import { endpoint } from \"@octokit/endpoint\";\nimport { getUserAgent } from \"universal-user-agent\";\nimport { VERSION } from \"./version\";\nimport withDefaults from \"./with-defaults\";\nexport const request = withDefaults(endpoint, {\n headers: {\n \"user-agent\": `octokit-request.js/${VERSION} ${getUserAgent()}`\n }\n});\n"],"names":["getBuffer"],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/@octokit/request/node_modules/is-plain-object/LICENSE b/node_modules/@octokit/request/node_modules/is-plain-object/LICENSE
new file mode 100644
index 0000000..3f2eca1
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/is-plain-object/LICENSE
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2014-2017, Jon Schlinkert.
+
+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.
diff --git a/node_modules/@octokit/request/node_modules/is-plain-object/README.md b/node_modules/@octokit/request/node_modules/is-plain-object/README.md
new file mode 100644
index 0000000..60b7b59
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/is-plain-object/README.md
@@ -0,0 +1,119 @@
+# is-plain-object [](https://www.npmjs.com/package/is-plain-object) [](https://npmjs.org/package/is-plain-object) [](https://npmjs.org/package/is-plain-object) [](https://travis-ci.org/jonschlinkert/is-plain-object)
+
+> Returns true if an object was created by the `Object` constructor.
+
+Please consider following this project's author, [Jon Schlinkert](https://github.com/jonschlinkert), and consider starring the project to show your :heart: and support.
+
+## Install
+
+Install with [npm](https://www.npmjs.com/):
+
+```sh
+$ npm install --save is-plain-object
+```
+
+Use [isobject](https://github.com/jonschlinkert/isobject) if you only want to check if the value is an object and not an array or null.
+
+## Usage
+
+```js
+import isPlainObject from 'is-plain-object';
+```
+
+**true** when created by the `Object` constructor.
+
+```js
+isPlainObject(Object.create({}));
+//=> true
+isPlainObject(Object.create(Object.prototype));
+//=> true
+isPlainObject({foo: 'bar'});
+//=> true
+isPlainObject({});
+//=> true
+```
+
+**false** when not created by the `Object` constructor.
+
+```js
+isPlainObject(1);
+//=> false
+isPlainObject(['foo', 'bar']);
+//=> false
+isPlainObject([]);
+//=> false
+isPlainObject(new Foo);
+//=> false
+isPlainObject(null);
+//=> false
+isPlainObject(Object.create(null));
+//=> false
+```
+
+## About
+
+
+Contributing
+
+Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new).
+
+
+
+
+Running Tests
+
+Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:
+
+```sh
+$ npm install && npm test
+```
+
+
+
+
+Building docs
+
+_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_
+
+To generate the readme, run the following command:
+
+```sh
+$ npm install -g verbose/verb#dev verb-generate-readme && verb
+```
+
+
+
+### Related projects
+
+You might also be interested in these projects:
+
+* [is-number](https://www.npmjs.com/package/is-number): Returns true if a number or string value is a finite number. Useful for regex… [more](https://github.com/jonschlinkert/is-number) | [homepage](https://github.com/jonschlinkert/is-number "Returns true if a number or string value is a finite number. Useful for regex matches, parsing, user input, etc.")
+* [isobject](https://www.npmjs.com/package/isobject): Returns true if the value is an object and not an array or null. | [homepage](https://github.com/jonschlinkert/isobject "Returns true if the value is an object and not an array or null.")
+* [kind-of](https://www.npmjs.com/package/kind-of): Get the native type of a value. | [homepage](https://github.com/jonschlinkert/kind-of "Get the native type of a value.")
+
+### Contributors
+
+| **Commits** | **Contributor** |
+| --- | --- |
+| 19 | [jonschlinkert](https://github.com/jonschlinkert) |
+| 6 | [TrySound](https://github.com/TrySound) |
+| 6 | [stevenvachon](https://github.com/stevenvachon) |
+| 3 | [onokumus](https://github.com/onokumus) |
+| 1 | [wtgtybhertgeghgtwtg](https://github.com/wtgtybhertgeghgtwtg) |
+
+### Author
+
+**Jon Schlinkert**
+
+* [GitHub Profile](https://github.com/jonschlinkert)
+* [Twitter Profile](https://twitter.com/jonschlinkert)
+* [LinkedIn Profile](https://linkedin.com/in/jonschlinkert)
+
+### License
+
+Copyright © 2019, [Jon Schlinkert](https://github.com/jonschlinkert).
+Released under the [MIT License](LICENSE).
+
+***
+
+_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.8.0, on April 28, 2019._
\ No newline at end of file
diff --git a/node_modules/@octokit/request/node_modules/is-plain-object/index.cjs.js b/node_modules/@octokit/request/node_modules/is-plain-object/index.cjs.js
new file mode 100644
index 0000000..d7dda95
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/is-plain-object/index.cjs.js
@@ -0,0 +1,48 @@
+'use strict';
+
+/*!
+ * isobject
+ *
+ * Copyright (c) 2014-2017, Jon Schlinkert.
+ * Released under the MIT License.
+ */
+
+function isObject(val) {
+ return val != null && typeof val === 'object' && Array.isArray(val) === false;
+}
+
+/*!
+ * is-plain-object
+ *
+ * Copyright (c) 2014-2017, Jon Schlinkert.
+ * Released under the MIT License.
+ */
+
+function isObjectObject(o) {
+ return isObject(o) === true
+ && Object.prototype.toString.call(o) === '[object Object]';
+}
+
+function isPlainObject(o) {
+ var ctor,prot;
+
+ if (isObjectObject(o) === false) return false;
+
+ // If has modified constructor
+ ctor = o.constructor;
+ if (typeof ctor !== 'function') return false;
+
+ // If has modified prototype
+ prot = ctor.prototype;
+ if (isObjectObject(prot) === false) return false;
+
+ // If constructor does not have an Object-specific method
+ if (prot.hasOwnProperty('isPrototypeOf') === false) {
+ return false;
+ }
+
+ // Most likely a plain Object
+ return true;
+}
+
+module.exports = isPlainObject;
diff --git a/node_modules/@octokit/request/node_modules/is-plain-object/index.d.ts b/node_modules/@octokit/request/node_modules/is-plain-object/index.d.ts
new file mode 100644
index 0000000..fd131f0
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/is-plain-object/index.d.ts
@@ -0,0 +1,3 @@
+declare function isPlainObject(o: any): boolean;
+
+export default isPlainObject;
diff --git a/node_modules/@octokit/request/node_modules/is-plain-object/index.js b/node_modules/@octokit/request/node_modules/is-plain-object/index.js
new file mode 100644
index 0000000..565ce9e
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/is-plain-object/index.js
@@ -0,0 +1,35 @@
+/*!
+ * is-plain-object
+ *
+ * Copyright (c) 2014-2017, Jon Schlinkert.
+ * Released under the MIT License.
+ */
+
+import isObject from 'isobject';
+
+function isObjectObject(o) {
+ return isObject(o) === true
+ && Object.prototype.toString.call(o) === '[object Object]';
+}
+
+export default function isPlainObject(o) {
+ var ctor,prot;
+
+ if (isObjectObject(o) === false) return false;
+
+ // If has modified constructor
+ ctor = o.constructor;
+ if (typeof ctor !== 'function') return false;
+
+ // If has modified prototype
+ prot = ctor.prototype;
+ if (isObjectObject(prot) === false) return false;
+
+ // If constructor does not have an Object-specific method
+ if (prot.hasOwnProperty('isPrototypeOf') === false) {
+ return false;
+ }
+
+ // Most likely a plain Object
+ return true;
+};
diff --git a/node_modules/@octokit/request/node_modules/is-plain-object/package.json b/node_modules/@octokit/request/node_modules/is-plain-object/package.json
new file mode 100644
index 0000000..f118b43
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/is-plain-object/package.json
@@ -0,0 +1,127 @@
+{
+ "_args": [
+ [
+ "is-plain-object@3.0.0",
+ "/Users/dougtangren/code/rust/action-gh-release"
+ ]
+ ],
+ "_from": "is-plain-object@3.0.0",
+ "_id": "is-plain-object@3.0.0",
+ "_inBundle": false,
+ "_integrity": "sha512-tZIpofR+P05k8Aocp7UI/2UTa9lTJSebCXpFFoR9aibpokDj/uXBsJ8luUu0tTVYKkMU6URDUuOfJZ7koewXvg==",
+ "_location": "/@octokit/request/is-plain-object",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "version",
+ "registry": true,
+ "raw": "is-plain-object@3.0.0",
+ "name": "is-plain-object",
+ "escapedName": "is-plain-object",
+ "rawSpec": "3.0.0",
+ "saveSpec": null,
+ "fetchSpec": "3.0.0"
+ },
+ "_requiredBy": [
+ "/@octokit/request"
+ ],
+ "_resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.0.tgz",
+ "_spec": "3.0.0",
+ "_where": "/Users/dougtangren/code/rust/action-gh-release",
+ "author": {
+ "name": "Jon Schlinkert",
+ "url": "https://github.com/jonschlinkert"
+ },
+ "bugs": {
+ "url": "https://github.com/jonschlinkert/is-plain-object/issues"
+ },
+ "contributors": [
+ {
+ "name": "Jon Schlinkert",
+ "url": "http://twitter.com/jonschlinkert"
+ },
+ {
+ "name": "Osman Nuri Okumuş",
+ "url": "http://onokumus.com"
+ },
+ {
+ "name": "Steven Vachon",
+ "url": "https://svachon.com"
+ },
+ {
+ "url": "https://github.com/wtgtybhertgeghgtwtg"
+ }
+ ],
+ "dependencies": {
+ "isobject": "^4.0.0"
+ },
+ "description": "Returns true if an object was created by the `Object` constructor.",
+ "devDependencies": {
+ "chai": "^4.2.0",
+ "esm": "^3.2.22",
+ "gulp-format-md": "^1.0.0",
+ "mocha": "^6.1.4",
+ "mocha-headless-chrome": "^2.0.2",
+ "rollup": "^1.10.1",
+ "rollup-plugin-node-resolve": "^4.2.3"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ },
+ "files": [
+ "index.d.ts",
+ "index.js",
+ "index.cjs.js"
+ ],
+ "homepage": "https://github.com/jonschlinkert/is-plain-object",
+ "keywords": [
+ "check",
+ "is",
+ "is-object",
+ "isobject",
+ "javascript",
+ "kind",
+ "kind-of",
+ "object",
+ "plain",
+ "type",
+ "typeof",
+ "value"
+ ],
+ "license": "MIT",
+ "main": "index.cjs.js",
+ "module": "index.js",
+ "name": "is-plain-object",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/jonschlinkert/is-plain-object.git"
+ },
+ "scripts": {
+ "build": "rollup -c",
+ "prepare": "rollup -c",
+ "test": "npm run test_node && npm run build && npm run test_browser",
+ "test_browser": "mocha-headless-chrome --args=disable-web-security -f test/browser.html",
+ "test_node": "mocha -r esm"
+ },
+ "types": "index.d.ts",
+ "verb": {
+ "toc": false,
+ "layout": "default",
+ "tasks": [
+ "readme"
+ ],
+ "plugins": [
+ "gulp-format-md"
+ ],
+ "related": {
+ "list": [
+ "is-number",
+ "isobject",
+ "kind-of"
+ ]
+ },
+ "lint": {
+ "reflinks": true
+ }
+ },
+ "version": "3.0.0"
+}
diff --git a/node_modules/@octokit/request/node_modules/isobject/LICENSE b/node_modules/@octokit/request/node_modules/isobject/LICENSE
new file mode 100644
index 0000000..943e71d
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/isobject/LICENSE
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2014-2017, Jon Schlinkert.
+
+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.
\ No newline at end of file
diff --git a/node_modules/@octokit/request/node_modules/isobject/README.md b/node_modules/@octokit/request/node_modules/isobject/README.md
new file mode 100644
index 0000000..1c6e21f
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/isobject/README.md
@@ -0,0 +1,127 @@
+# isobject [](https://www.npmjs.com/package/isobject) [](https://npmjs.org/package/isobject) [](https://npmjs.org/package/isobject) [](https://travis-ci.org/jonschlinkert/isobject)
+
+> Returns true if the value is an object and not an array or null.
+
+Please consider following this project's author, [Jon Schlinkert](https://github.com/jonschlinkert), and consider starring the project to show your :heart: and support.
+
+## Install
+
+Install with [npm](https://www.npmjs.com/):
+
+```sh
+$ npm install --save isobject
+```
+
+Use [is-plain-object](https://github.com/jonschlinkert/is-plain-object) if you want only objects that are created by the `Object` constructor.
+
+## Install
+
+Install with [npm](https://www.npmjs.com/):
+
+```sh
+$ npm install isobject
+```
+
+## Usage
+
+```js
+import isObject from 'isobject';
+```
+
+**True**
+
+All of the following return `true`:
+
+```js
+isObject({});
+isObject(Object.create({}));
+isObject(Object.create(Object.prototype));
+isObject(Object.create(null));
+isObject({});
+isObject(new Foo);
+isObject(/foo/);
+```
+
+**False**
+
+All of the following return `false`:
+
+```js
+isObject();
+isObject(function () {});
+isObject(1);
+isObject([]);
+isObject(undefined);
+isObject(null);
+```
+
+## About
+
+
+Contributing
+
+Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new).
+
+
+
+
+Running Tests
+
+Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:
+
+```sh
+$ npm install && npm test
+```
+
+
+
+
+Building docs
+
+_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_
+
+To generate the readme, run the following command:
+
+```sh
+$ npm install -g verbose/verb#dev verb-generate-readme && verb
+```
+
+
+
+### Related projects
+
+You might also be interested in these projects:
+
+* [extend-shallow](https://www.npmjs.com/package/extend-shallow): Extend an object with the properties of additional objects. node.js/javascript util. | [homepage](https://github.com/jonschlinkert/extend-shallow "Extend an object with the properties of additional objects. node.js/javascript util.")
+* [is-plain-object](https://www.npmjs.com/package/is-plain-object): Returns true if an object was created by the `Object` constructor. | [homepage](https://github.com/jonschlinkert/is-plain-object "Returns true if an object was created by the `Object` constructor.")
+* [kind-of](https://www.npmjs.com/package/kind-of): Get the native type of a value. | [homepage](https://github.com/jonschlinkert/kind-of "Get the native type of a value.")
+* [merge-deep](https://www.npmjs.com/package/merge-deep): Recursively merge values in a javascript object. | [homepage](https://github.com/jonschlinkert/merge-deep "Recursively merge values in a javascript object.")
+
+### Contributors
+
+| **Commits** | **Contributor** |
+| --- | --- |
+| 30 | [jonschlinkert](https://github.com/jonschlinkert) |
+| 8 | [doowb](https://github.com/doowb) |
+| 7 | [TrySound](https://github.com/TrySound) |
+| 3 | [onokumus](https://github.com/onokumus) |
+| 1 | [LeSuisse](https://github.com/LeSuisse) |
+| 1 | [tmcw](https://github.com/tmcw) |
+| 1 | [ZhouHansen](https://github.com/ZhouHansen) |
+
+### Author
+
+**Jon Schlinkert**
+
+* [GitHub Profile](https://github.com/jonschlinkert)
+* [Twitter Profile](https://twitter.com/jonschlinkert)
+* [LinkedIn Profile](https://linkedin.com/in/jonschlinkert)
+
+### License
+
+Copyright © 2019, [Jon Schlinkert](https://github.com/jonschlinkert).
+Released under the [MIT License](LICENSE).
+
+***
+
+_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.8.0, on April 28, 2019._
\ No newline at end of file
diff --git a/node_modules/@octokit/request/node_modules/isobject/index.cjs.js b/node_modules/@octokit/request/node_modules/isobject/index.cjs.js
new file mode 100644
index 0000000..49debe7
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/isobject/index.cjs.js
@@ -0,0 +1,14 @@
+'use strict';
+
+/*!
+ * isobject
+ *
+ * Copyright (c) 2014-2017, Jon Schlinkert.
+ * Released under the MIT License.
+ */
+
+function isObject(val) {
+ return val != null && typeof val === 'object' && Array.isArray(val) === false;
+}
+
+module.exports = isObject;
diff --git a/node_modules/@octokit/request/node_modules/isobject/index.d.ts b/node_modules/@octokit/request/node_modules/isobject/index.d.ts
new file mode 100644
index 0000000..c471c71
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/isobject/index.d.ts
@@ -0,0 +1,3 @@
+declare function isObject(val: any): boolean;
+
+export default isObject;
diff --git a/node_modules/@octokit/request/node_modules/isobject/index.js b/node_modules/@octokit/request/node_modules/isobject/index.js
new file mode 100644
index 0000000..e9f0382
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/isobject/index.js
@@ -0,0 +1,10 @@
+/*!
+ * isobject
+ *
+ * Copyright (c) 2014-2017, Jon Schlinkert.
+ * Released under the MIT License.
+ */
+
+export default function isObject(val) {
+ return val != null && typeof val === 'object' && Array.isArray(val) === false;
+};
diff --git a/node_modules/@octokit/request/node_modules/isobject/package.json b/node_modules/@octokit/request/node_modules/isobject/package.json
new file mode 100644
index 0000000..19e7c00
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/isobject/package.json
@@ -0,0 +1,128 @@
+{
+ "_args": [
+ [
+ "isobject@4.0.0",
+ "/Users/dougtangren/code/rust/action-gh-release"
+ ]
+ ],
+ "_from": "isobject@4.0.0",
+ "_id": "isobject@4.0.0",
+ "_inBundle": false,
+ "_integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==",
+ "_location": "/@octokit/request/isobject",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "version",
+ "registry": true,
+ "raw": "isobject@4.0.0",
+ "name": "isobject",
+ "escapedName": "isobject",
+ "rawSpec": "4.0.0",
+ "saveSpec": null,
+ "fetchSpec": "4.0.0"
+ },
+ "_requiredBy": [
+ "/@octokit/request/is-plain-object"
+ ],
+ "_resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz",
+ "_spec": "4.0.0",
+ "_where": "/Users/dougtangren/code/rust/action-gh-release",
+ "author": {
+ "name": "Jon Schlinkert",
+ "url": "https://github.com/jonschlinkert"
+ },
+ "bugs": {
+ "url": "https://github.com/jonschlinkert/isobject/issues"
+ },
+ "contributors": [
+ {
+ "url": "https://github.com/LeSuisse"
+ },
+ {
+ "name": "Brian Woodward",
+ "url": "https://twitter.com/doowb"
+ },
+ {
+ "name": "Jon Schlinkert",
+ "url": "http://twitter.com/jonschlinkert"
+ },
+ {
+ "name": "Magnús Dæhlen",
+ "url": "https://github.com/magnudae"
+ },
+ {
+ "name": "Tom MacWright",
+ "url": "https://macwright.org"
+ }
+ ],
+ "dependencies": {},
+ "description": "Returns true if the value is an object and not an array or null.",
+ "devDependencies": {
+ "esm": "^3.2.22",
+ "gulp-format-md": "^0.1.9",
+ "mocha": "^2.4.5",
+ "rollup": "^1.10.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ },
+ "files": [
+ "index.d.ts",
+ "index.cjs.js",
+ "index.js"
+ ],
+ "homepage": "https://github.com/jonschlinkert/isobject",
+ "keywords": [
+ "check",
+ "is",
+ "is-object",
+ "isobject",
+ "kind",
+ "kind-of",
+ "kindof",
+ "native",
+ "object",
+ "type",
+ "typeof",
+ "value"
+ ],
+ "license": "MIT",
+ "main": "index.cjs.js",
+ "module": "index.js",
+ "name": "isobject",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/jonschlinkert/isobject.git"
+ },
+ "scripts": {
+ "build": "rollup -i index.js -o index.cjs.js -f cjs",
+ "prepublish": "npm run build",
+ "test": "mocha -r esm"
+ },
+ "types": "index.d.ts",
+ "verb": {
+ "related": {
+ "list": [
+ "extend-shallow",
+ "is-plain-object",
+ "kind-of",
+ "merge-deep"
+ ]
+ },
+ "toc": false,
+ "layout": "default",
+ "tasks": [
+ "readme"
+ ],
+ "plugins": [
+ "gulp-format-md"
+ ],
+ "lint": {
+ "reflinks": true
+ },
+ "reflinks": [
+ "verb"
+ ]
+ },
+ "version": "4.0.0"
+}
diff --git a/node_modules/@octokit/request/node_modules/universal-user-agent/LICENSE.md b/node_modules/@octokit/request/node_modules/universal-user-agent/LICENSE.md
new file mode 100644
index 0000000..f105ab0
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/universal-user-agent/LICENSE.md
@@ -0,0 +1,7 @@
+# [ISC License](https://spdx.org/licenses/ISC)
+
+Copyright (c) 2018, Gregor Martynus (https://github.com/gr2m)
+
+Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/node_modules/@octokit/request/node_modules/universal-user-agent/README.md b/node_modules/@octokit/request/node_modules/universal-user-agent/README.md
new file mode 100644
index 0000000..d00d14c
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/universal-user-agent/README.md
@@ -0,0 +1,25 @@
+# universal-user-agent
+
+> Get a user agent string in both browser and node
+
+[](https://www.npmjs.com/package/universal-user-agent)
+[](https://travis-ci.com/gr2m/universal-user-agent)
+[](https://greenkeeper.io/)
+
+```js
+const { getUserAgent } = require("universal-user-agent");
+// or import { getUserAgent } from "universal-user-agent";
+
+const userAgent = getUserAgent();
+// userAgent will look like this
+// in browser: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:61.0) Gecko/20100101 Firefox/61.0"
+// in node: Node.js/v8.9.4 (macOS High Sierra; x64)
+```
+
+## Credits
+
+The Node implementation was originally inspired by [default-user-agent](https://www.npmjs.com/package/default-user-agent).
+
+## License
+
+[ISC](LICENSE.md)
diff --git a/node_modules/@octokit/request/node_modules/universal-user-agent/dist-node/index.js b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-node/index.js
new file mode 100644
index 0000000..80a0710
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-node/index.js
@@ -0,0 +1,22 @@
+'use strict';
+
+Object.defineProperty(exports, '__esModule', { value: true });
+
+function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
+
+var osName = _interopDefault(require('os-name'));
+
+function getUserAgent() {
+ try {
+ return `Node.js/${process.version.substr(1)} (${osName()}; ${process.arch})`;
+ } catch (error) {
+ if (/wmic os get Caption/.test(error.message)) {
+ return "Windows ";
+ }
+
+ throw error;
+ }
+}
+
+exports.getUserAgent = getUserAgent;
+//# sourceMappingURL=index.js.map
diff --git a/node_modules/@octokit/request/node_modules/universal-user-agent/dist-node/index.js.map b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-node/index.js.map
new file mode 100644
index 0000000..aff09ec
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-node/index.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"index.js","sources":["../dist-src/node.js"],"sourcesContent":["import osName from \"os-name\";\nexport function getUserAgent() {\n try {\n return `Node.js/${process.version.substr(1)} (${osName()}; ${process.arch})`;\n }\n catch (error) {\n if (/wmic os get Caption/.test(error.message)) {\n return \"Windows \";\n }\n throw error;\n }\n}\n"],"names":["getUserAgent","process","version","substr","osName","arch","error","test","message"],"mappings":";;;;;;;;AACO,SAASA,YAAT,GAAwB;MACvB;WACQ,WAAUC,OAAO,CAACC,OAAR,CAAgBC,MAAhB,CAAuB,CAAvB,CAA0B,KAAIC,MAAM,EAAG,KAAIH,OAAO,CAACI,IAAK,GAA1E;GADJ,CAGA,OAAOC,KAAP,EAAc;QACN,sBAAsBC,IAAtB,CAA2BD,KAAK,CAACE,OAAjC,CAAJ,EAA+C;aACpC,gCAAP;;;UAEEF,KAAN;;;;;;"}
\ No newline at end of file
diff --git a/node_modules/@octokit/request/node_modules/universal-user-agent/dist-src/browser.js b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-src/browser.js
new file mode 100644
index 0000000..6f52232
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-src/browser.js
@@ -0,0 +1,3 @@
+export function getUserAgent() {
+ return navigator.userAgent;
+}
diff --git a/node_modules/@octokit/request/node_modules/universal-user-agent/dist-src/index.js b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-src/index.js
new file mode 100644
index 0000000..c6253f5
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-src/index.js
@@ -0,0 +1 @@
+export { getUserAgent } from "./node";
diff --git a/node_modules/@octokit/request/node_modules/universal-user-agent/dist-src/node.js b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-src/node.js
new file mode 100644
index 0000000..8b70a03
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-src/node.js
@@ -0,0 +1,12 @@
+import osName from "os-name";
+export function getUserAgent() {
+ try {
+ return `Node.js/${process.version.substr(1)} (${osName()}; ${process.arch})`;
+ }
+ catch (error) {
+ if (/wmic os get Caption/.test(error.message)) {
+ return "Windows ";
+ }
+ throw error;
+ }
+}
diff --git a/node_modules/@octokit/request/node_modules/universal-user-agent/dist-types/browser.d.ts b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-types/browser.d.ts
new file mode 100644
index 0000000..a7bb1c4
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-types/browser.d.ts
@@ -0,0 +1 @@
+export declare function getUserAgent(): string;
diff --git a/node_modules/@octokit/request/node_modules/universal-user-agent/dist-types/index.d.ts b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-types/index.d.ts
new file mode 100644
index 0000000..c6253f5
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-types/index.d.ts
@@ -0,0 +1 @@
+export { getUserAgent } from "./node";
diff --git a/node_modules/@octokit/request/node_modules/universal-user-agent/dist-types/node.d.ts b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-types/node.d.ts
new file mode 100644
index 0000000..a7bb1c4
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-types/node.d.ts
@@ -0,0 +1 @@
+export declare function getUserAgent(): string;
diff --git a/node_modules/@octokit/request/node_modules/universal-user-agent/dist-web/index.js b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-web/index.js
new file mode 100644
index 0000000..11ec79b
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-web/index.js
@@ -0,0 +1,6 @@
+function getUserAgent() {
+ return navigator.userAgent;
+}
+
+export { getUserAgent };
+//# sourceMappingURL=index.js.map
diff --git a/node_modules/@octokit/request/node_modules/universal-user-agent/dist-web/index.js.map b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-web/index.js.map
new file mode 100644
index 0000000..549407e
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/universal-user-agent/dist-web/index.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"index.js","sources":["../dist-src/browser.js"],"sourcesContent":["export function getUserAgent() {\n return navigator.userAgent;\n}\n"],"names":[],"mappings":"AAAO,SAAS,YAAY,GAAG;IAC3B,OAAO,SAAS,CAAC,SAAS,CAAC;CAC9B;;;;"}
\ No newline at end of file
diff --git a/node_modules/@octokit/request/node_modules/universal-user-agent/package.json b/node_modules/@octokit/request/node_modules/universal-user-agent/package.json
new file mode 100644
index 0000000..e3e5f87
--- /dev/null
+++ b/node_modules/@octokit/request/node_modules/universal-user-agent/package.json
@@ -0,0 +1,68 @@
+{
+ "_args": [
+ [
+ "universal-user-agent@4.0.0",
+ "/Users/dougtangren/code/rust/action-gh-release"
+ ]
+ ],
+ "_from": "universal-user-agent@4.0.0",
+ "_id": "universal-user-agent@4.0.0",
+ "_inBundle": false,
+ "_integrity": "sha512-eM8knLpev67iBDizr/YtqkJsF3GK8gzDc6st/WKzrTuPtcsOKW/0IdL4cnMBsU69pOx0otavLWBDGTwg+dB0aA==",
+ "_location": "/@octokit/request/universal-user-agent",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "version",
+ "registry": true,
+ "raw": "universal-user-agent@4.0.0",
+ "name": "universal-user-agent",
+ "escapedName": "universal-user-agent",
+ "rawSpec": "4.0.0",
+ "saveSpec": null,
+ "fetchSpec": "4.0.0"
+ },
+ "_requiredBy": [
+ "/@octokit/request"
+ ],
+ "_resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-4.0.0.tgz",
+ "_spec": "4.0.0",
+ "_where": "/Users/dougtangren/code/rust/action-gh-release",
+ "bugs": {
+ "url": "https://github.com/gr2m/universal-user-agent/issues"
+ },
+ "dependencies": {
+ "os-name": "^3.1.0"
+ },
+ "description": "Get a user agent string in both browser and node",
+ "devDependencies": {
+ "@gr2m/pika-plugin-build-web": "^0.6.0-issue-84.1",
+ "@pika/pack": "^0.5.0",
+ "@pika/plugin-build-node": "^0.6.0",
+ "@pika/plugin-ts-standard-pkg": "^0.6.0",
+ "@types/jest": "^24.0.18",
+ "jest": "^24.9.0",
+ "prettier": "^1.18.2",
+ "semantic-release": "^15.9.15",
+ "ts-jest": "^24.0.2",
+ "typescript": "^3.6.2"
+ },
+ "files": [
+ "dist-*/",
+ "bin/"
+ ],
+ "homepage": "https://github.com/gr2m/universal-user-agent#readme",
+ "keywords": [],
+ "license": "ISC",
+ "main": "dist-node/index.js",
+ "module": "dist-web/index.js",
+ "name": "universal-user-agent",
+ "pika": true,
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/gr2m/universal-user-agent.git"
+ },
+ "sideEffects": false,
+ "source": "dist-src/index.js",
+ "types": "dist-types/index.d.ts",
+ "version": "4.0.0"
+}
diff --git a/node_modules/@octokit/request/package.json b/node_modules/@octokit/request/package.json
new file mode 100644
index 0000000..bbdbfb8
--- /dev/null
+++ b/node_modules/@octokit/request/package.json
@@ -0,0 +1,95 @@
+{
+ "_args": [
+ [
+ "@octokit/request@5.1.0",
+ "/Users/dougtangren/code/rust/action-gh-release"
+ ]
+ ],
+ "_from": "@octokit/request@5.1.0",
+ "_id": "@octokit/request@5.1.0",
+ "_inBundle": false,
+ "_integrity": "sha512-I15T9PwjFs4tbWyhtFU2Kq7WDPidYMvRB7spmxoQRZfxSmiqullG+Nz+KbSmpkfnlvHwTr1e31R5WReFRKMXjg==",
+ "_location": "/@octokit/request",
+ "_phantomChildren": {
+ "os-name": "3.1.0"
+ },
+ "_requested": {
+ "type": "version",
+ "registry": true,
+ "raw": "@octokit/request@5.1.0",
+ "name": "@octokit/request",
+ "escapedName": "@octokit%2frequest",
+ "scope": "@octokit",
+ "rawSpec": "5.1.0",
+ "saveSpec": null,
+ "fetchSpec": "5.1.0"
+ },
+ "_requiredBy": [
+ "/@octokit/graphql",
+ "/@octokit/rest"
+ ],
+ "_resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.1.0.tgz",
+ "_spec": "5.1.0",
+ "_where": "/Users/dougtangren/code/rust/action-gh-release",
+ "bugs": {
+ "url": "https://github.com/octokit/request.js/issues"
+ },
+ "dependencies": {
+ "@octokit/endpoint": "^5.1.0",
+ "@octokit/request-error": "^1.0.1",
+ "deprecation": "^2.0.0",
+ "is-plain-object": "^3.0.0",
+ "node-fetch": "^2.3.0",
+ "once": "^1.4.0",
+ "universal-user-agent": "^4.0.0"
+ },
+ "description": "Send parameterized requests to GitHub’s APIs with sensible defaults in browsers and Node",
+ "devDependencies": {
+ "@octokit/auth-app": "^2.1.2",
+ "@pika/pack": "^0.5.0",
+ "@pika/plugin-build-node": "^0.6.0",
+ "@pika/plugin-build-web": "^0.6.0",
+ "@pika/plugin-ts-standard-pkg": "^0.6.0",
+ "@types/fetch-mock": "^7.2.4",
+ "@types/jest": "^24.0.12",
+ "@types/lolex": "^3.1.1",
+ "@types/node": "^12.0.3",
+ "@types/node-fetch": "^2.3.3",
+ "@types/once": "^1.4.0",
+ "fetch-mock": "^7.2.0",
+ "jest": "^24.7.1",
+ "lolex": "^4.2.0",
+ "prettier": "^1.17.0",
+ "semantic-release": "^15.10.5",
+ "semantic-release-plugin-update-version-in-files": "^1.0.0",
+ "ts-jest": "^24.0.2",
+ "typescript": "^3.4.5"
+ },
+ "files": [
+ "dist-*/",
+ "bin/"
+ ],
+ "homepage": "https://github.com/octokit/request.js#readme",
+ "keywords": [
+ "octokit",
+ "github",
+ "api",
+ "request"
+ ],
+ "license": "MIT",
+ "main": "dist-node/index.js",
+ "module": "dist-web/index.js",
+ "name": "@octokit/request",
+ "pika": true,
+ "publishConfig": {
+ "access": "public"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/octokit/request.js.git"
+ },
+ "sideEffects": false,
+ "source": "dist-src/index.js",
+ "types": "dist-types/index.d.ts",
+ "version": "5.1.0"
+}
diff --git a/node_modules/@octokit/rest/LICENSE b/node_modules/@octokit/rest/LICENSE
new file mode 100644
index 0000000..4c0d268
--- /dev/null
+++ b/node_modules/@octokit/rest/LICENSE
@@ -0,0 +1,22 @@
+The MIT License
+
+Copyright (c) 2012 Cloud9 IDE, Inc. (Mike de Boer)
+Copyright (c) 2017-2018 Octokit contributors
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/node_modules/@octokit/rest/README.md b/node_modules/@octokit/rest/README.md
new file mode 100644
index 0000000..378def2
--- /dev/null
+++ b/node_modules/@octokit/rest/README.md
@@ -0,0 +1,44 @@
+# rest.js
+
+> GitHub REST API client for JavaScript
+
+[](https://www.npmjs.com/package/@octokit/rest)
+[](https://travis-ci.org/octokit/rest.js)
+[](https://coveralls.io/github/octokit/rest.js)
+[](https://greenkeeper.io/)
+
+## Installation
+```shell
+npm install @octokit/rest
+```
+
+## Usage
+
+```js
+const Octokit = require('@octokit/rest')
+const octokit = new Octokit()
+
+// Compare: https://developer.github.com/v3/repos/#list-organization-repositories
+octokit.repos.listForOrg({
+ org: 'octokit',
+ type: 'public'
+}).then(({ data }) => {
+ // handle data
+})
+```
+
+See https://octokit.github.io/rest.js/ for full documentation.
+
+## Contributing
+
+We would love you to contribute to `@octokit/rest`, pull requests are very welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for more information.
+
+## Credits
+
+`@octokit/rest` was originally created as [`node-github`](https://www.npmjs.com/package/github) in 2012 by Mike de Boer from Cloud9 IDE, Inc.
+
+It was adopted and renamed by GitHub in 2017
+
+## LICENSE
+
+[MIT](LICENSE)
diff --git a/node_modules/@octokit/rest/index.d.ts b/node_modules/@octokit/rest/index.d.ts
new file mode 100644
index 0000000..f353a53
--- /dev/null
+++ b/node_modules/@octokit/rest/index.d.ts
@@ -0,0 +1,32082 @@
+/**
+ * This declaration file requires TypeScript 3.1 or above.
+ */
+
+///
+
+import * as http from "http";
+
+declare namespace Octokit {
+ type json = any;
+ type date = string;
+
+ export interface Static {
+ plugin(plugin: Plugin): Static;
+ new (options?: Octokit.Options): Octokit;
+ }
+
+ export interface Response {
+ /** This is the data you would see in https://developer.github.com/v3/ */
+ data: T;
+
+ /** Response status number */
+ status: number;
+
+ /** Response headers */
+ headers: {
+ date: string;
+ "x-ratelimit-limit": string;
+ "x-ratelimit-remaining": string;
+ "x-ratelimit-reset": string;
+ "x-Octokit-request-id": string;
+ "x-Octokit-media-type": string;
+ link: string;
+ "last-modified": string;
+ etag: string;
+ status: string;
+ };
+
+ [Symbol.iterator](): Iterator;
+ }
+
+ export type AnyResponse = Response;
+
+ export interface EmptyParams {}
+
+ export interface Options {
+ auth?:
+ | string
+ | { username: string; password: string; on2fa: () => Promise }
+ | { clientId: string; clientSecret: string }
+ | { (): string | Promise };
+ userAgent?: string;
+ previews?: string[];
+ baseUrl?: string;
+ log?: {
+ debug?: (message: string, info?: object) => void;
+ info?: (message: string, info?: object) => void;
+ warn?: (message: string, info?: object) => void;
+ error?: (message: string, info?: object) => void;
+ };
+ request?: {
+ agent?: http.Agent;
+ timeout?: number;
+ };
+ timeout?: number; // Deprecated
+ headers?: { [header: string]: any }; // Deprecated
+ agent?: http.Agent; // Deprecated
+ [option: string]: any;
+ }
+
+ export type RequestMethod =
+ | "DELETE"
+ | "GET"
+ | "HEAD"
+ | "PATCH"
+ | "POST"
+ | "PUT";
+
+ export interface EndpointOptions {
+ baseUrl?: string;
+ method?: RequestMethod;
+ url?: string;
+ headers?: { [header: string]: any };
+ data?: any;
+ request?: { [option: string]: any };
+ [parameter: string]: any;
+ }
+
+ export interface RequestOptions {
+ method?: RequestMethod;
+ url?: string;
+ headers?: { [header: string]: any };
+ body?: any;
+ request?: { [option: string]: any };
+ }
+
+ export interface Log {
+ debug: (message: string, additionalInfo?: object) => void;
+ info: (message: string, additionalInfo?: object) => void;
+ warn: (message: string, additionalInfo?: object) => void;
+ error: (message: string, additionalInfo?: object) => void;
+ }
+
+ export interface Endpoint {
+ (
+ Route: string,
+ EndpointOptions?: Octokit.EndpointOptions
+ ): Octokit.RequestOptions;
+ (EndpointOptions: Octokit.EndpointOptions): Octokit.RequestOptions;
+ /**
+ * Current default options
+ */
+ DEFAULTS: Octokit.EndpointOptions;
+ /**
+ * Get the defaulted endpoint options, but without parsing them into request options:
+ */
+ merge(
+ Route: string,
+ EndpointOptions?: Octokit.EndpointOptions
+ ): Octokit.RequestOptions;
+ merge(EndpointOptions: Octokit.EndpointOptions): Octokit.RequestOptions;
+ /**
+ * Stateless method to turn endpoint options into request options. Calling endpoint(options) is the same as calling endpoint.parse(endpoint.merge(options)).
+ */
+ parse(EndpointOptions: Octokit.EndpointOptions): Octokit.RequestOptions;
+ /**
+ * Merges existing defaults with passed options and returns new endpoint() method with new defaults
+ */
+ defaults(EndpointOptions: Octokit.EndpointOptions): Octokit.Endpoint;
+ }
+
+ export interface Request {
+ (Route: string, EndpointOptions?: Octokit.EndpointOptions): Promise<
+ Octokit.AnyResponse
+ >;
+ (EndpointOptions: Octokit.EndpointOptions): Promise;
+ endpoint: Octokit.Endpoint;
+ }
+
+ export interface AuthBasic {
+ type: "basic";
+ username: string;
+ password: string;
+ }
+
+ export interface AuthOAuthToken {
+ type: "oauth";
+ token: string;
+ }
+
+ export interface AuthOAuthSecret {
+ type: "oauth";
+ key: string;
+ secret: string;
+ }
+
+ export interface AuthUserToken {
+ type: "token";
+ token: string;
+ }
+
+ export interface AuthJWT {
+ type: "app";
+ token: string;
+ }
+
+ export type Link = { link: string } | { headers: { link: string } } | string;
+
+ export interface Callback {
+ (error: Error | null, result: T): any;
+ }
+
+ export type Plugin = (octokit: Octokit, options: Octokit.Options) => void;
+
+ // See https://github.com/octokit/request.js#octokitrequest
+ export type HookOptions = {
+ baseUrl: string;
+ headers: { [header: string]: string };
+ method: string;
+ url: string;
+ data: any;
+ // See https://github.com/bitinn/node-fetch#options
+ request: {
+ follow?: number;
+ timeout?: number;
+ compress?: boolean;
+ size?: number;
+ agent?: string | null;
+ };
+ [index: string]: any;
+ };
+
+ export type HookError = Error & {
+ status: number;
+ headers: { [header: string]: string };
+ documentation_url?: string;
+ errors?: [
+ {
+ resource: string;
+ field: string;
+ code: string;
+ }
+ ];
+ };
+
+ export interface Paginate {
+ (
+ Route: string,
+ EndpointOptions?: Octokit.EndpointOptions,
+ callback?: (response: Octokit.AnyResponse) => any
+ ): Promise;
+ (
+ EndpointOptions: Octokit.EndpointOptions,
+ callback?: (response: Octokit.AnyResponse) => any
+ ): Promise;
+ iterator: (
+ EndpointOptions: Octokit.EndpointOptions
+ ) => AsyncIterableIterator;
+ }
+
+ type UsersDeletePublicKeyResponse = {};
+ type UsersCreatePublicKeyResponse = {
+ id: number;
+ key: string;
+ url: string;
+ title: string;
+ verified: boolean;
+ created_at: string;
+ read_only: boolean;
+ };
+ type UsersGetPublicKeyResponse = {
+ id: number;
+ key: string;
+ url: string;
+ title: string;
+ verified: boolean;
+ created_at: string;
+ read_only: boolean;
+ };
+ type UsersListPublicKeysResponseItem = {
+ id: number;
+ key: string;
+ url: string;
+ title: string;
+ verified: boolean;
+ created_at: string;
+ read_only: boolean;
+ };
+ type UsersListPublicKeysForUserResponseItem = { id: number; key: string };
+ type UsersDeleteGpgKeyResponse = {};
+ type UsersCreateGpgKeyResponseSubkeysItem = {
+ id: number;
+ primary_key_id: number;
+ key_id: string;
+ public_key: string;
+ emails: Array;
+ subkeys: Array;
+ can_sign: boolean;
+ can_encrypt_comms: boolean;
+ can_encrypt_storage: boolean;
+ can_certify: boolean;
+ created_at: string;
+ expires_at: null;
+ };
+ type UsersCreateGpgKeyResponseEmailsItem = {
+ email: string;
+ verified: boolean;
+ };
+ type UsersCreateGpgKeyResponse = {
+ id: number;
+ primary_key_id: null;
+ key_id: string;
+ public_key: string;
+ emails: Array;
+ subkeys: Array;
+ can_sign: boolean;
+ can_encrypt_comms: boolean;
+ can_encrypt_storage: boolean;
+ can_certify: boolean;
+ created_at: string;
+ expires_at: null;
+ };
+ type UsersGetGpgKeyResponseSubkeysItem = {
+ id: number;
+ primary_key_id: number;
+ key_id: string;
+ public_key: string;
+ emails: Array;
+ subkeys: Array;
+ can_sign: boolean;
+ can_encrypt_comms: boolean;
+ can_encrypt_storage: boolean;
+ can_certify: boolean;
+ created_at: string;
+ expires_at: null;
+ };
+ type UsersGetGpgKeyResponseEmailsItem = { email: string; verified: boolean };
+ type UsersGetGpgKeyResponse = {
+ id: number;
+ primary_key_id: null;
+ key_id: string;
+ public_key: string;
+ emails: Array;
+ subkeys: Array;
+ can_sign: boolean;
+ can_encrypt_comms: boolean;
+ can_encrypt_storage: boolean;
+ can_certify: boolean;
+ created_at: string;
+ expires_at: null;
+ };
+ type UsersListGpgKeysResponseItemSubkeysItem = {
+ id: number;
+ primary_key_id: number;
+ key_id: string;
+ public_key: string;
+ emails: Array;
+ subkeys: Array;
+ can_sign: boolean;
+ can_encrypt_comms: boolean;
+ can_encrypt_storage: boolean;
+ can_certify: boolean;
+ created_at: string;
+ expires_at: null;
+ };
+ type UsersListGpgKeysResponseItemEmailsItem = {
+ email: string;
+ verified: boolean;
+ };
+ type UsersListGpgKeysResponseItem = {
+ id: number;
+ primary_key_id: null;
+ key_id: string;
+ public_key: string;
+ emails: Array;
+ subkeys: Array;
+ can_sign: boolean;
+ can_encrypt_comms: boolean;
+ can_encrypt_storage: boolean;
+ can_certify: boolean;
+ created_at: string;
+ expires_at: null;
+ };
+ type UsersListGpgKeysForUserResponseItemSubkeysItem = {
+ id: number;
+ primary_key_id: number;
+ key_id: string;
+ public_key: string;
+ emails: Array;
+ subkeys: Array;
+ can_sign: boolean;
+ can_encrypt_comms: boolean;
+ can_encrypt_storage: boolean;
+ can_certify: boolean;
+ created_at: string;
+ expires_at: null;
+ };
+ type UsersListGpgKeysForUserResponseItemEmailsItem = {
+ email: string;
+ verified: boolean;
+ };
+ type UsersListGpgKeysForUserResponseItem = {
+ id: number;
+ primary_key_id: null;
+ key_id: string;
+ public_key: string;
+ emails: Array;
+ subkeys: Array;
+ can_sign: boolean;
+ can_encrypt_comms: boolean;
+ can_encrypt_storage: boolean;
+ can_certify: boolean;
+ created_at: string;
+ expires_at: null;
+ };
+ type UsersUnfollowResponse = {};
+ type UsersFollowResponse = {};
+ type UsersListFollowingForAuthenticatedUserResponseItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type UsersListFollowingForUserResponseItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type UsersListFollowersForAuthenticatedUserResponseItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type UsersListFollowersForUserResponseItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type UsersTogglePrimaryEmailVisibilityResponseItem = {
+ email: string;
+ primary: boolean;
+ verified: boolean;
+ visibility: string;
+ };
+ type UsersDeleteEmailsResponse = {};
+ type UsersAddEmailsResponseItem = {
+ email: string;
+ primary: boolean;
+ verified: boolean;
+ visibility: string | null;
+ };
+ type UsersListPublicEmailsResponseItem = {
+ email: string;
+ verified: boolean;
+ primary: boolean;
+ visibility: string;
+ };
+ type UsersListEmailsResponseItem = {
+ email: string;
+ verified: boolean;
+ primary: boolean;
+ visibility: string;
+ };
+ type UsersUnblockResponse = {};
+ type UsersBlockResponse = {};
+ type UsersCheckBlockedResponse = {};
+ type UsersListBlockedResponseItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type UsersListResponseItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type UsersUpdateAuthenticatedResponsePlan = {
+ name: string;
+ space: number;
+ private_repos: number;
+ collaborators: number;
+ };
+ type UsersUpdateAuthenticatedResponse = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ name: string;
+ company: string;
+ blog: string;
+ location: string;
+ email: string;
+ hireable: boolean;
+ bio: string;
+ public_repos: number;
+ public_gists: number;
+ followers: number;
+ following: number;
+ created_at: string;
+ updated_at: string;
+ private_gists: number;
+ total_private_repos: number;
+ owned_private_repos: number;
+ disk_usage: number;
+ collaborators: number;
+ two_factor_authentication: boolean;
+ plan: UsersUpdateAuthenticatedResponsePlan;
+ };
+ type UsersGetByUsernameResponse = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ name: string;
+ company: string;
+ blog: string;
+ location: string;
+ email: string;
+ hireable: boolean;
+ bio: string;
+ public_repos: number;
+ public_gists: number;
+ followers: number;
+ following: number;
+ created_at: string;
+ updated_at: string;
+ };
+ type TeamsListPendingInvitationsResponseItemInviter = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type TeamsListPendingInvitationsResponseItem = {
+ id: number;
+ login: string;
+ email: string;
+ role: string;
+ created_at: string;
+ inviter: TeamsListPendingInvitationsResponseItemInviter;
+ team_count: number;
+ invitation_team_url: string;
+ };
+ type TeamsRemoveMembershipResponse = {};
+ type TeamsRemoveMemberResponse = {};
+ type TeamsAddMemberResponse = {};
+ type TeamsListMembersResponseItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type TeamsDeleteDiscussionResponse = {};
+ type TeamsUpdateDiscussionResponseReactions = {
+ url: string;
+ total_count: number;
+ "+1": number;
+ "-1": number;
+ laugh: number;
+ confused: number;
+ heart: number;
+ hooray: number;
+ };
+ type TeamsUpdateDiscussionResponseAuthor = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type TeamsUpdateDiscussionResponse = {
+ author: TeamsUpdateDiscussionResponseAuthor;
+ body: string;
+ body_html: string;
+ body_version: string;
+ comments_count: number;
+ comments_url: string;
+ created_at: string;
+ last_edited_at: string;
+ html_url: string;
+ node_id: string;
+ number: number;
+ pinned: boolean;
+ private: boolean;
+ team_url: string;
+ title: string;
+ updated_at: string;
+ url: string;
+ reactions: TeamsUpdateDiscussionResponseReactions;
+ };
+ type TeamsCreateDiscussionResponseReactions = {
+ url: string;
+ total_count: number;
+ "+1": number;
+ "-1": number;
+ laugh: number;
+ confused: number;
+ heart: number;
+ hooray: number;
+ };
+ type TeamsCreateDiscussionResponseAuthor = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type TeamsCreateDiscussionResponse = {
+ author: TeamsCreateDiscussionResponseAuthor;
+ body: string;
+ body_html: string;
+ body_version: string;
+ comments_count: number;
+ comments_url: string;
+ created_at: string;
+ last_edited_at: null;
+ html_url: string;
+ node_id: string;
+ number: number;
+ pinned: boolean;
+ private: boolean;
+ team_url: string;
+ title: string;
+ updated_at: string;
+ url: string;
+ reactions: TeamsCreateDiscussionResponseReactions;
+ };
+ type TeamsGetDiscussionResponseReactions = {
+ url: string;
+ total_count: number;
+ "+1": number;
+ "-1": number;
+ laugh: number;
+ confused: number;
+ heart: number;
+ hooray: number;
+ };
+ type TeamsGetDiscussionResponseAuthor = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type TeamsGetDiscussionResponse = {
+ author: TeamsGetDiscussionResponseAuthor;
+ body: string;
+ body_html: string;
+ body_version: string;
+ comments_count: number;
+ comments_url: string;
+ created_at: string;
+ last_edited_at: null;
+ html_url: string;
+ node_id: string;
+ number: number;
+ pinned: boolean;
+ private: boolean;
+ team_url: string;
+ title: string;
+ updated_at: string;
+ url: string;
+ reactions: TeamsGetDiscussionResponseReactions;
+ };
+ type TeamsListDiscussionsResponseItemReactions = {
+ url: string;
+ total_count: number;
+ "+1": number;
+ "-1": number;
+ laugh: number;
+ confused: number;
+ heart: number;
+ hooray: number;
+ };
+ type TeamsListDiscussionsResponseItemAuthor = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type TeamsListDiscussionsResponseItem = {
+ author: TeamsListDiscussionsResponseItemAuthor;
+ body: string;
+ body_html: string;
+ body_version: string;
+ comments_count: number;
+ comments_url: string;
+ created_at: string;
+ last_edited_at: null;
+ html_url: string;
+ node_id: string;
+ number: number;
+ pinned: boolean;
+ private: boolean;
+ team_url: string;
+ title: string;
+ updated_at: string;
+ url: string;
+ reactions: TeamsListDiscussionsResponseItemReactions;
+ };
+ type TeamsDeleteDiscussionCommentResponse = {};
+ type TeamsUpdateDiscussionCommentResponseReactions = {
+ url: string;
+ total_count: number;
+ "+1": number;
+ "-1": number;
+ laugh: number;
+ confused: number;
+ heart: number;
+ hooray: number;
+ };
+ type TeamsUpdateDiscussionCommentResponseAuthor = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type TeamsUpdateDiscussionCommentResponse = {
+ author: TeamsUpdateDiscussionCommentResponseAuthor;
+ body: string;
+ body_html: string;
+ body_version: string;
+ created_at: string;
+ last_edited_at: string;
+ discussion_url: string;
+ html_url: string;
+ node_id: string;
+ number: number;
+ updated_at: string;
+ url: string;
+ reactions: TeamsUpdateDiscussionCommentResponseReactions;
+ };
+ type TeamsCreateDiscussionCommentResponseReactions = {
+ url: string;
+ total_count: number;
+ "+1": number;
+ "-1": number;
+ laugh: number;
+ confused: number;
+ heart: number;
+ hooray: number;
+ };
+ type TeamsCreateDiscussionCommentResponseAuthor = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type TeamsCreateDiscussionCommentResponse = {
+ author: TeamsCreateDiscussionCommentResponseAuthor;
+ body: string;
+ body_html: string;
+ body_version: string;
+ created_at: string;
+ last_edited_at: null;
+ discussion_url: string;
+ html_url: string;
+ node_id: string;
+ number: number;
+ updated_at: string;
+ url: string;
+ reactions: TeamsCreateDiscussionCommentResponseReactions;
+ };
+ type TeamsGetDiscussionCommentResponseReactions = {
+ url: string;
+ total_count: number;
+ "+1": number;
+ "-1": number;
+ laugh: number;
+ confused: number;
+ heart: number;
+ hooray: number;
+ };
+ type TeamsGetDiscussionCommentResponseAuthor = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type TeamsGetDiscussionCommentResponse = {
+ author: TeamsGetDiscussionCommentResponseAuthor;
+ body: string;
+ body_html: string;
+ body_version: string;
+ created_at: string;
+ last_edited_at: null;
+ discussion_url: string;
+ html_url: string;
+ node_id: string;
+ number: number;
+ updated_at: string;
+ url: string;
+ reactions: TeamsGetDiscussionCommentResponseReactions;
+ };
+ type TeamsListDiscussionCommentsResponseItemReactions = {
+ url: string;
+ total_count: number;
+ "+1": number;
+ "-1": number;
+ laugh: number;
+ confused: number;
+ heart: number;
+ hooray: number;
+ };
+ type TeamsListDiscussionCommentsResponseItemAuthor = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type TeamsListDiscussionCommentsResponseItem = {
+ author: TeamsListDiscussionCommentsResponseItemAuthor;
+ body: string;
+ body_html: string;
+ body_version: string;
+ created_at: string;
+ last_edited_at: null;
+ discussion_url: string;
+ html_url: string;
+ node_id: string;
+ number: number;
+ updated_at: string;
+ url: string;
+ reactions: TeamsListDiscussionCommentsResponseItemReactions;
+ };
+ type TeamsRemoveProjectResponse = {};
+ type TeamsAddOrUpdateProjectResponse = {};
+ type TeamsReviewProjectResponsePermissions = {
+ read: boolean;
+ write: boolean;
+ admin: boolean;
+ };
+ type TeamsReviewProjectResponseCreator = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type TeamsReviewProjectResponse = {
+ owner_url: string;
+ url: string;
+ html_url: string;
+ columns_url: string;
+ id: number;
+ node_id: string;
+ name: string;
+ body: string;
+ number: number;
+ state: string;
+ creator: TeamsReviewProjectResponseCreator;
+ created_at: string;
+ updated_at: string;
+ organization_permission: string;
+ private: boolean;
+ permissions: TeamsReviewProjectResponsePermissions;
+ };
+ type TeamsListProjectsResponseItemPermissions = {
+ read: boolean;
+ write: boolean;
+ admin: boolean;
+ };
+ type TeamsListProjectsResponseItemCreator = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type TeamsListProjectsResponseItem = {
+ owner_url: string;
+ url: string;
+ html_url: string;
+ columns_url: string;
+ id: number;
+ node_id: string;
+ name: string;
+ body: string;
+ number: number;
+ state: string;
+ creator: TeamsListProjectsResponseItemCreator;
+ created_at: string;
+ updated_at: string;
+ organization_permission: string;
+ private: boolean;
+ permissions: TeamsListProjectsResponseItemPermissions;
+ };
+ type TeamsListForAuthenticatedUserResponseItemOrganization = {
+ login: string;
+ id: number;
+ node_id: string;
+ url: string;
+ repos_url: string;
+ events_url: string;
+ hooks_url: string;
+ issues_url: string;
+ members_url: string;
+ public_members_url: string;
+ avatar_url: string;
+ description: string;
+ name: string;
+ company: string;
+ blog: string;
+ location: string;
+ email: string;
+ is_verified: boolean;
+ has_organization_projects: boolean;
+ has_repository_projects: boolean;
+ public_repos: number;
+ public_gists: number;
+ followers: number;
+ following: number;
+ html_url: string;
+ created_at: string;
+ type: string;
+ };
+ type TeamsListForAuthenticatedUserResponseItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ members_count: number;
+ repos_count: number;
+ created_at: string;
+ updated_at: string;
+ organization: TeamsListForAuthenticatedUserResponseItemOrganization;
+ };
+ type TeamsRemoveRepoResponse = {};
+ type TeamsAddOrUpdateRepoResponse = {};
+ type TeamsListReposResponseItemLicense = {
+ key: string;
+ name: string;
+ spdx_id: string;
+ url: string;
+ node_id: string;
+ };
+ type TeamsListReposResponseItemPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type TeamsListReposResponseItemOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type TeamsListReposResponseItem = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: TeamsListReposResponseItemOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: TeamsListReposResponseItemPermissions;
+ template_repository: null;
+ subscribers_count: number;
+ network_count: number;
+ license: TeamsListReposResponseItemLicense;
+ };
+ type TeamsDeleteResponse = {};
+ type TeamsUpdateResponseOrganization = {
+ login: string;
+ id: number;
+ node_id: string;
+ url: string;
+ repos_url: string;
+ events_url: string;
+ hooks_url: string;
+ issues_url: string;
+ members_url: string;
+ public_members_url: string;
+ avatar_url: string;
+ description: string;
+ name: string;
+ company: string;
+ blog: string;
+ location: string;
+ email: string;
+ is_verified: boolean;
+ has_organization_projects: boolean;
+ has_repository_projects: boolean;
+ public_repos: number;
+ public_gists: number;
+ followers: number;
+ following: number;
+ html_url: string;
+ created_at: string;
+ type: string;
+ };
+ type TeamsUpdateResponse = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ members_count: number;
+ repos_count: number;
+ created_at: string;
+ updated_at: string;
+ organization: TeamsUpdateResponseOrganization;
+ };
+ type TeamsCreateResponseOrganization = {
+ login: string;
+ id: number;
+ node_id: string;
+ url: string;
+ repos_url: string;
+ events_url: string;
+ hooks_url: string;
+ issues_url: string;
+ members_url: string;
+ public_members_url: string;
+ avatar_url: string;
+ description: string;
+ name: string;
+ company: string;
+ blog: string;
+ location: string;
+ email: string;
+ is_verified: boolean;
+ has_organization_projects: boolean;
+ has_repository_projects: boolean;
+ public_repos: number;
+ public_gists: number;
+ followers: number;
+ following: number;
+ html_url: string;
+ created_at: string;
+ type: string;
+ };
+ type TeamsCreateResponse = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ members_count: number;
+ repos_count: number;
+ created_at: string;
+ updated_at: string;
+ organization: TeamsCreateResponseOrganization;
+ };
+ type TeamsGetByNameResponseOrganization = {
+ login: string;
+ id: number;
+ node_id: string;
+ url: string;
+ repos_url: string;
+ events_url: string;
+ hooks_url: string;
+ issues_url: string;
+ members_url: string;
+ public_members_url: string;
+ avatar_url: string;
+ description: string;
+ name: string;
+ company: string;
+ blog: string;
+ location: string;
+ email: string;
+ is_verified: boolean;
+ has_organization_projects: boolean;
+ has_repository_projects: boolean;
+ public_repos: number;
+ public_gists: number;
+ followers: number;
+ following: number;
+ html_url: string;
+ created_at: string;
+ type: string;
+ };
+ type TeamsGetByNameResponse = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ members_count: number;
+ repos_count: number;
+ created_at: string;
+ updated_at: string;
+ organization: TeamsGetByNameResponseOrganization;
+ };
+ type TeamsGetResponseOrganization = {
+ login: string;
+ id: number;
+ node_id: string;
+ url: string;
+ repos_url: string;
+ events_url: string;
+ hooks_url: string;
+ issues_url: string;
+ members_url: string;
+ public_members_url: string;
+ avatar_url: string;
+ description: string;
+ name: string;
+ company: string;
+ blog: string;
+ location: string;
+ email: string;
+ is_verified: boolean;
+ has_organization_projects: boolean;
+ has_repository_projects: boolean;
+ public_repos: number;
+ public_gists: number;
+ followers: number;
+ following: number;
+ html_url: string;
+ created_at: string;
+ type: string;
+ };
+ type TeamsGetResponse = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ members_count: number;
+ repos_count: number;
+ created_at: string;
+ updated_at: string;
+ organization: TeamsGetResponseOrganization;
+ };
+ type TeamsListResponseItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ };
+ type ReposGetClonesResponseClonesItem = {
+ timestamp: string;
+ count: number;
+ uniques: number;
+ };
+ type ReposGetClonesResponse = {
+ count: number;
+ uniques: number;
+ clones: Array;
+ };
+ type ReposGetViewsResponseViewsItem = {
+ timestamp: string;
+ count: number;
+ uniques: number;
+ };
+ type ReposGetViewsResponse = {
+ count: number;
+ uniques: number;
+ views: Array;
+ };
+ type ReposGetTopPathsResponseItem = {
+ path: string;
+ title: string;
+ count: number;
+ uniques: number;
+ };
+ type ReposGetTopReferrersResponseItem = {
+ referrer: string;
+ count: number;
+ uniques: number;
+ };
+ type ReposGetCombinedStatusForRefResponseRepositoryOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetCombinedStatusForRefResponseRepository = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposGetCombinedStatusForRefResponseRepositoryOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ };
+ type ReposGetCombinedStatusForRefResponseStatusesItem = {
+ url: string;
+ avatar_url: string;
+ id: number;
+ node_id: string;
+ state: string;
+ description: string;
+ target_url: string;
+ context: string;
+ created_at: string;
+ updated_at: string;
+ };
+ type ReposGetCombinedStatusForRefResponse = {
+ state: string;
+ statuses: Array;
+ sha: string;
+ total_count: number;
+ repository: ReposGetCombinedStatusForRefResponseRepository;
+ commit_url: string;
+ url: string;
+ };
+ type ReposListStatusesForRefResponseItemCreator = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListStatusesForRefResponseItem = {
+ url: string;
+ avatar_url: string;
+ id: number;
+ node_id: string;
+ state: string;
+ description: string;
+ target_url: string;
+ context: string;
+ created_at: string;
+ updated_at: string;
+ creator: ReposListStatusesForRefResponseItemCreator;
+ };
+ type ReposCreateStatusResponseCreator = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposCreateStatusResponse = {
+ url: string;
+ avatar_url: string;
+ id: number;
+ node_id: string;
+ state: string;
+ description: string;
+ target_url: string;
+ context: string;
+ created_at: string;
+ updated_at: string;
+ creator: ReposCreateStatusResponseCreator;
+ };
+ type ReposGetParticipationStatsResponse = {
+ all: Array;
+ owner: Array;
+ };
+ type ReposGetCommitActivityStatsResponseItem = {
+ days: Array;
+ total: number;
+ week: number;
+ };
+ type ReposGetContributorsStatsResponseItemWeeksItem = {
+ w: string;
+ a: number;
+ d: number;
+ c: number;
+ };
+ type ReposGetContributorsStatsResponseItemAuthor = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetContributorsStatsResponseItem = {
+ author: ReposGetContributorsStatsResponseItemAuthor;
+ total: number;
+ weeks: Array;
+ };
+ type ReposDeleteReleaseAssetResponse = {};
+ type ReposUpdateReleaseAssetResponseUploader = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposUpdateReleaseAssetResponse = {
+ url: string;
+ browser_download_url: string;
+ id: number;
+ node_id: string;
+ name: string;
+ label: string;
+ state: string;
+ content_type: string;
+ size: number;
+ download_count: number;
+ created_at: string;
+ updated_at: string;
+ uploader: ReposUpdateReleaseAssetResponseUploader;
+ };
+ type ReposGetReleaseAssetResponseUploader = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetReleaseAssetResponse = {
+ url: string;
+ browser_download_url: string;
+ id: number;
+ node_id: string;
+ name: string;
+ label: string;
+ state: string;
+ content_type: string;
+ size: number;
+ download_count: number;
+ created_at: string;
+ updated_at: string;
+ uploader: ReposGetReleaseAssetResponseUploader;
+ };
+ type ReposListAssetsForReleaseResponseItemUploader = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListAssetsForReleaseResponseItem = {
+ url: string;
+ browser_download_url: string;
+ id: number;
+ node_id: string;
+ name: string;
+ label: string;
+ state: string;
+ content_type: string;
+ size: number;
+ download_count: number;
+ created_at: string;
+ updated_at: string;
+ uploader: ReposListAssetsForReleaseResponseItemUploader;
+ };
+ type ReposDeleteReleaseResponse = {};
+ type ReposUpdateReleaseResponseAssetsItemUploader = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposUpdateReleaseResponseAssetsItem = {
+ url: string;
+ browser_download_url: string;
+ id: number;
+ node_id: string;
+ name: string;
+ label: string;
+ state: string;
+ content_type: string;
+ size: number;
+ download_count: number;
+ created_at: string;
+ updated_at: string;
+ uploader: ReposUpdateReleaseResponseAssetsItemUploader;
+ };
+ type ReposUpdateReleaseResponseAuthor = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposUpdateReleaseResponse = {
+ url: string;
+ html_url: string;
+ assets_url: string;
+ upload_url: string;
+ tarball_url: string;
+ zipball_url: string;
+ id: number;
+ node_id: string;
+ tag_name: string;
+ target_commitish: string;
+ name: string;
+ body: string;
+ draft: boolean;
+ prerelease: boolean;
+ created_at: string;
+ published_at: string;
+ author: ReposUpdateReleaseResponseAuthor;
+ assets: Array;
+ };
+ type ReposCreateReleaseResponseAuthor = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposCreateReleaseResponse = {
+ url: string;
+ html_url: string;
+ assets_url: string;
+ upload_url: string;
+ tarball_url: string;
+ zipball_url: string;
+ id: number;
+ node_id: string;
+ tag_name: string;
+ target_commitish: string;
+ name: string;
+ body: string;
+ draft: boolean;
+ prerelease: boolean;
+ created_at: string;
+ published_at: string;
+ author: ReposCreateReleaseResponseAuthor;
+ assets: Array;
+ };
+ type ReposGetReleaseByTagResponseAssetsItemUploader = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetReleaseByTagResponseAssetsItem = {
+ url: string;
+ browser_download_url: string;
+ id: number;
+ node_id: string;
+ name: string;
+ label: string;
+ state: string;
+ content_type: string;
+ size: number;
+ download_count: number;
+ created_at: string;
+ updated_at: string;
+ uploader: ReposGetReleaseByTagResponseAssetsItemUploader;
+ };
+ type ReposGetReleaseByTagResponseAuthor = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetReleaseByTagResponse = {
+ url: string;
+ html_url: string;
+ assets_url: string;
+ upload_url: string;
+ tarball_url: string;
+ zipball_url: string;
+ id: number;
+ node_id: string;
+ tag_name: string;
+ target_commitish: string;
+ name: string;
+ body: string;
+ draft: boolean;
+ prerelease: boolean;
+ created_at: string;
+ published_at: string;
+ author: ReposGetReleaseByTagResponseAuthor;
+ assets: Array;
+ };
+ type ReposGetLatestReleaseResponseAssetsItemUploader = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetLatestReleaseResponseAssetsItem = {
+ url: string;
+ browser_download_url: string;
+ id: number;
+ node_id: string;
+ name: string;
+ label: string;
+ state: string;
+ content_type: string;
+ size: number;
+ download_count: number;
+ created_at: string;
+ updated_at: string;
+ uploader: ReposGetLatestReleaseResponseAssetsItemUploader;
+ };
+ type ReposGetLatestReleaseResponseAuthor = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetLatestReleaseResponse = {
+ url: string;
+ html_url: string;
+ assets_url: string;
+ upload_url: string;
+ tarball_url: string;
+ zipball_url: string;
+ id: number;
+ node_id: string;
+ tag_name: string;
+ target_commitish: string;
+ name: string;
+ body: string;
+ draft: boolean;
+ prerelease: boolean;
+ created_at: string;
+ published_at: string;
+ author: ReposGetLatestReleaseResponseAuthor;
+ assets: Array;
+ };
+ type ReposGetReleaseResponseAssetsItemUploader = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetReleaseResponseAssetsItem = {
+ url: string;
+ browser_download_url: string;
+ id: number;
+ node_id: string;
+ name: string;
+ label: string;
+ state: string;
+ content_type: string;
+ size: number;
+ download_count: number;
+ created_at: string;
+ updated_at: string;
+ uploader: ReposGetReleaseResponseAssetsItemUploader;
+ };
+ type ReposGetReleaseResponseAuthor = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetReleaseResponse = {
+ url: string;
+ html_url: string;
+ assets_url: string;
+ upload_url: string;
+ tarball_url: string;
+ zipball_url: string;
+ id: number;
+ node_id: string;
+ tag_name: string;
+ target_commitish: string;
+ name: string;
+ body: string;
+ draft: boolean;
+ prerelease: boolean;
+ created_at: string;
+ published_at: string;
+ author: ReposGetReleaseResponseAuthor;
+ assets: Array;
+ };
+ type ReposListReleasesResponseItemAssetsItemUploader = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListReleasesResponseItemAssetsItem = {
+ url: string;
+ browser_download_url: string;
+ id: number;
+ node_id: string;
+ name: string;
+ label: string;
+ state: string;
+ content_type: string;
+ size: number;
+ download_count: number;
+ created_at: string;
+ updated_at: string;
+ uploader: ReposListReleasesResponseItemAssetsItemUploader;
+ };
+ type ReposListReleasesResponseItemAuthor = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListReleasesResponseItem = {
+ url: string;
+ html_url: string;
+ assets_url: string;
+ upload_url: string;
+ tarball_url: string;
+ zipball_url: string;
+ id: number;
+ node_id: string;
+ tag_name: string;
+ target_commitish: string;
+ name: string;
+ body: string;
+ draft: boolean;
+ prerelease: boolean;
+ created_at: string;
+ published_at: string;
+ author: ReposListReleasesResponseItemAuthor;
+ assets: Array;
+ };
+ type ReposGetPagesBuildResponsePusher = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetPagesBuildResponseError = { message: null };
+ type ReposGetPagesBuildResponse = {
+ url: string;
+ status: string;
+ error: ReposGetPagesBuildResponseError;
+ pusher: ReposGetPagesBuildResponsePusher;
+ commit: string;
+ duration: number;
+ created_at: string;
+ updated_at: string;
+ };
+ type ReposGetLatestPagesBuildResponsePusher = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetLatestPagesBuildResponseError = { message: null };
+ type ReposGetLatestPagesBuildResponse = {
+ url: string;
+ status: string;
+ error: ReposGetLatestPagesBuildResponseError;
+ pusher: ReposGetLatestPagesBuildResponsePusher;
+ commit: string;
+ duration: number;
+ created_at: string;
+ updated_at: string;
+ };
+ type ReposListPagesBuildsResponseItemPusher = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListPagesBuildsResponseItemError = { message: null };
+ type ReposListPagesBuildsResponseItem = {
+ url: string;
+ status: string;
+ error: ReposListPagesBuildsResponseItemError;
+ pusher: ReposListPagesBuildsResponseItemPusher;
+ commit: string;
+ duration: number;
+ created_at: string;
+ updated_at: string;
+ };
+ type ReposRequestPageBuildResponse = { url: string; status: string };
+ type ReposUpdateInformationAboutPagesSiteResponse = {};
+ type ReposDisablePagesSiteResponse = {};
+ type ReposEnablePagesSiteResponseSource = {
+ branch: string;
+ directory: string;
+ };
+ type ReposEnablePagesSiteResponse = {
+ url: string;
+ status: string;
+ cname: string;
+ custom_404: boolean;
+ html_url: string;
+ source: ReposEnablePagesSiteResponseSource;
+ };
+ type ReposGetPagesResponseSource = { branch: string; directory: string };
+ type ReposGetPagesResponse = {
+ url: string;
+ status: string;
+ cname: string;
+ custom_404: boolean;
+ html_url: string;
+ source: ReposGetPagesResponseSource;
+ };
+ type ReposRemoveDeployKeyResponse = {};
+ type ReposAddDeployKeyResponse = {
+ id: number;
+ key: string;
+ url: string;
+ title: string;
+ verified: boolean;
+ created_at: string;
+ read_only: boolean;
+ };
+ type ReposGetDeployKeyResponse = {
+ id: number;
+ key: string;
+ url: string;
+ title: string;
+ verified: boolean;
+ created_at: string;
+ read_only: boolean;
+ };
+ type ReposListDeployKeysResponseItem = {
+ id: number;
+ key: string;
+ url: string;
+ title: string;
+ verified: boolean;
+ created_at: string;
+ read_only: boolean;
+ };
+ type ReposDeclineInvitationResponse = {};
+ type ReposAcceptInvitationResponse = {};
+ type ReposListInvitationsForAuthenticatedUserResponseItemInviter = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListInvitationsForAuthenticatedUserResponseItemInvitee = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListInvitationsForAuthenticatedUserResponseItemRepositoryOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListInvitationsForAuthenticatedUserResponseItemRepository = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposListInvitationsForAuthenticatedUserResponseItemRepositoryOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ };
+ type ReposListInvitationsForAuthenticatedUserResponseItem = {
+ id: number;
+ repository: ReposListInvitationsForAuthenticatedUserResponseItemRepository;
+ invitee: ReposListInvitationsForAuthenticatedUserResponseItemInvitee;
+ inviter: ReposListInvitationsForAuthenticatedUserResponseItemInviter;
+ permissions: string;
+ created_at: string;
+ url: string;
+ html_url: string;
+ };
+ type ReposUpdateInvitationResponseInviter = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposUpdateInvitationResponseInvitee = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposUpdateInvitationResponseRepositoryOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposUpdateInvitationResponseRepository = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposUpdateInvitationResponseRepositoryOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ };
+ type ReposUpdateInvitationResponse = {
+ id: number;
+ repository: ReposUpdateInvitationResponseRepository;
+ invitee: ReposUpdateInvitationResponseInvitee;
+ inviter: ReposUpdateInvitationResponseInviter;
+ permissions: string;
+ created_at: string;
+ url: string;
+ html_url: string;
+ };
+ type ReposDeleteInvitationResponse = {};
+ type ReposListInvitationsResponseItemInviter = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListInvitationsResponseItemInvitee = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListInvitationsResponseItemRepositoryOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListInvitationsResponseItemRepository = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposListInvitationsResponseItemRepositoryOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ };
+ type ReposListInvitationsResponseItem = {
+ id: number;
+ repository: ReposListInvitationsResponseItemRepository;
+ invitee: ReposListInvitationsResponseItemInvitee;
+ inviter: ReposListInvitationsResponseItemInviter;
+ permissions: string;
+ created_at: string;
+ url: string;
+ html_url: string;
+ };
+ type ReposDeleteHookResponse = {};
+ type ReposPingHookResponse = {};
+ type ReposTestPushHookResponse = {};
+ type ReposUpdateHookResponseLastResponse = {
+ code: null;
+ status: string;
+ message: null;
+ };
+ type ReposUpdateHookResponseConfig = {
+ content_type: string;
+ insecure_ssl: string;
+ url: string;
+ };
+ type ReposUpdateHookResponse = {
+ type: string;
+ id: number;
+ name: string;
+ active: boolean;
+ events: Array;
+ config: ReposUpdateHookResponseConfig;
+ updated_at: string;
+ created_at: string;
+ url: string;
+ test_url: string;
+ ping_url: string;
+ last_response: ReposUpdateHookResponseLastResponse;
+ };
+ type ReposCreateHookResponseLastResponse = {
+ code: null;
+ status: string;
+ message: null;
+ };
+ type ReposCreateHookResponseConfig = {
+ content_type: string;
+ insecure_ssl: string;
+ url: string;
+ };
+ type ReposCreateHookResponse = {
+ type: string;
+ id: number;
+ name: string;
+ active: boolean;
+ events: Array;
+ config: ReposCreateHookResponseConfig;
+ updated_at: string;
+ created_at: string;
+ url: string;
+ test_url: string;
+ ping_url: string;
+ last_response: ReposCreateHookResponseLastResponse;
+ };
+ type ReposGetHookResponseLastResponse = {
+ code: null;
+ status: string;
+ message: null;
+ };
+ type ReposGetHookResponseConfig = {
+ content_type: string;
+ insecure_ssl: string;
+ url: string;
+ };
+ type ReposGetHookResponse = {
+ type: string;
+ id: number;
+ name: string;
+ active: boolean;
+ events: Array;
+ config: ReposGetHookResponseConfig;
+ updated_at: string;
+ created_at: string;
+ url: string;
+ test_url: string;
+ ping_url: string;
+ last_response: ReposGetHookResponseLastResponse;
+ };
+ type ReposListHooksResponseItemLastResponse = {
+ code: null;
+ status: string;
+ message: null;
+ };
+ type ReposListHooksResponseItemConfig = {
+ content_type: string;
+ insecure_ssl: string;
+ url: string;
+ };
+ type ReposListHooksResponseItem = {
+ type: string;
+ id: number;
+ name: string;
+ active: boolean;
+ events: Array;
+ config: ReposListHooksResponseItemConfig;
+ updated_at: string;
+ created_at: string;
+ url: string;
+ test_url: string;
+ ping_url: string;
+ last_response: ReposListHooksResponseItemLastResponse;
+ };
+ type ReposCreateForkResponsePermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type ReposCreateForkResponseOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposCreateForkResponse = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposCreateForkResponseOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: ReposCreateForkResponsePermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type ReposListForksResponseItemLicense = {
+ key: string;
+ name: string;
+ spdx_id: string;
+ url: string;
+ node_id: string;
+ };
+ type ReposListForksResponseItemPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type ReposListForksResponseItemOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListForksResponseItem = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposListForksResponseItemOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: ReposListForksResponseItemPermissions;
+ template_repository: null;
+ subscribers_count: number;
+ network_count: number;
+ license: ReposListForksResponseItemLicense;
+ };
+ type ReposDeleteDownloadResponse = {};
+ type ReposGetDownloadResponse = {
+ url: string;
+ html_url: string;
+ id: number;
+ name: string;
+ description: string;
+ size: number;
+ download_count: number;
+ content_type: string;
+ };
+ type ReposListDownloadsResponseItem = {
+ url: string;
+ html_url: string;
+ id: number;
+ name: string;
+ description: string;
+ size: number;
+ download_count: number;
+ content_type: string;
+ };
+ type ReposCreateDeploymentStatusResponseCreator = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposCreateDeploymentStatusResponse = {
+ url: string;
+ id: number;
+ node_id: string;
+ state: string;
+ creator: ReposCreateDeploymentStatusResponseCreator;
+ description: string;
+ environment: string;
+ target_url: string;
+ created_at: string;
+ updated_at: string;
+ deployment_url: string;
+ repository_url: string;
+ environment_url: string;
+ log_url: string;
+ };
+ type ReposGetDeploymentStatusResponseCreator = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetDeploymentStatusResponse = {
+ url: string;
+ id: number;
+ node_id: string;
+ state: string;
+ creator: ReposGetDeploymentStatusResponseCreator;
+ description: string;
+ environment: string;
+ target_url: string;
+ created_at: string;
+ updated_at: string;
+ deployment_url: string;
+ repository_url: string;
+ environment_url: string;
+ log_url: string;
+ };
+ type ReposListDeploymentStatusesResponseItemCreator = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListDeploymentStatusesResponseItem = {
+ url: string;
+ id: number;
+ node_id: string;
+ state: string;
+ creator: ReposListDeploymentStatusesResponseItemCreator;
+ description: string;
+ environment: string;
+ target_url: string;
+ created_at: string;
+ updated_at: string;
+ deployment_url: string;
+ repository_url: string;
+ environment_url: string;
+ log_url: string;
+ };
+ type ReposGetDeploymentResponseCreator = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetDeploymentResponsePayload = { deploy: string };
+ type ReposGetDeploymentResponse = {
+ url: string;
+ id: number;
+ node_id: string;
+ sha: string;
+ ref: string;
+ task: string;
+ payload: ReposGetDeploymentResponsePayload;
+ original_environment: string;
+ environment: string;
+ description: string;
+ creator: ReposGetDeploymentResponseCreator;
+ created_at: string;
+ updated_at: string;
+ statuses_url: string;
+ repository_url: string;
+ transient_environment: boolean;
+ production_environment: boolean;
+ };
+ type ReposListDeploymentsResponseItemCreator = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListDeploymentsResponseItemPayload = { deploy: string };
+ type ReposListDeploymentsResponseItem = {
+ url: string;
+ id: number;
+ node_id: string;
+ sha: string;
+ ref: string;
+ task: string;
+ payload: ReposListDeploymentsResponseItemPayload;
+ original_environment: string;
+ environment: string;
+ description: string;
+ creator: ReposListDeploymentsResponseItemCreator;
+ created_at: string;
+ updated_at: string;
+ statuses_url: string;
+ repository_url: string;
+ transient_environment: boolean;
+ production_environment: boolean;
+ };
+ type ReposGetArchiveLinkResponse = {};
+ type ReposDeleteFileResponseCommitVerification = {
+ verified: boolean;
+ reason: string;
+ signature: null;
+ payload: null;
+ };
+ type ReposDeleteFileResponseCommitParentsItem = {
+ url: string;
+ html_url: string;
+ sha: string;
+ };
+ type ReposDeleteFileResponseCommitTree = { url: string; sha: string };
+ type ReposDeleteFileResponseCommitCommitter = {
+ date: string;
+ name: string;
+ email: string;
+ };
+ type ReposDeleteFileResponseCommitAuthor = {
+ date: string;
+ name: string;
+ email: string;
+ };
+ type ReposDeleteFileResponseCommit = {
+ sha: string;
+ node_id: string;
+ url: string;
+ html_url: string;
+ author: ReposDeleteFileResponseCommitAuthor;
+ committer: ReposDeleteFileResponseCommitCommitter;
+ message: string;
+ tree: ReposDeleteFileResponseCommitTree;
+ parents: Array;
+ verification: ReposDeleteFileResponseCommitVerification;
+ };
+ type ReposDeleteFileResponse = {
+ content: null;
+ commit: ReposDeleteFileResponseCommit;
+ };
+ type ReposUpdateFileResponseCommitVerification = {
+ verified: boolean;
+ reason: string;
+ signature: null;
+ payload: null;
+ };
+ type ReposUpdateFileResponseCommitParentsItem = {
+ url: string;
+ html_url: string;
+ sha: string;
+ };
+ type ReposUpdateFileResponseCommitTree = { url: string; sha: string };
+ type ReposUpdateFileResponseCommitCommitter = {
+ date: string;
+ name: string;
+ email: string;
+ };
+ type ReposUpdateFileResponseCommitAuthor = {
+ date: string;
+ name: string;
+ email: string;
+ };
+ type ReposUpdateFileResponseCommit = {
+ sha: string;
+ node_id: string;
+ url: string;
+ html_url: string;
+ author: ReposUpdateFileResponseCommitAuthor;
+ committer: ReposUpdateFileResponseCommitCommitter;
+ message: string;
+ tree: ReposUpdateFileResponseCommitTree;
+ parents: Array;
+ verification: ReposUpdateFileResponseCommitVerification;
+ };
+ type ReposUpdateFileResponseContentLinks = {
+ self: string;
+ git: string;
+ html: string;
+ };
+ type ReposUpdateFileResponseContent = {
+ name: string;
+ path: string;
+ sha: string;
+ size: number;
+ url: string;
+ html_url: string;
+ git_url: string;
+ download_url: string;
+ type: string;
+ _links: ReposUpdateFileResponseContentLinks;
+ };
+ type ReposUpdateFileResponse = {
+ content: ReposUpdateFileResponseContent;
+ commit: ReposUpdateFileResponseCommit;
+ };
+ type ReposCreateFileResponseCommitVerification = {
+ verified: boolean;
+ reason: string;
+ signature: null;
+ payload: null;
+ };
+ type ReposCreateFileResponseCommitParentsItem = {
+ url: string;
+ html_url: string;
+ sha: string;
+ };
+ type ReposCreateFileResponseCommitTree = { url: string; sha: string };
+ type ReposCreateFileResponseCommitCommitter = {
+ date: string;
+ name: string;
+ email: string;
+ };
+ type ReposCreateFileResponseCommitAuthor = {
+ date: string;
+ name: string;
+ email: string;
+ };
+ type ReposCreateFileResponseCommit = {
+ sha: string;
+ node_id: string;
+ url: string;
+ html_url: string;
+ author: ReposCreateFileResponseCommitAuthor;
+ committer: ReposCreateFileResponseCommitCommitter;
+ message: string;
+ tree: ReposCreateFileResponseCommitTree;
+ parents: Array;
+ verification: ReposCreateFileResponseCommitVerification;
+ };
+ type ReposCreateFileResponseContentLinks = {
+ self: string;
+ git: string;
+ html: string;
+ };
+ type ReposCreateFileResponseContent = {
+ name: string;
+ path: string;
+ sha: string;
+ size: number;
+ url: string;
+ html_url: string;
+ git_url: string;
+ download_url: string;
+ type: string;
+ _links: ReposCreateFileResponseContentLinks;
+ };
+ type ReposCreateFileResponse = {
+ content: ReposCreateFileResponseContent;
+ commit: ReposCreateFileResponseCommit;
+ };
+ type ReposCreateOrUpdateFileResponseCommitVerification = {
+ verified: boolean;
+ reason: string;
+ signature: null;
+ payload: null;
+ };
+ type ReposCreateOrUpdateFileResponseCommitParentsItem = {
+ url: string;
+ html_url: string;
+ sha: string;
+ };
+ type ReposCreateOrUpdateFileResponseCommitTree = { url: string; sha: string };
+ type ReposCreateOrUpdateFileResponseCommitCommitter = {
+ date: string;
+ name: string;
+ email: string;
+ };
+ type ReposCreateOrUpdateFileResponseCommitAuthor = {
+ date: string;
+ name: string;
+ email: string;
+ };
+ type ReposCreateOrUpdateFileResponseCommit = {
+ sha: string;
+ node_id: string;
+ url: string;
+ html_url: string;
+ author: ReposCreateOrUpdateFileResponseCommitAuthor;
+ committer: ReposCreateOrUpdateFileResponseCommitCommitter;
+ message: string;
+ tree: ReposCreateOrUpdateFileResponseCommitTree;
+ parents: Array;
+ verification: ReposCreateOrUpdateFileResponseCommitVerification;
+ };
+ type ReposCreateOrUpdateFileResponseContentLinks = {
+ self: string;
+ git: string;
+ html: string;
+ };
+ type ReposCreateOrUpdateFileResponseContent = {
+ name: string;
+ path: string;
+ sha: string;
+ size: number;
+ url: string;
+ html_url: string;
+ git_url: string;
+ download_url: string;
+ type: string;
+ _links: ReposCreateOrUpdateFileResponseContentLinks;
+ };
+ type ReposCreateOrUpdateFileResponse = {
+ content: ReposCreateOrUpdateFileResponseContent;
+ commit: ReposCreateOrUpdateFileResponseCommit;
+ };
+ type ReposGetReadmeResponseLinks = {
+ git: string;
+ self: string;
+ html: string;
+ };
+ type ReposGetReadmeResponse = {
+ type: string;
+ encoding: string;
+ size: number;
+ name: string;
+ path: string;
+ content: string;
+ sha: string;
+ url: string;
+ git_url: string;
+ html_url: string;
+ download_url: string;
+ _links: ReposGetReadmeResponseLinks;
+ };
+ type ReposRetrieveCommunityProfileMetricsResponseFilesReadme = {
+ url: string;
+ html_url: string;
+ };
+ type ReposRetrieveCommunityProfileMetricsResponseFilesLicense = {
+ name: string;
+ key: string;
+ spdx_id: string;
+ url: string;
+ html_url: string;
+ };
+ type ReposRetrieveCommunityProfileMetricsResponseFilesPullRequestTemplate = {
+ url: string;
+ html_url: string;
+ };
+ type ReposRetrieveCommunityProfileMetricsResponseFilesIssueTemplate = {
+ url: string;
+ html_url: string;
+ };
+ type ReposRetrieveCommunityProfileMetricsResponseFilesContributing = {
+ url: string;
+ html_url: string;
+ };
+ type ReposRetrieveCommunityProfileMetricsResponseFilesCodeOfConduct = {
+ name: string;
+ key: string;
+ url: string;
+ html_url: string;
+ };
+ type ReposRetrieveCommunityProfileMetricsResponseFiles = {
+ code_of_conduct: ReposRetrieveCommunityProfileMetricsResponseFilesCodeOfConduct;
+ contributing: ReposRetrieveCommunityProfileMetricsResponseFilesContributing;
+ issue_template: ReposRetrieveCommunityProfileMetricsResponseFilesIssueTemplate;
+ pull_request_template: ReposRetrieveCommunityProfileMetricsResponseFilesPullRequestTemplate;
+ license: ReposRetrieveCommunityProfileMetricsResponseFilesLicense;
+ readme: ReposRetrieveCommunityProfileMetricsResponseFilesReadme;
+ };
+ type ReposRetrieveCommunityProfileMetricsResponse = {
+ health_percentage: number;
+ description: string;
+ documentation: boolean;
+ files: ReposRetrieveCommunityProfileMetricsResponseFiles;
+ updated_at: string;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemLinksStatuses = {
+ href: string;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemLinksCommits = {
+ href: string;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemLinksReviewComment = {
+ href: string;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemLinksReviewComments = {
+ href: string;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemLinksComments = {
+ href: string;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemLinksIssue = {
+ href: string;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemLinksHtml = {
+ href: string;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemLinksSelf = {
+ href: string;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemLinks = {
+ self: ReposListPullRequestsAssociatedWithCommitResponseItemLinksSelf;
+ html: ReposListPullRequestsAssociatedWithCommitResponseItemLinksHtml;
+ issue: ReposListPullRequestsAssociatedWithCommitResponseItemLinksIssue;
+ comments: ReposListPullRequestsAssociatedWithCommitResponseItemLinksComments;
+ review_comments: ReposListPullRequestsAssociatedWithCommitResponseItemLinksReviewComments;
+ review_comment: ReposListPullRequestsAssociatedWithCommitResponseItemLinksReviewComment;
+ commits: ReposListPullRequestsAssociatedWithCommitResponseItemLinksCommits;
+ statuses: ReposListPullRequestsAssociatedWithCommitResponseItemLinksStatuses;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemBaseRepoPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemBaseRepoOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemBaseRepo = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposListPullRequestsAssociatedWithCommitResponseItemBaseRepoOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: ReposListPullRequestsAssociatedWithCommitResponseItemBaseRepoPermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemBaseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemBase = {
+ label: string;
+ ref: string;
+ sha: string;
+ user: ReposListPullRequestsAssociatedWithCommitResponseItemBaseUser;
+ repo: ReposListPullRequestsAssociatedWithCommitResponseItemBaseRepo;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemHeadRepoPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemHeadRepoOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemHeadRepo = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposListPullRequestsAssociatedWithCommitResponseItemHeadRepoOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: ReposListPullRequestsAssociatedWithCommitResponseItemHeadRepoPermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemHeadUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemHead = {
+ label: string;
+ ref: string;
+ sha: string;
+ user: ReposListPullRequestsAssociatedWithCommitResponseItemHeadUser;
+ repo: ReposListPullRequestsAssociatedWithCommitResponseItemHeadRepo;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemRequestedTeamsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemRequestedReviewersItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemAssigneesItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemAssignee = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemMilestoneCreator = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemMilestone = {
+ url: string;
+ html_url: string;
+ labels_url: string;
+ id: number;
+ node_id: string;
+ number: number;
+ state: string;
+ title: string;
+ description: string;
+ creator: ReposListPullRequestsAssociatedWithCommitResponseItemMilestoneCreator;
+ open_issues: number;
+ closed_issues: number;
+ created_at: string;
+ updated_at: string;
+ closed_at: string;
+ due_on: string;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemLabelsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ description: string;
+ color: string;
+ default: boolean;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItemUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListPullRequestsAssociatedWithCommitResponseItem = {
+ url: string;
+ id: number;
+ node_id: string;
+ html_url: string;
+ diff_url: string;
+ patch_url: string;
+ issue_url: string;
+ commits_url: string;
+ review_comments_url: string;
+ review_comment_url: string;
+ comments_url: string;
+ statuses_url: string;
+ number: number;
+ state: string;
+ locked: boolean;
+ title: string;
+ user: ReposListPullRequestsAssociatedWithCommitResponseItemUser;
+ body: string;
+ labels: Array<
+ ReposListPullRequestsAssociatedWithCommitResponseItemLabelsItem
+ >;
+ milestone: ReposListPullRequestsAssociatedWithCommitResponseItemMilestone;
+ active_lock_reason: string;
+ created_at: string;
+ updated_at: string;
+ closed_at: string;
+ merged_at: string;
+ merge_commit_sha: string;
+ assignee: ReposListPullRequestsAssociatedWithCommitResponseItemAssignee;
+ assignees: Array<
+ ReposListPullRequestsAssociatedWithCommitResponseItemAssigneesItem
+ >;
+ requested_reviewers: Array<
+ ReposListPullRequestsAssociatedWithCommitResponseItemRequestedReviewersItem
+ >;
+ requested_teams: Array<
+ ReposListPullRequestsAssociatedWithCommitResponseItemRequestedTeamsItem
+ >;
+ head: ReposListPullRequestsAssociatedWithCommitResponseItemHead;
+ base: ReposListPullRequestsAssociatedWithCommitResponseItemBase;
+ _links: ReposListPullRequestsAssociatedWithCommitResponseItemLinks;
+ author_association: string;
+ draft: boolean;
+ };
+ type ReposListBranchesForHeadCommitResponseItemCommit = {
+ sha: string;
+ url: string;
+ };
+ type ReposListBranchesForHeadCommitResponseItem = {
+ name: string;
+ commit: ReposListBranchesForHeadCommitResponseItemCommit;
+ protected: string;
+ };
+ type ReposGetCommitRefShaResponse = {};
+ type ReposGetCommitResponseFilesItem = {
+ filename: string;
+ additions: number;
+ deletions: number;
+ changes: number;
+ status: string;
+ raw_url: string;
+ blob_url: string;
+ patch: string;
+ };
+ type ReposGetCommitResponseStats = {
+ additions: number;
+ deletions: number;
+ total: number;
+ };
+ type ReposGetCommitResponseParentsItem = { url: string; sha: string };
+ type ReposGetCommitResponseCommitter = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetCommitResponseAuthor = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetCommitResponseCommitVerification = {
+ verified: boolean;
+ reason: string;
+ signature: null;
+ payload: null;
+ };
+ type ReposGetCommitResponseCommitTree = { url: string; sha: string };
+ type ReposGetCommitResponseCommitCommitter = {
+ name: string;
+ email: string;
+ date: string;
+ };
+ type ReposGetCommitResponseCommitAuthor = {
+ name: string;
+ email: string;
+ date: string;
+ };
+ type ReposGetCommitResponseCommit = {
+ url: string;
+ author: ReposGetCommitResponseCommitAuthor;
+ committer: ReposGetCommitResponseCommitCommitter;
+ message: string;
+ tree: ReposGetCommitResponseCommitTree;
+ comment_count: number;
+ verification: ReposGetCommitResponseCommitVerification;
+ };
+ type ReposGetCommitResponse = {
+ url: string;
+ sha: string;
+ node_id: string;
+ html_url: string;
+ comments_url: string;
+ commit: ReposGetCommitResponseCommit;
+ author: ReposGetCommitResponseAuthor;
+ committer: ReposGetCommitResponseCommitter;
+ parents: Array;
+ stats: ReposGetCommitResponseStats;
+ files: Array;
+ };
+ type ReposListCommitsResponseItemParentsItem = { url: string; sha: string };
+ type ReposListCommitsResponseItemCommitter = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListCommitsResponseItemAuthor = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListCommitsResponseItemCommitVerification = {
+ verified: boolean;
+ reason: string;
+ signature: null;
+ payload: null;
+ };
+ type ReposListCommitsResponseItemCommitTree = { url: string; sha: string };
+ type ReposListCommitsResponseItemCommitCommitter = {
+ name: string;
+ email: string;
+ date: string;
+ };
+ type ReposListCommitsResponseItemCommitAuthor = {
+ name: string;
+ email: string;
+ date: string;
+ };
+ type ReposListCommitsResponseItemCommit = {
+ url: string;
+ author: ReposListCommitsResponseItemCommitAuthor;
+ committer: ReposListCommitsResponseItemCommitCommitter;
+ message: string;
+ tree: ReposListCommitsResponseItemCommitTree;
+ comment_count: number;
+ verification: ReposListCommitsResponseItemCommitVerification;
+ };
+ type ReposListCommitsResponseItem = {
+ url: string;
+ sha: string;
+ node_id: string;
+ html_url: string;
+ comments_url: string;
+ commit: ReposListCommitsResponseItemCommit;
+ author: ReposListCommitsResponseItemAuthor;
+ committer: ReposListCommitsResponseItemCommitter;
+ parents: Array;
+ };
+ type ReposDeleteCommitCommentResponse = {};
+ type ReposUpdateCommitCommentResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposUpdateCommitCommentResponse = {
+ html_url: string;
+ url: string;
+ id: number;
+ node_id: string;
+ body: string;
+ path: string;
+ position: number;
+ line: number;
+ commit_id: string;
+ user: ReposUpdateCommitCommentResponseUser;
+ created_at: string;
+ updated_at: string;
+ };
+ type ReposGetCommitCommentResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetCommitCommentResponse = {
+ html_url: string;
+ url: string;
+ id: number;
+ node_id: string;
+ body: string;
+ path: string;
+ position: number;
+ line: number;
+ commit_id: string;
+ user: ReposGetCommitCommentResponseUser;
+ created_at: string;
+ updated_at: string;
+ };
+ type ReposCreateCommitCommentResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposCreateCommitCommentResponse = {
+ html_url: string;
+ url: string;
+ id: number;
+ node_id: string;
+ body: string;
+ path: string;
+ position: number;
+ line: number;
+ commit_id: string;
+ user: ReposCreateCommitCommentResponseUser;
+ created_at: string;
+ updated_at: string;
+ };
+ type ReposListCommentsForCommitResponseItemUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListCommentsForCommitResponseItem = {
+ html_url: string;
+ url: string;
+ id: number;
+ node_id: string;
+ body: string;
+ path: string;
+ position: number;
+ line: number;
+ commit_id: string;
+ user: ReposListCommentsForCommitResponseItemUser;
+ created_at: string;
+ updated_at: string;
+ };
+ type ReposListCommitCommentsResponseItemUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListCommitCommentsResponseItem = {
+ html_url: string;
+ url: string;
+ id: number;
+ node_id: string;
+ body: string;
+ path: string;
+ position: number;
+ line: number;
+ commit_id: string;
+ user: ReposListCommitCommentsResponseItemUser;
+ created_at: string;
+ updated_at: string;
+ };
+ type ReposRemoveCollaboratorResponse = {};
+ type ReposListCollaboratorsResponseItemPermissions = {
+ pull: boolean;
+ push: boolean;
+ admin: boolean;
+ };
+ type ReposListCollaboratorsResponseItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ permissions: ReposListCollaboratorsResponseItemPermissions;
+ };
+ type ReposRemoveProtectedBranchUserRestrictionsResponseItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposAddProtectedBranchUserRestrictionsResponseItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposReplaceProtectedBranchUserRestrictionsResponseItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposRemoveProtectedBranchTeamRestrictionsResponseItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ };
+ type ReposAddProtectedBranchTeamRestrictionsResponseItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ };
+ type ReposReplaceProtectedBranchTeamRestrictionsResponseItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ };
+ type ReposAddProtectedBranchAdminEnforcementResponse = {
+ url: string;
+ enabled: boolean;
+ };
+ type ReposAddProtectedBranchRequiredSignaturesResponse = {
+ url: string;
+ enabled: boolean;
+ };
+ type ReposGetProtectedBranchRequiredSignaturesResponse = {
+ url: string;
+ enabled: boolean;
+ };
+ type ReposUpdateProtectedBranchPullRequestReviewEnforcementResponseDismissalRestrictionsTeamsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ };
+ type ReposUpdateProtectedBranchPullRequestReviewEnforcementResponseDismissalRestrictionsUsersItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposUpdateProtectedBranchPullRequestReviewEnforcementResponseDismissalRestrictions = {
+ url: string;
+ users_url: string;
+ teams_url: string;
+ users: Array<
+ ReposUpdateProtectedBranchPullRequestReviewEnforcementResponseDismissalRestrictionsUsersItem
+ >;
+ teams: Array<
+ ReposUpdateProtectedBranchPullRequestReviewEnforcementResponseDismissalRestrictionsTeamsItem
+ >;
+ };
+ type ReposUpdateProtectedBranchPullRequestReviewEnforcementResponse = {
+ url: string;
+ dismissal_restrictions: ReposUpdateProtectedBranchPullRequestReviewEnforcementResponseDismissalRestrictions;
+ dismiss_stale_reviews: boolean;
+ require_code_owner_reviews: boolean;
+ required_approving_review_count: number;
+ };
+ type ReposUpdateProtectedBranchRequiredStatusChecksResponse = {
+ url: string;
+ strict: boolean;
+ contexts: Array;
+ contexts_url: string;
+ };
+ type ReposGetProtectedBranchRequiredStatusChecksResponse = {
+ url: string;
+ strict: boolean;
+ contexts: Array;
+ contexts_url: string;
+ };
+ type ReposRemoveBranchProtectionResponse = {};
+ type ReposUpdateBranchProtectionResponseRestrictionsTeamsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ };
+ type ReposUpdateBranchProtectionResponseRestrictionsUsersItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposUpdateBranchProtectionResponseRestrictions = {
+ url: string;
+ users_url: string;
+ teams_url: string;
+ users: Array;
+ teams: Array;
+ };
+ type ReposUpdateBranchProtectionResponseRequiredPullRequestReviewsDismissalRestrictionsTeamsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ };
+ type ReposUpdateBranchProtectionResponseRequiredPullRequestReviewsDismissalRestrictionsUsersItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposUpdateBranchProtectionResponseRequiredPullRequestReviewsDismissalRestrictions = {
+ url: string;
+ users_url: string;
+ teams_url: string;
+ users: Array<
+ ReposUpdateBranchProtectionResponseRequiredPullRequestReviewsDismissalRestrictionsUsersItem
+ >;
+ teams: Array<
+ ReposUpdateBranchProtectionResponseRequiredPullRequestReviewsDismissalRestrictionsTeamsItem
+ >;
+ };
+ type ReposUpdateBranchProtectionResponseRequiredPullRequestReviews = {
+ url: string;
+ dismissal_restrictions: ReposUpdateBranchProtectionResponseRequiredPullRequestReviewsDismissalRestrictions;
+ dismiss_stale_reviews: boolean;
+ require_code_owner_reviews: boolean;
+ required_approving_review_count: number;
+ };
+ type ReposUpdateBranchProtectionResponseEnforceAdmins = {
+ url: string;
+ enabled: boolean;
+ };
+ type ReposUpdateBranchProtectionResponseRequiredStatusChecks = {
+ url: string;
+ strict: boolean;
+ contexts: Array;
+ contexts_url: string;
+ };
+ type ReposUpdateBranchProtectionResponse = {
+ url: string;
+ required_status_checks: ReposUpdateBranchProtectionResponseRequiredStatusChecks;
+ enforce_admins: ReposUpdateBranchProtectionResponseEnforceAdmins;
+ required_pull_request_reviews: ReposUpdateBranchProtectionResponseRequiredPullRequestReviews;
+ restrictions: ReposUpdateBranchProtectionResponseRestrictions;
+ };
+ type ReposGetBranchProtectionResponseRestrictionsTeamsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ };
+ type ReposGetBranchProtectionResponseRestrictionsUsersItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetBranchProtectionResponseRestrictions = {
+ url: string;
+ users_url: string;
+ teams_url: string;
+ users: Array;
+ teams: Array;
+ };
+ type ReposGetBranchProtectionResponseRequiredPullRequestReviewsDismissalRestrictionsTeamsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ };
+ type ReposGetBranchProtectionResponseRequiredPullRequestReviewsDismissalRestrictionsUsersItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetBranchProtectionResponseRequiredPullRequestReviewsDismissalRestrictions = {
+ url: string;
+ users_url: string;
+ teams_url: string;
+ users: Array<
+ ReposGetBranchProtectionResponseRequiredPullRequestReviewsDismissalRestrictionsUsersItem
+ >;
+ teams: Array<
+ ReposGetBranchProtectionResponseRequiredPullRequestReviewsDismissalRestrictionsTeamsItem
+ >;
+ };
+ type ReposGetBranchProtectionResponseRequiredPullRequestReviews = {
+ url: string;
+ dismissal_restrictions: ReposGetBranchProtectionResponseRequiredPullRequestReviewsDismissalRestrictions;
+ dismiss_stale_reviews: boolean;
+ require_code_owner_reviews: boolean;
+ required_approving_review_count: number;
+ };
+ type ReposGetBranchProtectionResponseEnforceAdmins = {
+ url: string;
+ enabled: boolean;
+ };
+ type ReposGetBranchProtectionResponseRequiredStatusChecks = {
+ url: string;
+ strict: boolean;
+ contexts: Array;
+ contexts_url: string;
+ };
+ type ReposGetBranchProtectionResponse = {
+ url: string;
+ required_status_checks: ReposGetBranchProtectionResponseRequiredStatusChecks;
+ enforce_admins: ReposGetBranchProtectionResponseEnforceAdmins;
+ required_pull_request_reviews: ReposGetBranchProtectionResponseRequiredPullRequestReviews;
+ restrictions: ReposGetBranchProtectionResponseRestrictions;
+ };
+ type ReposGetBranchResponseProtectionRequiredStatusChecks = {
+ enforcement_level: string;
+ contexts: Array;
+ };
+ type ReposGetBranchResponseProtection = {
+ enabled: boolean;
+ required_status_checks: ReposGetBranchResponseProtectionRequiredStatusChecks;
+ };
+ type ReposGetBranchResponseLinks = { html: string; self: string };
+ type ReposGetBranchResponseCommitCommitter = {
+ gravatar_id: string;
+ avatar_url: string;
+ url: string;
+ id: number;
+ login: string;
+ };
+ type ReposGetBranchResponseCommitParentsItem = { sha: string; url: string };
+ type ReposGetBranchResponseCommitAuthor = {
+ gravatar_id: string;
+ avatar_url: string;
+ url: string;
+ id: number;
+ login: string;
+ };
+ type ReposGetBranchResponseCommitCommitVerification = {
+ verified: boolean;
+ reason: string;
+ signature: null;
+ payload: null;
+ };
+ type ReposGetBranchResponseCommitCommitCommitter = {
+ name: string;
+ date: string;
+ email: string;
+ };
+ type ReposGetBranchResponseCommitCommitTree = { sha: string; url: string };
+ type ReposGetBranchResponseCommitCommitAuthor = {
+ name: string;
+ date: string;
+ email: string;
+ };
+ type ReposGetBranchResponseCommitCommit = {
+ author: ReposGetBranchResponseCommitCommitAuthor;
+ url: string;
+ message: string;
+ tree: ReposGetBranchResponseCommitCommitTree;
+ committer: ReposGetBranchResponseCommitCommitCommitter;
+ verification: ReposGetBranchResponseCommitCommitVerification;
+ };
+ type ReposGetBranchResponseCommit = {
+ sha: string;
+ node_id: string;
+ commit: ReposGetBranchResponseCommitCommit;
+ author: ReposGetBranchResponseCommitAuthor;
+ parents: Array;
+ url: string;
+ committer: ReposGetBranchResponseCommitCommitter;
+ };
+ type ReposGetBranchResponse = {
+ name: string;
+ commit: ReposGetBranchResponseCommit;
+ _links: ReposGetBranchResponseLinks;
+ protected: boolean;
+ protection: ReposGetBranchResponseProtection;
+ protection_url: string;
+ };
+ type ReposListBranchesResponseItemProtectionRequiredStatusChecks = {
+ enforcement_level: string;
+ contexts: Array;
+ };
+ type ReposListBranchesResponseItemProtection = {
+ enabled: boolean;
+ required_status_checks: ReposListBranchesResponseItemProtectionRequiredStatusChecks;
+ };
+ type ReposListBranchesResponseItemCommit = { sha: string; url: string };
+ type ReposListBranchesResponseItem = {
+ name: string;
+ commit: ReposListBranchesResponseItemCommit;
+ protected: boolean;
+ protection: ReposListBranchesResponseItemProtection;
+ protection_url: string;
+ };
+ type ReposTransferResponsePermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type ReposTransferResponseOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposTransferResponse = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposTransferResponseOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: ReposTransferResponsePermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type ReposDeleteResponse = { message?: string; documentation_url?: string };
+ type ReposListTagsResponseItemCommit = { sha: string; url: string };
+ type ReposListTagsResponseItem = {
+ name: string;
+ commit: ReposListTagsResponseItemCommit;
+ zipball_url: string;
+ tarball_url: string;
+ };
+ type ReposListTeamsResponseItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ };
+ type ReposListLanguagesResponse = { C: number; Python: number };
+ type ReposDisableAutomatedSecurityFixesResponse = {};
+ type ReposEnableAutomatedSecurityFixesResponse = {};
+ type ReposDisableVulnerabilityAlertsResponse = {};
+ type ReposEnableVulnerabilityAlertsResponse = {};
+ type ReposReplaceTopicsResponse = { names: Array };
+ type ReposListTopicsResponse = { names: Array };
+ type ReposUpdateResponseSourcePermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type ReposUpdateResponseSourceOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposUpdateResponseSource = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposUpdateResponseSourceOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: ReposUpdateResponseSourcePermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type ReposUpdateResponseParentPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type ReposUpdateResponseParentOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposUpdateResponseParent = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposUpdateResponseParentOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: ReposUpdateResponseParentPermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type ReposUpdateResponseOrganization = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposUpdateResponsePermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type ReposUpdateResponseOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposUpdateResponse = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposUpdateResponseOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: ReposUpdateResponsePermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ organization: ReposUpdateResponseOrganization;
+ parent: ReposUpdateResponseParent;
+ source: ReposUpdateResponseSource;
+ };
+ type ReposGetResponseSourcePermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type ReposGetResponseSourceOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetResponseSource = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposGetResponseSourceOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: ReposGetResponseSourcePermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type ReposGetResponseParentPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type ReposGetResponseParentOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetResponseParent = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposGetResponseParentOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: ReposGetResponseParentPermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type ReposGetResponseOrganization = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetResponseLicense = {
+ key: string;
+ name: string;
+ spdx_id: string;
+ url: string;
+ node_id: string;
+ };
+ type ReposGetResponsePermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type ReposGetResponseOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposGetResponse = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposGetResponseOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: ReposGetResponsePermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ license: ReposGetResponseLicense;
+ organization: ReposGetResponseOrganization;
+ parent: ReposGetResponseParent;
+ source: ReposGetResponseSource;
+ };
+ type ReposCreateUsingTemplateResponseTemplateRepositoryPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type ReposCreateUsingTemplateResponseTemplateRepositoryOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposCreateUsingTemplateResponseTemplateRepository = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposCreateUsingTemplateResponseTemplateRepositoryOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: ReposCreateUsingTemplateResponseTemplateRepositoryPermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type ReposCreateUsingTemplateResponsePermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type ReposCreateUsingTemplateResponseOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposCreateUsingTemplateResponse = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposCreateUsingTemplateResponseOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: ReposCreateUsingTemplateResponsePermissions;
+ allow_rebase_merge: boolean;
+ template_repository: ReposCreateUsingTemplateResponseTemplateRepository;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type ReposCreateInOrgResponsePermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type ReposCreateInOrgResponseOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposCreateInOrgResponse = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposCreateInOrgResponseOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: ReposCreateInOrgResponsePermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type ReposCreateForAuthenticatedUserResponsePermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type ReposCreateForAuthenticatedUserResponseOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposCreateForAuthenticatedUserResponse = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposCreateForAuthenticatedUserResponseOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: ReposCreateForAuthenticatedUserResponsePermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type ReposListPublicResponseItemOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListPublicResponseItem = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposListPublicResponseItemOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ };
+ type ReposListForOrgResponseItemLicense = {
+ key: string;
+ name: string;
+ spdx_id: string;
+ url: string;
+ node_id: string;
+ };
+ type ReposListForOrgResponseItemPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type ReposListForOrgResponseItemOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReposListForOrgResponseItem = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: ReposListForOrgResponseItemOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: ReposListForOrgResponseItemPermissions;
+ template_repository: null;
+ subscribers_count: number;
+ network_count: number;
+ license: ReposListForOrgResponseItemLicense;
+ };
+ type ReactionsDeleteResponse = {};
+ type ReactionsCreateForTeamDiscussionCommentResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReactionsCreateForTeamDiscussionCommentResponse = {
+ id: number;
+ node_id: string;
+ user: ReactionsCreateForTeamDiscussionCommentResponseUser;
+ content: string;
+ created_at: string;
+ };
+ type ReactionsListForTeamDiscussionCommentResponseItemUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReactionsListForTeamDiscussionCommentResponseItem = {
+ id: number;
+ node_id: string;
+ user: ReactionsListForTeamDiscussionCommentResponseItemUser;
+ content: string;
+ created_at: string;
+ };
+ type ReactionsCreateForTeamDiscussionResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReactionsCreateForTeamDiscussionResponse = {
+ id: number;
+ node_id: string;
+ user: ReactionsCreateForTeamDiscussionResponseUser;
+ content: string;
+ created_at: string;
+ };
+ type ReactionsListForTeamDiscussionResponseItemUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReactionsListForTeamDiscussionResponseItem = {
+ id: number;
+ node_id: string;
+ user: ReactionsListForTeamDiscussionResponseItemUser;
+ content: string;
+ created_at: string;
+ };
+ type ReactionsCreateForPullRequestReviewCommentResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReactionsCreateForPullRequestReviewCommentResponse = {
+ id: number;
+ node_id: string;
+ user: ReactionsCreateForPullRequestReviewCommentResponseUser;
+ content: string;
+ created_at: string;
+ };
+ type ReactionsListForPullRequestReviewCommentResponseItemUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReactionsListForPullRequestReviewCommentResponseItem = {
+ id: number;
+ node_id: string;
+ user: ReactionsListForPullRequestReviewCommentResponseItemUser;
+ content: string;
+ created_at: string;
+ };
+ type ReactionsCreateForIssueCommentResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReactionsCreateForIssueCommentResponse = {
+ id: number;
+ node_id: string;
+ user: ReactionsCreateForIssueCommentResponseUser;
+ content: string;
+ created_at: string;
+ };
+ type ReactionsListForIssueCommentResponseItemUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReactionsListForIssueCommentResponseItem = {
+ id: number;
+ node_id: string;
+ user: ReactionsListForIssueCommentResponseItemUser;
+ content: string;
+ created_at: string;
+ };
+ type ReactionsCreateForIssueResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReactionsCreateForIssueResponse = {
+ id: number;
+ node_id: string;
+ user: ReactionsCreateForIssueResponseUser;
+ content: string;
+ created_at: string;
+ };
+ type ReactionsListForIssueResponseItemUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReactionsListForIssueResponseItem = {
+ id: number;
+ node_id: string;
+ user: ReactionsListForIssueResponseItemUser;
+ content: string;
+ created_at: string;
+ };
+ type ReactionsCreateForCommitCommentResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReactionsCreateForCommitCommentResponse = {
+ id: number;
+ node_id: string;
+ user: ReactionsCreateForCommitCommentResponseUser;
+ content: string;
+ created_at: string;
+ };
+ type ReactionsListForCommitCommentResponseItemUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type ReactionsListForCommitCommentResponseItem = {
+ id: number;
+ node_id: string;
+ user: ReactionsListForCommitCommentResponseItemUser;
+ content: string;
+ created_at: string;
+ };
+ type RateLimitGetResponseRate = {
+ limit: number;
+ remaining: number;
+ reset: number;
+ };
+ type RateLimitGetResponseResourcesIntegrationManifest = {
+ limit: number;
+ remaining: number;
+ reset: number;
+ };
+ type RateLimitGetResponseResourcesGraphql = {
+ limit: number;
+ remaining: number;
+ reset: number;
+ };
+ type RateLimitGetResponseResourcesSearch = {
+ limit: number;
+ remaining: number;
+ reset: number;
+ };
+ type RateLimitGetResponseResourcesCore = {
+ limit: number;
+ remaining: number;
+ reset: number;
+ };
+ type RateLimitGetResponseResources = {
+ core: RateLimitGetResponseResourcesCore;
+ search: RateLimitGetResponseResourcesSearch;
+ graphql: RateLimitGetResponseResourcesGraphql;
+ integration_manifest: RateLimitGetResponseResourcesIntegrationManifest;
+ };
+ type RateLimitGetResponse = {
+ resources: RateLimitGetResponseResources;
+ rate: RateLimitGetResponseRate;
+ };
+ type PullsDismissReviewResponseLinksPullRequest = { href: string };
+ type PullsDismissReviewResponseLinksHtml = { href: string };
+ type PullsDismissReviewResponseLinks = {
+ html: PullsDismissReviewResponseLinksHtml;
+ pull_request: PullsDismissReviewResponseLinksPullRequest;
+ };
+ type PullsDismissReviewResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsDismissReviewResponse = {
+ id: number;
+ node_id: string;
+ user: PullsDismissReviewResponseUser;
+ body: string;
+ commit_id: string;
+ state: string;
+ html_url: string;
+ pull_request_url: string;
+ _links: PullsDismissReviewResponseLinks;
+ };
+ type PullsSubmitReviewResponseLinksPullRequest = { href: string };
+ type PullsSubmitReviewResponseLinksHtml = { href: string };
+ type PullsSubmitReviewResponseLinks = {
+ html: PullsSubmitReviewResponseLinksHtml;
+ pull_request: PullsSubmitReviewResponseLinksPullRequest;
+ };
+ type PullsSubmitReviewResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsSubmitReviewResponse = {
+ id: number;
+ node_id: string;
+ user: PullsSubmitReviewResponseUser;
+ body: string;
+ commit_id: string;
+ state: string;
+ html_url: string;
+ pull_request_url: string;
+ _links: PullsSubmitReviewResponseLinks;
+ };
+ type PullsUpdateReviewResponseLinksPullRequest = { href: string };
+ type PullsUpdateReviewResponseLinksHtml = { href: string };
+ type PullsUpdateReviewResponseLinks = {
+ html: PullsUpdateReviewResponseLinksHtml;
+ pull_request: PullsUpdateReviewResponseLinksPullRequest;
+ };
+ type PullsUpdateReviewResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsUpdateReviewResponse = {
+ id: number;
+ node_id: string;
+ user: PullsUpdateReviewResponseUser;
+ body: string;
+ commit_id: string;
+ state: string;
+ html_url: string;
+ pull_request_url: string;
+ _links: PullsUpdateReviewResponseLinks;
+ };
+ type PullsCreateReviewResponseLinksPullRequest = { href: string };
+ type PullsCreateReviewResponseLinksHtml = { href: string };
+ type PullsCreateReviewResponseLinks = {
+ html: PullsCreateReviewResponseLinksHtml;
+ pull_request: PullsCreateReviewResponseLinksPullRequest;
+ };
+ type PullsCreateReviewResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateReviewResponse = {
+ id: number;
+ node_id: string;
+ user: PullsCreateReviewResponseUser;
+ body: string;
+ commit_id: string;
+ state: string;
+ html_url: string;
+ pull_request_url: string;
+ _links: PullsCreateReviewResponseLinks;
+ };
+ type PullsGetCommentsForReviewResponseItemLinksPullRequest = { href: string };
+ type PullsGetCommentsForReviewResponseItemLinksHtml = { href: string };
+ type PullsGetCommentsForReviewResponseItemLinksSelf = { href: string };
+ type PullsGetCommentsForReviewResponseItemLinks = {
+ self: PullsGetCommentsForReviewResponseItemLinksSelf;
+ html: PullsGetCommentsForReviewResponseItemLinksHtml;
+ pull_request: PullsGetCommentsForReviewResponseItemLinksPullRequest;
+ };
+ type PullsGetCommentsForReviewResponseItemUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsGetCommentsForReviewResponseItem = {
+ url: string;
+ id: number;
+ node_id: string;
+ pull_request_review_id: number;
+ diff_hunk: string;
+ path: string;
+ position: number;
+ original_position: number;
+ commit_id: string;
+ original_commit_id: string;
+ in_reply_to_id: number;
+ user: PullsGetCommentsForReviewResponseItemUser;
+ body: string;
+ created_at: string;
+ updated_at: string;
+ html_url: string;
+ pull_request_url: string;
+ _links: PullsGetCommentsForReviewResponseItemLinks;
+ };
+ type PullsDeletePendingReviewResponseLinksPullRequest = { href: string };
+ type PullsDeletePendingReviewResponseLinksHtml = { href: string };
+ type PullsDeletePendingReviewResponseLinks = {
+ html: PullsDeletePendingReviewResponseLinksHtml;
+ pull_request: PullsDeletePendingReviewResponseLinksPullRequest;
+ };
+ type PullsDeletePendingReviewResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsDeletePendingReviewResponse = {
+ id: number;
+ node_id: string;
+ user: PullsDeletePendingReviewResponseUser;
+ body: string;
+ commit_id: string;
+ state: string;
+ html_url: string;
+ pull_request_url: string;
+ _links: PullsDeletePendingReviewResponseLinks;
+ };
+ type PullsGetReviewResponseLinksPullRequest = { href: string };
+ type PullsGetReviewResponseLinksHtml = { href: string };
+ type PullsGetReviewResponseLinks = {
+ html: PullsGetReviewResponseLinksHtml;
+ pull_request: PullsGetReviewResponseLinksPullRequest;
+ };
+ type PullsGetReviewResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsGetReviewResponse = {
+ id: number;
+ node_id: string;
+ user: PullsGetReviewResponseUser;
+ body: string;
+ commit_id: string;
+ state: string;
+ html_url: string;
+ pull_request_url: string;
+ _links: PullsGetReviewResponseLinks;
+ };
+ type PullsListReviewsResponseItemLinksPullRequest = { href: string };
+ type PullsListReviewsResponseItemLinksHtml = { href: string };
+ type PullsListReviewsResponseItemLinks = {
+ html: PullsListReviewsResponseItemLinksHtml;
+ pull_request: PullsListReviewsResponseItemLinksPullRequest;
+ };
+ type PullsListReviewsResponseItemUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsListReviewsResponseItem = {
+ id: number;
+ node_id: string;
+ user: PullsListReviewsResponseItemUser;
+ body: string;
+ commit_id: string;
+ state: string;
+ html_url: string;
+ pull_request_url: string;
+ _links: PullsListReviewsResponseItemLinks;
+ };
+ type PullsDeleteReviewRequestResponse = {};
+ type PullsCreateReviewRequestResponseLinksStatuses = { href: string };
+ type PullsCreateReviewRequestResponseLinksCommits = { href: string };
+ type PullsCreateReviewRequestResponseLinksReviewComment = { href: string };
+ type PullsCreateReviewRequestResponseLinksReviewComments = { href: string };
+ type PullsCreateReviewRequestResponseLinksComments = { href: string };
+ type PullsCreateReviewRequestResponseLinksIssue = { href: string };
+ type PullsCreateReviewRequestResponseLinksHtml = { href: string };
+ type PullsCreateReviewRequestResponseLinksSelf = { href: string };
+ type PullsCreateReviewRequestResponseLinks = {
+ self: PullsCreateReviewRequestResponseLinksSelf;
+ html: PullsCreateReviewRequestResponseLinksHtml;
+ issue: PullsCreateReviewRequestResponseLinksIssue;
+ comments: PullsCreateReviewRequestResponseLinksComments;
+ review_comments: PullsCreateReviewRequestResponseLinksReviewComments;
+ review_comment: PullsCreateReviewRequestResponseLinksReviewComment;
+ commits: PullsCreateReviewRequestResponseLinksCommits;
+ statuses: PullsCreateReviewRequestResponseLinksStatuses;
+ };
+ type PullsCreateReviewRequestResponseBaseRepoPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type PullsCreateReviewRequestResponseBaseRepoOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateReviewRequestResponseBaseRepo = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: PullsCreateReviewRequestResponseBaseRepoOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: PullsCreateReviewRequestResponseBaseRepoPermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type PullsCreateReviewRequestResponseBaseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateReviewRequestResponseBase = {
+ label: string;
+ ref: string;
+ sha: string;
+ user: PullsCreateReviewRequestResponseBaseUser;
+ repo: PullsCreateReviewRequestResponseBaseRepo;
+ };
+ type PullsCreateReviewRequestResponseHeadRepoPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type PullsCreateReviewRequestResponseHeadRepoOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateReviewRequestResponseHeadRepo = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: PullsCreateReviewRequestResponseHeadRepoOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: PullsCreateReviewRequestResponseHeadRepoPermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type PullsCreateReviewRequestResponseHeadUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateReviewRequestResponseHead = {
+ label: string;
+ ref: string;
+ sha: string;
+ user: PullsCreateReviewRequestResponseHeadUser;
+ repo: PullsCreateReviewRequestResponseHeadRepo;
+ };
+ type PullsCreateReviewRequestResponseRequestedTeamsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ };
+ type PullsCreateReviewRequestResponseRequestedReviewersItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateReviewRequestResponseAssigneesItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateReviewRequestResponseAssignee = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateReviewRequestResponseMilestoneCreator = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateReviewRequestResponseMilestone = {
+ url: string;
+ html_url: string;
+ labels_url: string;
+ id: number;
+ node_id: string;
+ number: number;
+ state: string;
+ title: string;
+ description: string;
+ creator: PullsCreateReviewRequestResponseMilestoneCreator;
+ open_issues: number;
+ closed_issues: number;
+ created_at: string;
+ updated_at: string;
+ closed_at: string;
+ due_on: string;
+ };
+ type PullsCreateReviewRequestResponseLabelsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ description: string;
+ color: string;
+ default: boolean;
+ };
+ type PullsCreateReviewRequestResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateReviewRequestResponse = {
+ url: string;
+ id: number;
+ node_id: string;
+ html_url: string;
+ diff_url: string;
+ patch_url: string;
+ issue_url: string;
+ commits_url: string;
+ review_comments_url: string;
+ review_comment_url: string;
+ comments_url: string;
+ statuses_url: string;
+ number: number;
+ state: string;
+ locked: boolean;
+ title: string;
+ user: PullsCreateReviewRequestResponseUser;
+ body: string;
+ labels: Array;
+ milestone: PullsCreateReviewRequestResponseMilestone;
+ active_lock_reason: string;
+ created_at: string;
+ updated_at: string;
+ closed_at: string;
+ merged_at: string;
+ merge_commit_sha: string;
+ assignee: PullsCreateReviewRequestResponseAssignee;
+ assignees: Array;
+ requested_reviewers: Array<
+ PullsCreateReviewRequestResponseRequestedReviewersItem
+ >;
+ requested_teams: Array;
+ head: PullsCreateReviewRequestResponseHead;
+ base: PullsCreateReviewRequestResponseBase;
+ _links: PullsCreateReviewRequestResponseLinks;
+ author_association: string;
+ draft: boolean;
+ };
+ type PullsListReviewRequestsResponseTeamsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ };
+ type PullsListReviewRequestsResponseUsersItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsListReviewRequestsResponse = {
+ users: Array;
+ teams: Array;
+ };
+ type PullsDeleteCommentResponse = {};
+ type PullsUpdateCommentResponseLinksPullRequest = { href: string };
+ type PullsUpdateCommentResponseLinksHtml = { href: string };
+ type PullsUpdateCommentResponseLinksSelf = { href: string };
+ type PullsUpdateCommentResponseLinks = {
+ self: PullsUpdateCommentResponseLinksSelf;
+ html: PullsUpdateCommentResponseLinksHtml;
+ pull_request: PullsUpdateCommentResponseLinksPullRequest;
+ };
+ type PullsUpdateCommentResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsUpdateCommentResponse = {
+ url: string;
+ id: number;
+ node_id: string;
+ pull_request_review_id: number;
+ diff_hunk: string;
+ path: string;
+ position: number;
+ original_position: number;
+ commit_id: string;
+ original_commit_id: string;
+ in_reply_to_id: number;
+ user: PullsUpdateCommentResponseUser;
+ body: string;
+ created_at: string;
+ updated_at: string;
+ html_url: string;
+ pull_request_url: string;
+ _links: PullsUpdateCommentResponseLinks;
+ };
+ type PullsCreateCommentReplyResponseLinksPullRequest = { href: string };
+ type PullsCreateCommentReplyResponseLinksHtml = { href: string };
+ type PullsCreateCommentReplyResponseLinksSelf = { href: string };
+ type PullsCreateCommentReplyResponseLinks = {
+ self: PullsCreateCommentReplyResponseLinksSelf;
+ html: PullsCreateCommentReplyResponseLinksHtml;
+ pull_request: PullsCreateCommentReplyResponseLinksPullRequest;
+ };
+ type PullsCreateCommentReplyResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateCommentReplyResponse = {
+ url: string;
+ id: number;
+ node_id: string;
+ pull_request_review_id: number;
+ diff_hunk: string;
+ path: string;
+ position: number;
+ original_position: number;
+ commit_id: string;
+ original_commit_id: string;
+ in_reply_to_id: number;
+ user: PullsCreateCommentReplyResponseUser;
+ body: string;
+ created_at: string;
+ updated_at: string;
+ html_url: string;
+ pull_request_url: string;
+ _links: PullsCreateCommentReplyResponseLinks;
+ };
+ type PullsCreateCommentResponseLinksPullRequest = { href: string };
+ type PullsCreateCommentResponseLinksHtml = { href: string };
+ type PullsCreateCommentResponseLinksSelf = { href: string };
+ type PullsCreateCommentResponseLinks = {
+ self: PullsCreateCommentResponseLinksSelf;
+ html: PullsCreateCommentResponseLinksHtml;
+ pull_request: PullsCreateCommentResponseLinksPullRequest;
+ };
+ type PullsCreateCommentResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateCommentResponse = {
+ url: string;
+ id: number;
+ node_id: string;
+ pull_request_review_id: number;
+ diff_hunk: string;
+ path: string;
+ position: number;
+ original_position: number;
+ commit_id: string;
+ original_commit_id: string;
+ in_reply_to_id: number;
+ user: PullsCreateCommentResponseUser;
+ body: string;
+ created_at: string;
+ updated_at: string;
+ html_url: string;
+ pull_request_url: string;
+ _links: PullsCreateCommentResponseLinks;
+ };
+ type PullsGetCommentResponseLinksPullRequest = { href: string };
+ type PullsGetCommentResponseLinksHtml = { href: string };
+ type PullsGetCommentResponseLinksSelf = { href: string };
+ type PullsGetCommentResponseLinks = {
+ self: PullsGetCommentResponseLinksSelf;
+ html: PullsGetCommentResponseLinksHtml;
+ pull_request: PullsGetCommentResponseLinksPullRequest;
+ };
+ type PullsGetCommentResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsGetCommentResponse = {
+ url: string;
+ id: number;
+ node_id: string;
+ pull_request_review_id: number;
+ diff_hunk: string;
+ path: string;
+ position: number;
+ original_position: number;
+ commit_id: string;
+ original_commit_id: string;
+ in_reply_to_id: number;
+ user: PullsGetCommentResponseUser;
+ body: string;
+ created_at: string;
+ updated_at: string;
+ html_url: string;
+ pull_request_url: string;
+ _links: PullsGetCommentResponseLinks;
+ };
+ type PullsListCommentsForRepoResponseItemLinksPullRequest = { href: string };
+ type PullsListCommentsForRepoResponseItemLinksHtml = { href: string };
+ type PullsListCommentsForRepoResponseItemLinksSelf = { href: string };
+ type PullsListCommentsForRepoResponseItemLinks = {
+ self: PullsListCommentsForRepoResponseItemLinksSelf;
+ html: PullsListCommentsForRepoResponseItemLinksHtml;
+ pull_request: PullsListCommentsForRepoResponseItemLinksPullRequest;
+ };
+ type PullsListCommentsForRepoResponseItemUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsListCommentsForRepoResponseItem = {
+ url: string;
+ id: number;
+ node_id: string;
+ pull_request_review_id: number;
+ diff_hunk: string;
+ path: string;
+ position: number;
+ original_position: number;
+ commit_id: string;
+ original_commit_id: string;
+ in_reply_to_id: number;
+ user: PullsListCommentsForRepoResponseItemUser;
+ body: string;
+ created_at: string;
+ updated_at: string;
+ html_url: string;
+ pull_request_url: string;
+ _links: PullsListCommentsForRepoResponseItemLinks;
+ };
+ type PullsListCommentsResponseItemLinksPullRequest = { href: string };
+ type PullsListCommentsResponseItemLinksHtml = { href: string };
+ type PullsListCommentsResponseItemLinksSelf = { href: string };
+ type PullsListCommentsResponseItemLinks = {
+ self: PullsListCommentsResponseItemLinksSelf;
+ html: PullsListCommentsResponseItemLinksHtml;
+ pull_request: PullsListCommentsResponseItemLinksPullRequest;
+ };
+ type PullsListCommentsResponseItemUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsListCommentsResponseItem = {
+ url: string;
+ id: number;
+ node_id: string;
+ pull_request_review_id: number;
+ diff_hunk: string;
+ path: string;
+ position: number;
+ original_position: number;
+ commit_id: string;
+ original_commit_id: string;
+ in_reply_to_id: number;
+ user: PullsListCommentsResponseItemUser;
+ body: string;
+ created_at: string;
+ updated_at: string;
+ html_url: string;
+ pull_request_url: string;
+ _links: PullsListCommentsResponseItemLinks;
+ };
+ type PullsListFilesResponseItem = {
+ sha: string;
+ filename: string;
+ status: string;
+ additions: number;
+ deletions: number;
+ changes: number;
+ blob_url: string;
+ raw_url: string;
+ contents_url: string;
+ patch: string;
+ };
+ type PullsListCommitsResponseItemParentsItem = { url: string; sha: string };
+ type PullsListCommitsResponseItemCommitter = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsListCommitsResponseItemAuthor = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsListCommitsResponseItemCommitVerification = {
+ verified: boolean;
+ reason: string;
+ signature: null;
+ payload: null;
+ };
+ type PullsListCommitsResponseItemCommitTree = { url: string; sha: string };
+ type PullsListCommitsResponseItemCommitCommitter = {
+ name: string;
+ email: string;
+ date: string;
+ };
+ type PullsListCommitsResponseItemCommitAuthor = {
+ name: string;
+ email: string;
+ date: string;
+ };
+ type PullsListCommitsResponseItemCommit = {
+ url: string;
+ author: PullsListCommitsResponseItemCommitAuthor;
+ committer: PullsListCommitsResponseItemCommitCommitter;
+ message: string;
+ tree: PullsListCommitsResponseItemCommitTree;
+ comment_count: number;
+ verification: PullsListCommitsResponseItemCommitVerification;
+ };
+ type PullsListCommitsResponseItem = {
+ url: string;
+ sha: string;
+ node_id: string;
+ html_url: string;
+ comments_url: string;
+ commit: PullsListCommitsResponseItemCommit;
+ author: PullsListCommitsResponseItemAuthor;
+ committer: PullsListCommitsResponseItemCommitter;
+ parents: Array;
+ };
+ type PullsUpdateResponseMergedBy = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsUpdateResponseLinksStatuses = { href: string };
+ type PullsUpdateResponseLinksCommits = { href: string };
+ type PullsUpdateResponseLinksReviewComment = { href: string };
+ type PullsUpdateResponseLinksReviewComments = { href: string };
+ type PullsUpdateResponseLinksComments = { href: string };
+ type PullsUpdateResponseLinksIssue = { href: string };
+ type PullsUpdateResponseLinksHtml = { href: string };
+ type PullsUpdateResponseLinksSelf = { href: string };
+ type PullsUpdateResponseLinks = {
+ self: PullsUpdateResponseLinksSelf;
+ html: PullsUpdateResponseLinksHtml;
+ issue: PullsUpdateResponseLinksIssue;
+ comments: PullsUpdateResponseLinksComments;
+ review_comments: PullsUpdateResponseLinksReviewComments;
+ review_comment: PullsUpdateResponseLinksReviewComment;
+ commits: PullsUpdateResponseLinksCommits;
+ statuses: PullsUpdateResponseLinksStatuses;
+ };
+ type PullsUpdateResponseBaseRepoPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type PullsUpdateResponseBaseRepoOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsUpdateResponseBaseRepo = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: PullsUpdateResponseBaseRepoOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: PullsUpdateResponseBaseRepoPermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type PullsUpdateResponseBaseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsUpdateResponseBase = {
+ label: string;
+ ref: string;
+ sha: string;
+ user: PullsUpdateResponseBaseUser;
+ repo: PullsUpdateResponseBaseRepo;
+ };
+ type PullsUpdateResponseHeadRepoPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type PullsUpdateResponseHeadRepoOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsUpdateResponseHeadRepo = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: PullsUpdateResponseHeadRepoOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: PullsUpdateResponseHeadRepoPermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type PullsUpdateResponseHeadUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsUpdateResponseHead = {
+ label: string;
+ ref: string;
+ sha: string;
+ user: PullsUpdateResponseHeadUser;
+ repo: PullsUpdateResponseHeadRepo;
+ };
+ type PullsUpdateResponseRequestedTeamsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ };
+ type PullsUpdateResponseRequestedReviewersItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsUpdateResponseAssigneesItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsUpdateResponseAssignee = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsUpdateResponseMilestoneCreator = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsUpdateResponseMilestone = {
+ url: string;
+ html_url: string;
+ labels_url: string;
+ id: number;
+ node_id: string;
+ number: number;
+ state: string;
+ title: string;
+ description: string;
+ creator: PullsUpdateResponseMilestoneCreator;
+ open_issues: number;
+ closed_issues: number;
+ created_at: string;
+ updated_at: string;
+ closed_at: string;
+ due_on: string;
+ };
+ type PullsUpdateResponseLabelsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ description: string;
+ color: string;
+ default: boolean;
+ };
+ type PullsUpdateResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsUpdateResponse = {
+ url: string;
+ id: number;
+ node_id: string;
+ html_url: string;
+ diff_url: string;
+ patch_url: string;
+ issue_url: string;
+ commits_url: string;
+ review_comments_url: string;
+ review_comment_url: string;
+ comments_url: string;
+ statuses_url: string;
+ number: number;
+ state: string;
+ locked: boolean;
+ title: string;
+ user: PullsUpdateResponseUser;
+ body: string;
+ labels: Array;
+ milestone: PullsUpdateResponseMilestone;
+ active_lock_reason: string;
+ created_at: string;
+ updated_at: string;
+ closed_at: string;
+ merged_at: string;
+ merge_commit_sha: string;
+ assignee: PullsUpdateResponseAssignee;
+ assignees: Array;
+ requested_reviewers: Array;
+ requested_teams: Array;
+ head: PullsUpdateResponseHead;
+ base: PullsUpdateResponseBase;
+ _links: PullsUpdateResponseLinks;
+ author_association: string;
+ draft: boolean;
+ merged: boolean;
+ mergeable: boolean;
+ rebaseable: boolean;
+ mergeable_state: string;
+ merged_by: PullsUpdateResponseMergedBy;
+ comments: number;
+ review_comments: number;
+ maintainer_can_modify: boolean;
+ commits: number;
+ additions: number;
+ deletions: number;
+ changed_files: number;
+ };
+ type PullsUpdateBranchResponse = { message: string; url: string };
+ type PullsCreateFromIssueResponseMergedBy = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateFromIssueResponseLinksStatuses = { href: string };
+ type PullsCreateFromIssueResponseLinksCommits = { href: string };
+ type PullsCreateFromIssueResponseLinksReviewComment = { href: string };
+ type PullsCreateFromIssueResponseLinksReviewComments = { href: string };
+ type PullsCreateFromIssueResponseLinksComments = { href: string };
+ type PullsCreateFromIssueResponseLinksIssue = { href: string };
+ type PullsCreateFromIssueResponseLinksHtml = { href: string };
+ type PullsCreateFromIssueResponseLinksSelf = { href: string };
+ type PullsCreateFromIssueResponseLinks = {
+ self: PullsCreateFromIssueResponseLinksSelf;
+ html: PullsCreateFromIssueResponseLinksHtml;
+ issue: PullsCreateFromIssueResponseLinksIssue;
+ comments: PullsCreateFromIssueResponseLinksComments;
+ review_comments: PullsCreateFromIssueResponseLinksReviewComments;
+ review_comment: PullsCreateFromIssueResponseLinksReviewComment;
+ commits: PullsCreateFromIssueResponseLinksCommits;
+ statuses: PullsCreateFromIssueResponseLinksStatuses;
+ };
+ type PullsCreateFromIssueResponseBaseRepoPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type PullsCreateFromIssueResponseBaseRepoOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateFromIssueResponseBaseRepo = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: PullsCreateFromIssueResponseBaseRepoOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: PullsCreateFromIssueResponseBaseRepoPermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type PullsCreateFromIssueResponseBaseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateFromIssueResponseBase = {
+ label: string;
+ ref: string;
+ sha: string;
+ user: PullsCreateFromIssueResponseBaseUser;
+ repo: PullsCreateFromIssueResponseBaseRepo;
+ };
+ type PullsCreateFromIssueResponseHeadRepoPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type PullsCreateFromIssueResponseHeadRepoOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateFromIssueResponseHeadRepo = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: PullsCreateFromIssueResponseHeadRepoOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: PullsCreateFromIssueResponseHeadRepoPermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type PullsCreateFromIssueResponseHeadUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateFromIssueResponseHead = {
+ label: string;
+ ref: string;
+ sha: string;
+ user: PullsCreateFromIssueResponseHeadUser;
+ repo: PullsCreateFromIssueResponseHeadRepo;
+ };
+ type PullsCreateFromIssueResponseRequestedTeamsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ };
+ type PullsCreateFromIssueResponseRequestedReviewersItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateFromIssueResponseAssigneesItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateFromIssueResponseAssignee = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateFromIssueResponseMilestoneCreator = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateFromIssueResponseMilestone = {
+ url: string;
+ html_url: string;
+ labels_url: string;
+ id: number;
+ node_id: string;
+ number: number;
+ state: string;
+ title: string;
+ description: string;
+ creator: PullsCreateFromIssueResponseMilestoneCreator;
+ open_issues: number;
+ closed_issues: number;
+ created_at: string;
+ updated_at: string;
+ closed_at: string;
+ due_on: string;
+ };
+ type PullsCreateFromIssueResponseLabelsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ description: string;
+ color: string;
+ default: boolean;
+ };
+ type PullsCreateFromIssueResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateFromIssueResponse = {
+ url: string;
+ id: number;
+ node_id: string;
+ html_url: string;
+ diff_url: string;
+ patch_url: string;
+ issue_url: string;
+ commits_url: string;
+ review_comments_url: string;
+ review_comment_url: string;
+ comments_url: string;
+ statuses_url: string;
+ number: number;
+ state: string;
+ locked: boolean;
+ title: string;
+ user: PullsCreateFromIssueResponseUser;
+ body: string;
+ labels: Array;
+ milestone: PullsCreateFromIssueResponseMilestone;
+ active_lock_reason: string;
+ created_at: string;
+ updated_at: string;
+ closed_at: string;
+ merged_at: string;
+ merge_commit_sha: string;
+ assignee: PullsCreateFromIssueResponseAssignee;
+ assignees: Array;
+ requested_reviewers: Array<
+ PullsCreateFromIssueResponseRequestedReviewersItem
+ >;
+ requested_teams: Array;
+ head: PullsCreateFromIssueResponseHead;
+ base: PullsCreateFromIssueResponseBase;
+ _links: PullsCreateFromIssueResponseLinks;
+ author_association: string;
+ draft: boolean;
+ merged: boolean;
+ mergeable: boolean;
+ rebaseable: boolean;
+ mergeable_state: string;
+ merged_by: PullsCreateFromIssueResponseMergedBy;
+ comments: number;
+ review_comments: number;
+ maintainer_can_modify: boolean;
+ commits: number;
+ additions: number;
+ deletions: number;
+ changed_files: number;
+ };
+ type PullsCreateResponseMergedBy = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateResponseLinksStatuses = { href: string };
+ type PullsCreateResponseLinksCommits = { href: string };
+ type PullsCreateResponseLinksReviewComment = { href: string };
+ type PullsCreateResponseLinksReviewComments = { href: string };
+ type PullsCreateResponseLinksComments = { href: string };
+ type PullsCreateResponseLinksIssue = { href: string };
+ type PullsCreateResponseLinksHtml = { href: string };
+ type PullsCreateResponseLinksSelf = { href: string };
+ type PullsCreateResponseLinks = {
+ self: PullsCreateResponseLinksSelf;
+ html: PullsCreateResponseLinksHtml;
+ issue: PullsCreateResponseLinksIssue;
+ comments: PullsCreateResponseLinksComments;
+ review_comments: PullsCreateResponseLinksReviewComments;
+ review_comment: PullsCreateResponseLinksReviewComment;
+ commits: PullsCreateResponseLinksCommits;
+ statuses: PullsCreateResponseLinksStatuses;
+ };
+ type PullsCreateResponseBaseRepoPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type PullsCreateResponseBaseRepoOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateResponseBaseRepo = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: PullsCreateResponseBaseRepoOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: PullsCreateResponseBaseRepoPermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type PullsCreateResponseBaseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateResponseBase = {
+ label: string;
+ ref: string;
+ sha: string;
+ user: PullsCreateResponseBaseUser;
+ repo: PullsCreateResponseBaseRepo;
+ };
+ type PullsCreateResponseHeadRepoPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type PullsCreateResponseHeadRepoOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateResponseHeadRepo = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: PullsCreateResponseHeadRepoOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: PullsCreateResponseHeadRepoPermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type PullsCreateResponseHeadUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateResponseHead = {
+ label: string;
+ ref: string;
+ sha: string;
+ user: PullsCreateResponseHeadUser;
+ repo: PullsCreateResponseHeadRepo;
+ };
+ type PullsCreateResponseRequestedTeamsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ };
+ type PullsCreateResponseRequestedReviewersItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateResponseAssigneesItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateResponseAssignee = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateResponseMilestoneCreator = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateResponseMilestone = {
+ url: string;
+ html_url: string;
+ labels_url: string;
+ id: number;
+ node_id: string;
+ number: number;
+ state: string;
+ title: string;
+ description: string;
+ creator: PullsCreateResponseMilestoneCreator;
+ open_issues: number;
+ closed_issues: number;
+ created_at: string;
+ updated_at: string;
+ closed_at: string;
+ due_on: string;
+ };
+ type PullsCreateResponseLabelsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ description: string;
+ color: string;
+ default: boolean;
+ };
+ type PullsCreateResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsCreateResponse = {
+ url: string;
+ id: number;
+ node_id: string;
+ html_url: string;
+ diff_url: string;
+ patch_url: string;
+ issue_url: string;
+ commits_url: string;
+ review_comments_url: string;
+ review_comment_url: string;
+ comments_url: string;
+ statuses_url: string;
+ number: number;
+ state: string;
+ locked: boolean;
+ title: string;
+ user: PullsCreateResponseUser;
+ body: string;
+ labels: Array;
+ milestone: PullsCreateResponseMilestone;
+ active_lock_reason: string;
+ created_at: string;
+ updated_at: string;
+ closed_at: string;
+ merged_at: string;
+ merge_commit_sha: string;
+ assignee: PullsCreateResponseAssignee;
+ assignees: Array;
+ requested_reviewers: Array;
+ requested_teams: Array;
+ head: PullsCreateResponseHead;
+ base: PullsCreateResponseBase;
+ _links: PullsCreateResponseLinks;
+ author_association: string;
+ draft: boolean;
+ merged: boolean;
+ mergeable: boolean;
+ rebaseable: boolean;
+ mergeable_state: string;
+ merged_by: PullsCreateResponseMergedBy;
+ comments: number;
+ review_comments: number;
+ maintainer_can_modify: boolean;
+ commits: number;
+ additions: number;
+ deletions: number;
+ changed_files: number;
+ };
+ type PullsGetResponseMergedBy = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsGetResponseLinksStatuses = { href: string };
+ type PullsGetResponseLinksCommits = { href: string };
+ type PullsGetResponseLinksReviewComment = { href: string };
+ type PullsGetResponseLinksReviewComments = { href: string };
+ type PullsGetResponseLinksComments = { href: string };
+ type PullsGetResponseLinksIssue = { href: string };
+ type PullsGetResponseLinksHtml = { href: string };
+ type PullsGetResponseLinksSelf = { href: string };
+ type PullsGetResponseLinks = {
+ self: PullsGetResponseLinksSelf;
+ html: PullsGetResponseLinksHtml;
+ issue: PullsGetResponseLinksIssue;
+ comments: PullsGetResponseLinksComments;
+ review_comments: PullsGetResponseLinksReviewComments;
+ review_comment: PullsGetResponseLinksReviewComment;
+ commits: PullsGetResponseLinksCommits;
+ statuses: PullsGetResponseLinksStatuses;
+ };
+ type PullsGetResponseBaseRepoPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type PullsGetResponseBaseRepoOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsGetResponseBaseRepo = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: PullsGetResponseBaseRepoOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: PullsGetResponseBaseRepoPermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type PullsGetResponseBaseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsGetResponseBase = {
+ label: string;
+ ref: string;
+ sha: string;
+ user: PullsGetResponseBaseUser;
+ repo: PullsGetResponseBaseRepo;
+ };
+ type PullsGetResponseHeadRepoPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type PullsGetResponseHeadRepoOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsGetResponseHeadRepo = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: PullsGetResponseHeadRepoOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: PullsGetResponseHeadRepoPermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type PullsGetResponseHeadUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsGetResponseHead = {
+ label: string;
+ ref: string;
+ sha: string;
+ user: PullsGetResponseHeadUser;
+ repo: PullsGetResponseHeadRepo;
+ };
+ type PullsGetResponseRequestedTeamsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ };
+ type PullsGetResponseRequestedReviewersItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsGetResponseAssigneesItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsGetResponseAssignee = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsGetResponseMilestoneCreator = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsGetResponseMilestone = {
+ url: string;
+ html_url: string;
+ labels_url: string;
+ id: number;
+ node_id: string;
+ number: number;
+ state: string;
+ title: string;
+ description: string;
+ creator: PullsGetResponseMilestoneCreator;
+ open_issues: number;
+ closed_issues: number;
+ created_at: string;
+ updated_at: string;
+ closed_at: string;
+ due_on: string;
+ };
+ type PullsGetResponseLabelsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ description: string;
+ color: string;
+ default: boolean;
+ };
+ type PullsGetResponseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsGetResponse = {
+ url: string;
+ id: number;
+ node_id: string;
+ html_url: string;
+ diff_url: string;
+ patch_url: string;
+ issue_url: string;
+ commits_url: string;
+ review_comments_url: string;
+ review_comment_url: string;
+ comments_url: string;
+ statuses_url: string;
+ number: number;
+ state: string;
+ locked: boolean;
+ title: string;
+ user: PullsGetResponseUser;
+ body: string;
+ labels: Array;
+ milestone: PullsGetResponseMilestone;
+ active_lock_reason: string;
+ created_at: string;
+ updated_at: string;
+ closed_at: string;
+ merged_at: string;
+ merge_commit_sha: string;
+ assignee: PullsGetResponseAssignee;
+ assignees: Array;
+ requested_reviewers: Array;
+ requested_teams: Array;
+ head: PullsGetResponseHead;
+ base: PullsGetResponseBase;
+ _links: PullsGetResponseLinks;
+ author_association: string;
+ draft: boolean;
+ merged: boolean;
+ mergeable: boolean;
+ rebaseable: boolean;
+ mergeable_state: string;
+ merged_by: PullsGetResponseMergedBy;
+ comments: number;
+ review_comments: number;
+ maintainer_can_modify: boolean;
+ commits: number;
+ additions: number;
+ deletions: number;
+ changed_files: number;
+ };
+ type PullsListResponseItemLinksStatuses = { href: string };
+ type PullsListResponseItemLinksCommits = { href: string };
+ type PullsListResponseItemLinksReviewComment = { href: string };
+ type PullsListResponseItemLinksReviewComments = { href: string };
+ type PullsListResponseItemLinksComments = { href: string };
+ type PullsListResponseItemLinksIssue = { href: string };
+ type PullsListResponseItemLinksHtml = { href: string };
+ type PullsListResponseItemLinksSelf = { href: string };
+ type PullsListResponseItemLinks = {
+ self: PullsListResponseItemLinksSelf;
+ html: PullsListResponseItemLinksHtml;
+ issue: PullsListResponseItemLinksIssue;
+ comments: PullsListResponseItemLinksComments;
+ review_comments: PullsListResponseItemLinksReviewComments;
+ review_comment: PullsListResponseItemLinksReviewComment;
+ commits: PullsListResponseItemLinksCommits;
+ statuses: PullsListResponseItemLinksStatuses;
+ };
+ type PullsListResponseItemBaseRepoPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type PullsListResponseItemBaseRepoOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsListResponseItemBaseRepo = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: PullsListResponseItemBaseRepoOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: PullsListResponseItemBaseRepoPermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type PullsListResponseItemBaseUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsListResponseItemBase = {
+ label: string;
+ ref: string;
+ sha: string;
+ user: PullsListResponseItemBaseUser;
+ repo: PullsListResponseItemBaseRepo;
+ };
+ type PullsListResponseItemHeadRepoPermissions = {
+ admin: boolean;
+ push: boolean;
+ pull: boolean;
+ };
+ type PullsListResponseItemHeadRepoOwner = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsListResponseItemHeadRepo = {
+ id: number;
+ node_id: string;
+ name: string;
+ full_name: string;
+ owner: PullsListResponseItemHeadRepoOwner;
+ private: boolean;
+ html_url: string;
+ description: string;
+ fork: boolean;
+ url: string;
+ archive_url: string;
+ assignees_url: string;
+ blobs_url: string;
+ branches_url: string;
+ collaborators_url: string;
+ comments_url: string;
+ commits_url: string;
+ compare_url: string;
+ contents_url: string;
+ contributors_url: string;
+ deployments_url: string;
+ downloads_url: string;
+ events_url: string;
+ forks_url: string;
+ git_commits_url: string;
+ git_refs_url: string;
+ git_tags_url: string;
+ git_url: string;
+ issue_comment_url: string;
+ issue_events_url: string;
+ issues_url: string;
+ keys_url: string;
+ labels_url: string;
+ languages_url: string;
+ merges_url: string;
+ milestones_url: string;
+ notifications_url: string;
+ pulls_url: string;
+ releases_url: string;
+ ssh_url: string;
+ stargazers_url: string;
+ statuses_url: string;
+ subscribers_url: string;
+ subscription_url: string;
+ tags_url: string;
+ teams_url: string;
+ trees_url: string;
+ clone_url: string;
+ mirror_url: string;
+ hooks_url: string;
+ svn_url: string;
+ homepage: string;
+ language: null;
+ forks_count: number;
+ stargazers_count: number;
+ watchers_count: number;
+ size: number;
+ default_branch: string;
+ open_issues_count: number;
+ is_template: boolean;
+ topics: Array;
+ has_issues: boolean;
+ has_projects: boolean;
+ has_wiki: boolean;
+ has_pages: boolean;
+ has_downloads: boolean;
+ archived: boolean;
+ disabled: boolean;
+ pushed_at: string;
+ created_at: string;
+ updated_at: string;
+ permissions: PullsListResponseItemHeadRepoPermissions;
+ allow_rebase_merge: boolean;
+ template_repository: null;
+ allow_squash_merge: boolean;
+ allow_merge_commit: boolean;
+ subscribers_count: number;
+ network_count: number;
+ };
+ type PullsListResponseItemHeadUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsListResponseItemHead = {
+ label: string;
+ ref: string;
+ sha: string;
+ user: PullsListResponseItemHeadUser;
+ repo: PullsListResponseItemHeadRepo;
+ };
+ type PullsListResponseItemRequestedTeamsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ slug: string;
+ description: string;
+ privacy: string;
+ permission: string;
+ members_url: string;
+ repositories_url: string;
+ parent: null;
+ };
+ type PullsListResponseItemRequestedReviewersItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsListResponseItemAssigneesItem = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsListResponseItemAssignee = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsListResponseItemMilestoneCreator = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsListResponseItemMilestone = {
+ url: string;
+ html_url: string;
+ labels_url: string;
+ id: number;
+ node_id: string;
+ number: number;
+ state: string;
+ title: string;
+ description: string;
+ creator: PullsListResponseItemMilestoneCreator;
+ open_issues: number;
+ closed_issues: number;
+ created_at: string;
+ updated_at: string;
+ closed_at: string;
+ due_on: string;
+ };
+ type PullsListResponseItemLabelsItem = {
+ id: number;
+ node_id: string;
+ url: string;
+ name: string;
+ description: string;
+ color: string;
+ default: boolean;
+ };
+ type PullsListResponseItemUser = {
+ login: string;
+ id: number;
+ node_id: string;
+ avatar_url: string;
+ gravatar_id: string;
+ url: string;
+ html_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_url: string;
+ starred_url: string;
+ subscriptions_url: string;
+ organizations_url: string;
+ repos_url: string;
+ events_url: string;
+ received_events_url: string;
+ type: string;
+ site_admin: boolean;
+ };
+ type PullsListResponseItem = {
+ url: string;
+ id: number;
+ node_id: string;
+ html_url: string;
+ diff_url: string;
+ patch_url: string;
+ issue_url: string;
+ commits_url: string;
+ review_comments_url: string;
+ review_comment_url: string;
+ comments_url: string;
+ statuses_url: string;
+ number: number;
+ state: string;
+ locked: boolean;
+ title: string;
+ user: PullsListResponseItemUser;
+ body: string;
+ labels: Array